| POST | /warranty/v1/site/{siteId}/card |
|---|
import 'package:servicestack/servicestack.dart';
class BaseRequest<TResponse> implements IRequest, IConvertible
{
String? sid;
String? app;
String? _os;
String? _appVersion;
String? _searchMethod;
BaseRequest({this.sid,this.app,this._os,this._appVersion,this._searchMethod});
BaseRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
sid = json['sid'];
app = json['app'];
_os = json['_os'];
_appVersion = json['_appVersion'];
_searchMethod = json['_searchMethod'];
return this;
}
Map<String, dynamic> toJson() => {
'sid': sid,
'app': app,
'_os': _os,
'_appVersion': _appVersion,
'_searchMethod': _searchMethod
};
getTypeName() => "BaseRequest<$TResponse>";
TypeContext? context = _ctx;
}
class BaseResponse implements IRespose, IConvertible
{
String? _xmlns;
String? _type;
String? _source;
String? _tstamp;
String? _user;
String? _env;
String? _uri;
String? _query;
BaseResponse({this._xmlns,this._type,this._source,this._tstamp,this._user,this._env,this._uri,this._query});
BaseResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
_xmlns = json['_xmlns'];
_type = json['_type'];
_source = json['_source'];
_tstamp = json['_tstamp'];
_user = json['_user'];
_env = json['_env'];
_uri = json['_uri'];
_query = json['_query'];
return this;
}
Map<String, dynamic> toJson() => {
'_xmlns': _xmlns,
'_type': _type,
'_source': _source,
'_tstamp': _tstamp,
'_user': _user,
'_env': _env,
'_uri': _uri,
'_query': _query
};
getTypeName() => "BaseResponse";
TypeContext? context = _ctx;
}
class CreateWarrantyCardResponse extends BaseResponse implements IConvertible
{
CreateWarrantyCardResponse();
CreateWarrantyCardResponse.fromJson(Map<String, dynamic> json) : super.fromJson(json);
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
return this;
}
Map<String, dynamic> toJson() => super.toJson();
getTypeName() => "CreateWarrantyCardResponse";
TypeContext? context = _ctx;
}
class CreateWarrantyCardRequest extends BaseRequest<CreateWarrantyCardResponse> implements IConvertible
{
int? siteId;
bool? force;
String? ref;
String? serial;
String? invoiceNumber;
DateTime? activationDate;
String? note;
String? promoterTypeId;
String? issuedBy;
String? nfcCardUID;
String? appVersion;
String? searchMethod;
String? deviceOS;
CreateWarrantyCardRequest({this.siteId,this.force,this.ref,this.serial,this.invoiceNumber,this.activationDate,this.note,this.promoterTypeId,this.issuedBy,this.nfcCardUID,this.appVersion,this.searchMethod,this.deviceOS});
CreateWarrantyCardRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
siteId = json['siteId'];
force = json['force'];
ref = json['ref'];
serial = json['serial'];
invoiceNumber = json['invoiceNumber'];
activationDate = JsonConverters.fromJson(json['activationDate'],'DateTime',context!);
note = json['note'];
promoterTypeId = json['promoterTypeId'];
issuedBy = json['issuedBy'];
nfcCardUID = json['nfcCardUID'];
appVersion = json['appVersion'];
searchMethod = json['searchMethod'];
deviceOS = json['deviceOS'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'siteId': siteId,
'force': force,
'ref': ref,
'serial': serial,
'invoiceNumber': invoiceNumber,
'activationDate': JsonConverters.toJson(activationDate,'DateTime',context!),
'note': note,
'promoterTypeId': promoterTypeId,
'issuedBy': issuedBy,
'nfcCardUID': nfcCardUID,
'appVersion': appVersion,
'searchMethod': searchMethod,
'deviceOS': deviceOS
});
getTypeName() => "CreateWarrantyCardRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'qp_microservices_booster.richemont.com', types: <String, TypeInfo> {
'BaseRequest<TResponse>': TypeInfo(TypeOf.Class, create:() => BaseRequest<TResponse>()),
'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()),
'CreateWarrantyCardResponse': TypeInfo(TypeOf.Class, create:() => CreateWarrantyCardResponse()),
'CreateWarrantyCardRequest': TypeInfo(TypeOf.Class, create:() => CreateWarrantyCardRequest()),
});
Dart CreateWarrantyCardRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /warranty/v1/site/{siteId}/card HTTP/1.1
Host: qp-microservices-booster.richemont.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<CreateWarrantyCardRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Sale">
<_appVersion xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_appVersion>
<_os xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_os>
<_searchMethod xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_searchMethod>
<app xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</app>
<sid xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</sid>
<activationDate>0001-01-01T00:00:00</activationDate>
<appVersion>String</appVersion>
<deviceOS>String</deviceOS>
<force>false</force>
<invoiceNumber>String</invoiceNumber>
<issuedBy>String</issuedBy>
<nfcCardUID>String</nfcCardUID>
<note>String</note>
<promoterTypeId>String</promoterTypeId>
<ref>String</ref>
<searchMethod>String</searchMethod>
<serial>String</serial>
<siteId>0</siteId>
</CreateWarrantyCardRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <CreateWarrantyCardResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Sale"> <_env xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_env> <_query xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_query> <_source xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_source> <_tstamp xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_tstamp> <_type xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_type> <_uri xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_uri> <_user xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_user> <_xmlns xmlns="http://schemas.datacontract.org/2004/07/Booster.Microservices.ServiceModel.Common">String</_xmlns> </CreateWarrantyCardResponse>