/* Options: Date: 2026-05-19 10:45:21 Version: 8.22 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-api-booster.richemont.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ExportMovement.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class MovementsRequest implements IConvertible { /** * Brand */ // @ApiMember(Description="Brand", IsRequired=true) String? brand; /** * POS Legacy */ // @ApiMember(Description="POS Legacy", IsRequired=true) List? posCodes; /** * Movement Type Ids */ // @ApiMember(Description="Movement Type Ids") List? movementTypeIds; /** * Search Key (Article or SerialNumber) */ // @ApiMember(Description="Search Key (Article or SerialNumber)") String? searchKey; /** * In Stock Since date from */ // @ApiMember(Description="In Stock Since date from ") DateTime? dateFrom; /** * In Stock Since date to */ // @ApiMember(Description="In Stock Since date to") DateTime? dateTo; /** * Sort by date could be: 'DateDESC' or 'DateASC' (default is descending) */ // @ApiMember(Description="Sort by date could be: 'DateDESC' or 'DateASC' (default is descending) ") String? sortBy; MovementsRequest({this.brand,this.posCodes,this.movementTypeIds,this.searchKey,this.dateFrom,this.dateTo,this.sortBy}); MovementsRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { brand = json['brand']; posCodes = JsonConverters.fromJson(json['posCodes'],'List',context!); movementTypeIds = JsonConverters.fromJson(json['movementTypeIds'],'List',context!); searchKey = json['searchKey']; dateFrom = JsonConverters.fromJson(json['dateFrom'],'DateTime',context!); dateTo = JsonConverters.fromJson(json['dateTo'],'DateTime',context!); sortBy = json['sortBy']; return this; } Map toJson() => { 'brand': brand, 'posCodes': JsonConverters.toJson(posCodes,'List',context!), 'movementTypeIds': JsonConverters.toJson(movementTypeIds,'List',context!), 'searchKey': searchKey, 'dateFrom': JsonConverters.toJson(dateFrom,'DateTime',context!), 'dateTo': JsonConverters.toJson(dateTo,'DateTime',context!), 'sortBy': sortBy }; getTypeName() => "MovementsRequest"; TypeContext? context = _ctx; } class ExportMovementResponse implements IConvertible { /** * Unique Identifier of the Export Request created */ // @ApiMember(Description="Unique Identifier of the Export Request created", IsRequired=true) String? asyncTaskId; ExportMovementResponse({this.asyncTaskId}); ExportMovementResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { asyncTaskId = json['asyncTaskId']; return this; } Map toJson() => { 'asyncTaskId': asyncTaskId }; getTypeName() => "ExportMovementResponse"; TypeContext? context = _ctx; } // @Route("/stock/{brand}/movement/export", "POST") class ExportMovement extends MovementsRequest implements IReturn, IConvertible, IPost { /** * Export Request ID of the API Consumers */ // @ApiMember(Description="Export Request ID of the API Consumers", IsRequired=true) String? downloadRequestId; ExportMovement({this.downloadRequestId}); ExportMovement.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); downloadRequestId = json['downloadRequestId']; return this; } Map toJson() => super.toJson()..addAll({ 'downloadRequestId': downloadRequestId }); createResponse() => ExportMovementResponse(); getResponseTypeName() => "ExportMovementResponse"; getTypeName() => "ExportMovement"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'dev_api_booster.richemont.com', types: { 'MovementsRequest': TypeInfo(TypeOf.Class, create:() => MovementsRequest()), 'ExportMovementResponse': TypeInfo(TypeOf.Class, create:() => ExportMovementResponse()), 'ExportMovement': TypeInfo(TypeOf.Class, create:() => ExportMovement()), });