import 'package:servicestack/servicestack.dart';
class RegisterDocumentResponse implements IConvertible
{
bool? IsSucces;
String? DocumentId;
List<String>? ErrorMessages;
String? Ooxml;
/**
* Is it a corporate identity document?
*/
// @ApiMember(Description="Is it a corporate identity document?", IsRequired=true)
bool? IsCorporateIdentity;
Map<String,String?>? DocumentVariables;
RegisterDocumentResponse({this.IsSucces,this.DocumentId,this.ErrorMessages,this.Ooxml,this.IsCorporateIdentity,this.DocumentVariables});
RegisterDocumentResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
IsSucces = json['IsSucces'];
DocumentId = json['DocumentId'];
ErrorMessages = JsonConverters.fromJson(json['ErrorMessages'],'List<String>',context!);
Ooxml = json['Ooxml'];
IsCorporateIdentity = json['IsCorporateIdentity'];
DocumentVariables = JsonConverters.fromJson(json['DocumentVariables'],'Map<String,String?>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'IsSucces': IsSucces,
'DocumentId': DocumentId,
'ErrorMessages': JsonConverters.toJson(ErrorMessages,'List<String>',context!),
'Ooxml': Ooxml,
'IsCorporateIdentity': IsCorporateIdentity,
'DocumentVariables': JsonConverters.toJson(DocumentVariables,'Map<String,String?>',context!)
};
getTypeName() => "RegisterDocumentResponse";
TypeContext? context = _ctx;
}
class RegistrationValue implements IConvertible
{
String? Key;
String? Value;
String? ShadowValue;
RegistrationValue({this.Key,this.Value,this.ShadowValue});
RegistrationValue.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Key = json['Key'];
Value = json['Value'];
ShadowValue = json['ShadowValue'];
return this;
}
Map<String, dynamic> toJson() => {
'Key': Key,
'Value': Value,
'ShadowValue': ShadowValue
};
getTypeName() => "RegistrationValue";
TypeContext? context = _ctx;
}
class Transition implements IConvertible
{
String? ID;
String? Reason;
DateTime? DelayDate;
String? DelayReason;
List<int>? UserIDs;
List<int>? GroupIDs;
Transition({this.ID,this.Reason,this.DelayDate,this.DelayReason,this.UserIDs,this.GroupIDs});
Transition.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
Reason = json['Reason'];
DelayDate = JsonConverters.fromJson(json['DelayDate'],'DateTime',context!);
DelayReason = json['DelayReason'];
UserIDs = JsonConverters.fromJson(json['UserIDs'],'List<int>',context!);
GroupIDs = JsonConverters.fromJson(json['GroupIDs'],'List<int>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'Reason': Reason,
'DelayDate': JsonConverters.toJson(DelayDate,'DateTime',context!),
'DelayReason': DelayReason,
'UserIDs': JsonConverters.toJson(UserIDs,'List<int>',context!),
'GroupIDs': JsonConverters.toJson(GroupIDs,'List<int>',context!)
};
getTypeName() => "Transition";
TypeContext? context = _ctx;
}
class Process implements IConvertible
{
int? ID;
String? Title;
String? Description;
String? Note;
String? Coordinator;
bool? Urgent;
List<Transition>? Transitions;
Process({this.ID,this.Title,this.Description,this.Note,this.Coordinator,this.Urgent,this.Transitions});
Process.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
Title = json['Title'];
Description = json['Description'];
Note = json['Note'];
Coordinator = json['Coordinator'];
Urgent = json['Urgent'];
Transitions = JsonConverters.fromJson(json['Transitions'],'List<Transition>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'Title': Title,
'Description': Description,
'Note': Note,
'Coordinator': Coordinator,
'Urgent': Urgent,
'Transitions': JsonConverters.toJson(Transitions,'List<Transition>',context!)
};
getTypeName() => "Process";
TypeContext? context = _ctx;
}
class RegisterDocument implements IConvertible
{
String? RegistrationProfileID;
List<RegistrationValue>? Values;
List<Process>? Processes;
String? DocumentUploadId;
String? DocumentId;
String? StandardDocumentID;
bool? HasUnsavedChangesInDocument;
bool? IsOpenedFromNonDMSLocation;
RegisterDocument({this.RegistrationProfileID,this.Values,this.Processes,this.DocumentUploadId,this.DocumentId,this.StandardDocumentID,this.HasUnsavedChangesInDocument,this.IsOpenedFromNonDMSLocation});
RegisterDocument.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
RegistrationProfileID = json['RegistrationProfileID'];
Values = JsonConverters.fromJson(json['Values'],'List<RegistrationValue>',context!);
Processes = JsonConverters.fromJson(json['Processes'],'List<Process>',context!);
DocumentUploadId = json['DocumentUploadId'];
DocumentId = json['DocumentId'];
StandardDocumentID = json['StandardDocumentID'];
HasUnsavedChangesInDocument = json['HasUnsavedChangesInDocument'];
IsOpenedFromNonDMSLocation = json['IsOpenedFromNonDMSLocation'];
return this;
}
Map<String, dynamic> toJson() => {
'RegistrationProfileID': RegistrationProfileID,
'Values': JsonConverters.toJson(Values,'List<RegistrationValue>',context!),
'Processes': JsonConverters.toJson(Processes,'List<Process>',context!),
'DocumentUploadId': DocumentUploadId,
'DocumentId': DocumentId,
'StandardDocumentID': StandardDocumentID,
'HasUnsavedChangesInDocument': HasUnsavedChangesInDocument,
'IsOpenedFromNonDMSLocation': IsOpenedFromNonDMSLocation
};
getTypeName() => "RegisterDocument";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'digiofficeapigateway.deltares.nl', types: <String, TypeInfo> {
'RegisterDocumentResponse': TypeInfo(TypeOf.Class, create:() => RegisterDocumentResponse()),
'Map<String,String?>': TypeInfo(TypeOf.Class, create:() => Map<String,String?>()),
'RegistrationValue': TypeInfo(TypeOf.Class, create:() => RegistrationValue()),
'Transition': TypeInfo(TypeOf.Class, create:() => Transition()),
'Process': TypeInfo(TypeOf.Class, create:() => Process()),
'List<Transition>': TypeInfo(TypeOf.Class, create:() => <Transition>[]),
'RegisterDocument': TypeInfo(TypeOf.Class, create:() => RegisterDocument()),
'List<RegistrationValue>': TypeInfo(TypeOf.Class, create:() => <RegistrationValue>[]),
'List<Process>': TypeInfo(TypeOf.Class, create:() => <Process>[]),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /json/reply/RegisterDocument HTTP/1.1
Host: digiofficeapigateway.deltares.nl
Accept: application/json
Content-Type: application/json
Content-Length: length
{"RegistrationProfileID":"00000000-0000-0000-0000-000000000000","Values":[{"Key":"00000000-0000-0000-0000-000000000000","Value":"String","ShadowValue":"String"}],"Processes":[{"ID":0,"Title":"String","Description":"String","Note":"String","Coordinator":"String","Urgent":false,"Transitions":[{"ID":"00000000-0000-0000-0000-000000000000","Reason":"String","DelayDate":"0001-01-01T00:00:00.0000000","DelayReason":"String","UserIDs":[0],"GroupIDs":[0]}]}],"DocumentUploadId":"String","DocumentId":"00000000-0000-0000-0000-000000000000","StandardDocumentID":"00000000-0000-0000-0000-000000000000","HasUnsavedChangesInDocument":false,"IsOpenedFromNonDMSLocation":false}
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"IsSucces":false,"DocumentId":"00000000-0000-0000-0000-000000000000","ErrorMessages":["String"],"Ooxml":"String","IsCorporateIdentity":false,"DocumentVariables":null}