POST | /servicecontracts/ |
---|
import 'package:servicestack/servicestack.dart';
class ReturnStatus implements IConvertible
{
String? ReturnCode;
String? Message;
ReturnStatus({this.ReturnCode,this.Message});
ReturnStatus.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ReturnCode = json['ReturnCode'];
Message = json['Message'];
return this;
}
Map<String, dynamic> toJson() => {
'ReturnCode': ReturnCode,
'Message': Message
};
getTypeName() => "ReturnStatus";
TypeContext? context = _ctx;
}
class Contract implements IConvertible
{
String? ContractNumber;
DateTime? StartDate;
DateTime? EndDate;
DateTime? TerminationDate;
int? ServicesSold;
int? ServicesTaken;
String? Status;
Contract({this.ContractNumber,this.StartDate,this.EndDate,this.TerminationDate,this.ServicesSold,this.ServicesTaken,this.Status});
Contract.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ContractNumber = json['ContractNumber'];
StartDate = JsonConverters.fromJson(json['StartDate'],'DateTime',context!);
EndDate = JsonConverters.fromJson(json['EndDate'],'DateTime',context!);
TerminationDate = JsonConverters.fromJson(json['TerminationDate'],'DateTime',context!);
ServicesSold = json['ServicesSold'];
ServicesTaken = json['ServicesTaken'];
Status = json['Status'];
return this;
}
Map<String, dynamic> toJson() => {
'ContractNumber': ContractNumber,
'StartDate': JsonConverters.toJson(StartDate,'DateTime',context!),
'EndDate': JsonConverters.toJson(EndDate,'DateTime',context!),
'TerminationDate': JsonConverters.toJson(TerminationDate,'DateTime',context!),
'ServicesSold': ServicesSold,
'ServicesTaken': ServicesTaken,
'Status': Status
};
getTypeName() => "Contract";
TypeContext? context = _ctx;
}
class ServiceContractsResponse implements IConvertible
{
ReturnStatus? Status;
int? NumberOfPages;
List<Contract>? Contracts;
ServiceContractsResponse({this.Status,this.NumberOfPages,this.Contracts});
ServiceContractsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Status = JsonConverters.fromJson(json['Status'],'ReturnStatus',context!);
NumberOfPages = json['NumberOfPages'];
Contracts = JsonConverters.fromJson(json['Contracts'],'List<Contract>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Status': JsonConverters.toJson(Status,'ReturnStatus',context!),
'NumberOfPages': NumberOfPages,
'Contracts': JsonConverters.toJson(Contracts,'List<Contract>',context!)
};
getTypeName() => "ServiceContractsResponse";
TypeContext? context = _ctx;
}
class ServiceContracts implements IConvertible
{
String? CIAMId;
String? ChassisNumber;
int? ItemsPerPage;
int? PageNumber;
ServiceContracts({this.CIAMId,this.ChassisNumber,this.ItemsPerPage,this.PageNumber});
ServiceContracts.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
CIAMId = json['CIAMId'];
ChassisNumber = json['ChassisNumber'];
ItemsPerPage = json['ItemsPerPage'];
PageNumber = json['PageNumber'];
return this;
}
Map<String, dynamic> toJson() => {
'CIAMId': CIAMId,
'ChassisNumber': ChassisNumber,
'ItemsPerPage': ItemsPerPage,
'PageNumber': PageNumber
};
getTypeName() => "ServiceContracts";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'webservices.mbukdatabase.co.uk', types: <String, TypeInfo> {
'ReturnStatus': TypeInfo(TypeOf.Class, create:() => ReturnStatus()),
'Contract': TypeInfo(TypeOf.Class, create:() => Contract()),
'ServiceContractsResponse': TypeInfo(TypeOf.Class, create:() => ServiceContractsResponse()),
'List<Contract>': TypeInfo(TypeOf.Class, create:() => <Contract>[]),
'ServiceContracts': TypeInfo(TypeOf.Class, create:() => ServiceContracts()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /servicecontracts/ HTTP/1.1
Host: webservices.mbukdatabase.co.uk
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"CIAMId":"String","ChassisNumber":"String","ItemsPerPage":0,"PageNumber":0}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"Status":{"ReturnCode":"String","Message":"String"},"NumberOfPages":0,"Contracts":[{"ContractNumber":"String","StartDate":"\/Date(-62135596800000-0000)\/","EndDate":"\/Date(-62135596800000-0000)\/","TerminationDate":"\/Date(-62135596800000-0000)\/","ServicesSold":0,"ServicesTaken":0,"Status":"String"}]}