/* Options: Date: 2025-05-10 06:54:46 Version: 8.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://active-ewebservice.biz/aeservices30/api //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ShortTermRentalReservationRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; // @DataContract class BaseRequest implements IConvertible { /** * This is your AIM API Key provided by Tri-Tech */ // @DataMember // @ApiMember(DataType="string", Description="This is your AIM API Key provided by Tri-Tech", IsRequired=true, Name="ApiKey", ParameterType="header") String? ApiKey; // @DataMember // @ApiMember(DataType="string", Name="OAuthToken", ParameterType="header") String? OAuthToken; BaseRequest({this.ApiKey,this.OAuthToken}); BaseRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ApiKey = json['ApiKey']; OAuthToken = json['OAuthToken']; return this; } Map toJson() => { 'ApiKey': ApiKey, 'OAuthToken': OAuthToken }; getTypeName() => "BaseRequest"; TypeContext? context = _ctx; } // @DataContract class BaseSecureRequest extends BaseRequest implements IConvertible { /** * */ // @DataMember // @ApiMember(DataType="string", Description="", Name="Token", ParameterType="Header") String? Token; /** * */ // @DataMember // @ApiMember(DataType="string", Description="", Name="DeviceId", ParameterType="Header") String? DeviceId; /** * */ // @DataMember // @ApiMember(DataType="string", Description="", IsRequired=true, Name="AppId", ParameterType="Header") String? AppId; BaseSecureRequest({this.Token,this.DeviceId,this.AppId}); BaseSecureRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); Token = json['Token']; DeviceId = json['DeviceId']; AppId = json['AppId']; return this; } Map toJson() => super.toJson()..addAll({ 'Token': Token, 'DeviceId': DeviceId, 'AppId': AppId }); getTypeName() => "BaseSecureRequest"; TypeContext? context = _ctx; } // @DataContract class PackageVariantItem implements IConvertible { // @DataMember String? Model; // @DataMember String? Sku; PackageVariantItem({this.Model,this.Sku}); PackageVariantItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Model = json['Model']; Sku = json['Sku']; return this; } Map toJson() => { 'Model': Model, 'Sku': Sku }; getTypeName() => "PackageVariantItem"; TypeContext? context = _ctx; } // @DataContract class ShortTermRentalItem implements IConvertible { /** * SasPk, SaqPk, or PkhPk */ // @DataMember // @ApiMember(Description="SasPk, SaqPk, or PkhPk", IsRequired=true, Name="Pk", ParameterType="query") int? Pk; /** * S for SerialNumber, P for Package deal. Empty for normal inventory. */ // @DataMember // @ApiMember(Description="S for SerialNumber, P for Package deal. Empty for normal inventory.", Name="ItemType", ParameterType="query") String? ItemType; /** * Quantity of item required. Does not apply to serial#s. */ // @DataMember // @ApiMember(Description="Quantity of item required. Does not apply to serial#s.", Name="ItemQuantity", ParameterType="query") double? ItemQuantity; /** * Item rate. This is per item, so the total is this multiplied by ItemQuantity. */ // @DataMember // @ApiMember(Description="Item rate. This is per item, so the total is this multiplied by ItemQuantity.", IsRequired=true, Name="ItemRate", ParameterType="query") double? ItemRate; // @DataMember String? Notes; // @DataMember List? PackageVariantItems; ShortTermRentalItem({this.Pk,this.ItemType,this.ItemQuantity,this.ItemRate,this.Notes,this.PackageVariantItems}); ShortTermRentalItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Pk = json['Pk']; ItemType = json['ItemType']; ItemQuantity = JsonConverters.toDouble(json['ItemQuantity']); ItemRate = JsonConverters.toDouble(json['ItemRate']); Notes = json['Notes']; PackageVariantItems = JsonConverters.fromJson(json['PackageVariantItems'],'List',context!); return this; } Map toJson() => { 'Pk': Pk, 'ItemType': ItemType, 'ItemQuantity': ItemQuantity, 'ItemRate': ItemRate, 'Notes': Notes, 'PackageVariantItems': JsonConverters.toJson(PackageVariantItems,'List',context!) }; getTypeName() => "ShortTermRentalItem"; TypeContext? context = _ctx; } // @DataContract class BaseResponse implements IConvertible { /** * */ // @DataMember // @ApiMember(DataType="BaseResponseResult", Description="", Name="Status", ParameterType="body") BaseResponseResult? Status; BaseResponse({this.Status}); BaseResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Status = JsonConverters.fromJson(json['Status'],'BaseResponseResult',context!); return this; } Map toJson() => { 'Status': JsonConverters.toJson(Status,'BaseResponseResult',context!) }; getTypeName() => "BaseResponse"; TypeContext? context = _ctx; } // @DataContract class ShortTermRentalReservationResponse extends BaseResponse implements IConvertible { // @DataMember String? RefNumber; ShortTermRentalReservationResponse({this.RefNumber}); ShortTermRentalReservationResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); RefNumber = json['RefNumber']; return this; } Map toJson() => super.toJson()..addAll({ 'RefNumber': RefNumber }); getTypeName() => "ShortTermRentalReservationResponse"; TypeContext? context = _ctx; } /** * ShortTermRentalReservationRequires active-e Short Term Rental Service */ // @Route("/ShortTermRentalReservation", "POST") // @DataContract class ShortTermRentalReservationRequest extends BaseSecureRequest implements IReturn, IConvertible, IPost { /** * Date/Time the item is to be picked up. */ // @DataMember // @ApiMember(Description="Date/Time the item is to be picked up.", IsRequired=true, Name="PickupDate", ParameterType="query") DateTime? PickupDate; /** * Date/Time the item is to be returned. */ // @DataMember // @ApiMember(Description="Date/Time the item is to be returned.", IsRequired=true, Name="ReturnDate", ParameterType="query") DateTime? ReturnDate; /** * Account of the customer making the reservation */ // @DataMember // @ApiMember(Description="Account of the customer making the reservation", IsRequired=true, Name="CustomerAcct", ParameterType="query") int? CustomerAcct; // @DataMember List? Items; // @DataMember String? Notes; ShortTermRentalReservationRequest({this.PickupDate,this.ReturnDate,this.CustomerAcct,this.Items,this.Notes}); ShortTermRentalReservationRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); PickupDate = JsonConverters.fromJson(json['PickupDate'],'DateTime',context!); ReturnDate = JsonConverters.fromJson(json['ReturnDate'],'DateTime',context!); CustomerAcct = json['CustomerAcct']; Items = JsonConverters.fromJson(json['Items'],'List',context!); Notes = json['Notes']; return this; } Map toJson() => super.toJson()..addAll({ 'PickupDate': JsonConverters.toJson(PickupDate,'DateTime',context!), 'ReturnDate': JsonConverters.toJson(ReturnDate,'DateTime',context!), 'CustomerAcct': CustomerAcct, 'Items': JsonConverters.toJson(Items,'List',context!), 'Notes': Notes }); createResponse() => ShortTermRentalReservationResponse(); getResponseTypeName() => "ShortTermRentalReservationResponse"; getTypeName() => "ShortTermRentalReservationRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'active_ewebservice.biz', types: { 'BaseRequest': TypeInfo(TypeOf.Class, create:() => BaseRequest()), 'BaseSecureRequest': TypeInfo(TypeOf.Class, create:() => BaseSecureRequest()), 'PackageVariantItem': TypeInfo(TypeOf.Class, create:() => PackageVariantItem()), 'ShortTermRentalItem': TypeInfo(TypeOf.Class, create:() => ShortTermRentalItem()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()), 'BaseResponseResult': TypeInfo(TypeOf.Class, create:() => BaseResponseResult()), 'ShortTermRentalReservationResponse': TypeInfo(TypeOf.Class, create:() => ShortTermRentalReservationResponse()), 'ShortTermRentalReservationRequest': TypeInfo(TypeOf.Class, create:() => ShortTermRentalReservationRequest()), 'List': TypeInfo(TypeOf.Class, create:() => []), });