import 'package:servicestack/servicestack.dart';
class Registrationprofile implements IConvertible
{
String? ID;
String? Name;
String? Hint;
int? Order;
bool? RegisterAutomatically;
bool? RegisterInBackground;
String? ThumbnailUrl;
String? ProgCode;
int? VersionControlType;
int? WOPlaceLogo;
String? WOPrinterBins;
bool? SelectAllFiles;
Registrationprofile({this.ID,this.Name,this.Hint,this.Order,this.RegisterAutomatically,this.RegisterInBackground,this.ThumbnailUrl,this.ProgCode,this.VersionControlType,this.WOPlaceLogo,this.WOPrinterBins,this.SelectAllFiles});
Registrationprofile.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
Name = json['Name'];
Hint = json['Hint'];
Order = json['Order'];
RegisterAutomatically = json['RegisterAutomatically'];
RegisterInBackground = json['RegisterInBackground'];
ThumbnailUrl = json['ThumbnailUrl'];
ProgCode = json['ProgCode'];
VersionControlType = json['VersionControlType'];
WOPlaceLogo = json['WOPlaceLogo'];
WOPrinterBins = json['WOPrinterBins'];
SelectAllFiles = json['SelectAllFiles'];
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'Name': Name,
'Hint': Hint,
'Order': Order,
'RegisterAutomatically': RegisterAutomatically,
'RegisterInBackground': RegisterInBackground,
'ThumbnailUrl': ThumbnailUrl,
'ProgCode': ProgCode,
'VersionControlType': VersionControlType,
'WOPlaceLogo': WOPlaceLogo,
'WOPrinterBins': WOPrinterBins,
'SelectAllFiles': SelectAllFiles
};
getTypeName() => "Registrationprofile";
TypeContext? context = _ctx;
}
enum RegistrationprofileStepLayout
{
OneColumn_12,
TwoColumn_6_6,
TwoColumn_7_5,
ThreeColumn_4_4_4,
}
class RegistrationProfileFieldStateBase implements IConvertible
{
String? DocumentFieldID;
bool? Required;
bool? Visible;
bool? Readonly;
RegistrationProfileFieldStateBase({this.DocumentFieldID,this.Required,this.Visible,this.Readonly});
RegistrationProfileFieldStateBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
DocumentFieldID = json['DocumentFieldID'];
Required = json['Required'];
Visible = json['Visible'];
Readonly = json['Readonly'];
return this;
}
Map<String, dynamic> toJson() => {
'DocumentFieldID': DocumentFieldID,
'Required': Required,
'Visible': Visible,
'Readonly': Readonly
};
getTypeName() => "RegistrationProfileFieldStateBase";
TypeContext? context = _ctx;
}
class RegistrationprofileField implements IConvertible
{
String? ID;
String? DocumentFieldID;
String? Label;
String? UserControlType;
List<SerializableKeyValuePair<String,dynamic>>? UserControlProperties;
String? Hint;
int? Order;
bool? HasDependableFields;
String? EntityName;
RegistrationProfileFieldStateBase? State;
RegistrationprofileField({this.ID,this.DocumentFieldID,this.Label,this.UserControlType,this.UserControlProperties,this.Hint,this.Order,this.HasDependableFields,this.EntityName,this.State});
RegistrationprofileField.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
DocumentFieldID = json['DocumentFieldID'];
Label = json['Label'];
UserControlType = json['UserControlType'];
UserControlProperties = JsonConverters.fromJson(json['UserControlProperties'],'List<SerializableKeyValuePair<String,dynamic>>',context!);
Hint = json['Hint'];
Order = json['Order'];
HasDependableFields = json['HasDependableFields'];
EntityName = json['EntityName'];
State = JsonConverters.fromJson(json['State'],'RegistrationProfileFieldStateBase',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'DocumentFieldID': DocumentFieldID,
'Label': Label,
'UserControlType': UserControlType,
'UserControlProperties': JsonConverters.toJson(UserControlProperties,'List<SerializableKeyValuePair<String,dynamic>>',context!),
'Hint': Hint,
'Order': Order,
'HasDependableFields': HasDependableFields,
'EntityName': EntityName,
'State': JsonConverters.toJson(State,'RegistrationProfileFieldStateBase',context!)
};
getTypeName() => "RegistrationprofileField";
TypeContext? context = _ctx;
}
class RegistrationprofileGroup implements IConvertible
{
String? ID;
String? Name;
String? Label;
int? Order;
int? ColumnIndex;
List<RegistrationprofileField>? Fields;
int? LabelLayoutType;
RegistrationprofileGroup({this.ID,this.Name,this.Label,this.Order,this.ColumnIndex,this.Fields,this.LabelLayoutType});
RegistrationprofileGroup.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
Name = json['Name'];
Label = json['Label'];
Order = json['Order'];
ColumnIndex = json['ColumnIndex'];
Fields = JsonConverters.fromJson(json['Fields'],'List<RegistrationprofileField>',context!);
LabelLayoutType = json['LabelLayoutType'];
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'Name': Name,
'Label': Label,
'Order': Order,
'ColumnIndex': ColumnIndex,
'Fields': JsonConverters.toJson(Fields,'List<RegistrationprofileField>',context!),
'LabelLayoutType': LabelLayoutType
};
getTypeName() => "RegistrationprofileGroup";
TypeContext? context = _ctx;
}
class RegistrationprofileStep implements IConvertible
{
String? ID;
String? Name;
int? Order;
RegistrationprofileStepLayout? Layout;
List<RegistrationprofileGroup>? Groups;
RegistrationprofileStep({this.ID,this.Name,this.Order,this.Layout,this.Groups});
RegistrationprofileStep.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
Name = json['Name'];
Order = json['Order'];
Layout = JsonConverters.fromJson(json['Layout'],'RegistrationprofileStepLayout',context!);
Groups = JsonConverters.fromJson(json['Groups'],'List<RegistrationprofileGroup>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'Name': Name,
'Order': Order,
'Layout': JsonConverters.toJson(Layout,'RegistrationprofileStepLayout',context!),
'Groups': JsonConverters.toJson(Groups,'List<RegistrationprofileGroup>',context!)
};
getTypeName() => "RegistrationprofileStep";
TypeContext? context = _ctx;
}
enum MessageType
{
Information,
Warning,
Error,
Success,
}
abstract class InformationMessageBase implements IInformationMessage
{
MessageType? Type;
String? Summary;
String? FullMessage;
String? FieldName;
bool? KeepOpen;
InformationMessageBase({this.Type,this.Summary,this.FullMessage,this.FieldName,this.KeepOpen});
InformationMessageBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Type = JsonConverters.fromJson(json['Type'],'MessageType',context!);
Summary = json['Summary'];
FullMessage = json['FullMessage'];
FieldName = json['FieldName'];
KeepOpen = json['KeepOpen'];
return this;
}
Map<String, dynamic> toJson() => {
'Type': JsonConverters.toJson(Type,'MessageType',context!),
'Summary': Summary,
'FullMessage': FullMessage,
'FieldName': FieldName,
'KeepOpen': KeepOpen
};
getTypeName() => "InformationMessageBase";
TypeContext? context = _ctx;
}
class RegistrationprofileDetails extends Registrationprofile implements IConvertible
{
List<RegistrationprofileStep>? Steps;
List<InformationMessageBase>? Messages;
bool? ReadOnly;
RegistrationprofileDetails({this.Steps,this.Messages,this.ReadOnly});
RegistrationprofileDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Steps = JsonConverters.fromJson(json['Steps'],'List<RegistrationprofileStep>',context!);
Messages = JsonConverters.fromJson(json['Messages'],'List<InformationMessageBase>',context!);
ReadOnly = json['ReadOnly'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Steps': JsonConverters.toJson(Steps,'List<RegistrationprofileStep>',context!),
'Messages': JsonConverters.toJson(Messages,'List<InformationMessageBase>',context!),
'ReadOnly': ReadOnly
});
getTypeName() => "RegistrationprofileDetails";
TypeContext? context = _ctx;
}
class GetRegistrationProfileDetailsFromEmailDraft implements IConvertible
{
String? PidTag;
bool? IsOffice365Context;
GetRegistrationProfileDetailsFromEmailDraft({this.PidTag,this.IsOffice365Context});
GetRegistrationProfileDetailsFromEmailDraft.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
PidTag = json['PidTag'];
IsOffice365Context = json['IsOffice365Context'];
return this;
}
Map<String, dynamic> toJson() => {
'PidTag': PidTag,
'IsOffice365Context': IsOffice365Context
};
getTypeName() => "GetRegistrationProfileDetailsFromEmailDraft";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'digiofficeapigateway.deltares.nl', types: <String, TypeInfo> {
'Registrationprofile': TypeInfo(TypeOf.Class, create:() => Registrationprofile()),
'RegistrationprofileStepLayout': TypeInfo(TypeOf.Enum, enumValues:RegistrationprofileStepLayout.values),
'RegistrationProfileFieldStateBase': TypeInfo(TypeOf.Class, create:() => RegistrationProfileFieldStateBase()),
'RegistrationprofileField': TypeInfo(TypeOf.Class, create:() => RegistrationprofileField()),
'List<SerializableKeyValuePair<String,dynamic>>': TypeInfo(TypeOf.Class, create:() => <SerializableKeyValuePair<String,dynamic>>[]),
'SerializableKeyValuePair<String,dynamic>': TypeInfo(TypeOf.Class, create:() => SerializableKeyValuePair<String,dynamic>()),
'RegistrationprofileGroup': TypeInfo(TypeOf.Class, create:() => RegistrationprofileGroup()),
'List<RegistrationprofileField>': TypeInfo(TypeOf.Class, create:() => <RegistrationprofileField>[]),
'RegistrationprofileStep': TypeInfo(TypeOf.Class, create:() => RegistrationprofileStep()),
'List<RegistrationprofileGroup>': TypeInfo(TypeOf.Class, create:() => <RegistrationprofileGroup>[]),
'MessageType': TypeInfo(TypeOf.Enum, enumValues:MessageType.values),
'InformationMessageBase': TypeInfo(TypeOf.AbstractClass),
'RegistrationprofileDetails': TypeInfo(TypeOf.Class, create:() => RegistrationprofileDetails()),
'List<RegistrationprofileStep>': TypeInfo(TypeOf.Class, create:() => <RegistrationprofileStep>[]),
'List<InformationMessageBase>': TypeInfo(TypeOf.Class, create:() => <InformationMessageBase>[]),
'GetRegistrationProfileDetailsFromEmailDraft': TypeInfo(TypeOf.Class, create:() => GetRegistrationProfileDetailsFromEmailDraft()),
});
Dart GetRegistrationProfileDetailsFromEmailDraft DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /jsv/reply/GetRegistrationProfileDetailsFromEmailDraft HTTP/1.1
Host: digiofficeapigateway.deltares.nl
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
PidTag: String,
IsOffice365Context: False
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { Steps: [ { Name: String, Order: 0, Layout: OneColumn_12, Groups: [ { Name: String, Label: String, Order: 0, ColumnIndex: 0, Fields: [ { Label: String, UserControlType: String, UserControlProperties: [ { } ], Hint: String, Order: 0, HasDependableFields: False, EntityName: String, State: { Required: False, Visible: False, Readonly: False } } ], LabelLayoutType: 0 } ] } ], Messages: [ { } ], ReadOnly: False, Name: String, Hint: String, Order: 0, RegisterAutomatically: False, RegisterInBackground: False, ThumbnailUrl: String, ProgCode: String, VersionControlType: 0, WOPlaceLogo: 0, WOPrinterBins: String, SelectAllFiles: False }