/* Options: Date: 2026-10-08 22:18:46 Version: 6.21 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://cert.cendyn.com/CenResServiceR2Test //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: HotelRate.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class RateType implements IConvertible { String? hotelCode; String? rateCode; String? rateCategory; String? rateName; DateTime? startDate; DateTime? endDate; String? rateStatus; String? baseRateCode; String? marketCode; bool? confidential; bool? mealsIncluded; String? taxIncludedIndicator; String? rateCategoryDescription; String? displayText; String? shortDescription; String? longDescription; int? minLOS; String? sourceName; String? sourceID; String? rateAdjustDirection; double? rateAdjustAmount; double? rateAdjustPercent; String? currencyCode; bool? isDaily; bool? isActive; DateTime? inactiveDate; RateType({this.hotelCode,this.rateCode,this.rateCategory,this.rateName,this.startDate,this.endDate,this.rateStatus,this.baseRateCode,this.marketCode,this.confidential,this.mealsIncluded,this.taxIncludedIndicator,this.rateCategoryDescription,this.displayText,this.shortDescription,this.longDescription,this.minLOS,this.sourceName,this.sourceID,this.rateAdjustDirection,this.rateAdjustAmount,this.rateAdjustPercent,this.currencyCode,this.isDaily,this.isActive,this.inactiveDate}); RateType.fromJson(Map json) { fromMap(json); } fromMap(Map json) { hotelCode = json['hotelCode']; rateCode = json['rateCode']; rateCategory = json['rateCategory']; rateName = json['rateName']; startDate = JsonConverters.fromJson(json['startDate'],'DateTime',context!); endDate = JsonConverters.fromJson(json['endDate'],'DateTime',context!); rateStatus = json['rateStatus']; baseRateCode = json['baseRateCode']; marketCode = json['marketCode']; confidential = json['confidential']; mealsIncluded = json['mealsIncluded']; taxIncludedIndicator = json['taxIncludedIndicator']; rateCategoryDescription = json['rateCategoryDescription']; displayText = json['displayText']; shortDescription = json['shortDescription']; longDescription = json['longDescription']; minLOS = json['minLOS']; sourceName = json['sourceName']; sourceID = json['sourceID']; rateAdjustDirection = json['rateAdjustDirection']; rateAdjustAmount = JsonConverters.toDouble(json['rateAdjustAmount']); rateAdjustPercent = JsonConverters.toDouble(json['rateAdjustPercent']); currencyCode = json['currencyCode']; isDaily = json['isDaily']; isActive = json['isActive']; inactiveDate = JsonConverters.fromJson(json['inactiveDate'],'DateTime',context!); return this; } Map toJson() => { 'hotelCode': hotelCode, 'rateCode': rateCode, 'rateCategory': rateCategory, 'rateName': rateName, 'startDate': JsonConverters.toJson(startDate,'DateTime',context!), 'endDate': JsonConverters.toJson(endDate,'DateTime',context!), 'rateStatus': rateStatus, 'baseRateCode': baseRateCode, 'marketCode': marketCode, 'confidential': confidential, 'mealsIncluded': mealsIncluded, 'taxIncludedIndicator': taxIncludedIndicator, 'rateCategoryDescription': rateCategoryDescription, 'displayText': displayText, 'shortDescription': shortDescription, 'longDescription': longDescription, 'minLOS': minLOS, 'sourceName': sourceName, 'sourceID': sourceID, 'rateAdjustDirection': rateAdjustDirection, 'rateAdjustAmount': rateAdjustAmount, 'rateAdjustPercent': rateAdjustPercent, 'currencyCode': currencyCode, 'isDaily': isDaily, 'isActive': isActive, 'inactiveDate': JsonConverters.toJson(inactiveDate,'DateTime',context!) }; getTypeName() => "RateType"; TypeContext? context = _ctx; } class RateChargeDetail implements IConvertible { String? chargeCode; bool? isBaseRate; double? rateBeforeTax; double? rateAfterTax; int? unitCount; double? taxAmount; RateChargeDetail({this.chargeCode,this.isBaseRate,this.rateBeforeTax,this.rateAfterTax,this.unitCount,this.taxAmount}); RateChargeDetail.fromJson(Map json) { fromMap(json); } fromMap(Map json) { chargeCode = json['chargeCode']; isBaseRate = json['isBaseRate']; rateBeforeTax = JsonConverters.toDouble(json['rateBeforeTax']); rateAfterTax = JsonConverters.toDouble(json['rateAfterTax']); unitCount = json['unitCount']; taxAmount = JsonConverters.toDouble(json['taxAmount']); return this; } Map toJson() => { 'chargeCode': chargeCode, 'isBaseRate': isBaseRate, 'rateBeforeTax': rateBeforeTax, 'rateAfterTax': rateAfterTax, 'unitCount': unitCount, 'taxAmount': taxAmount }; getTypeName() => "RateChargeDetail"; TypeContext? context = _ctx; } class RateGuestCountDetail implements IConvertible { int? guestCount; double? minRate; double? maxRate; RateGuestCountDetail({this.guestCount,this.minRate,this.maxRate}); RateGuestCountDetail.fromJson(Map json) { fromMap(json); } fromMap(Map json) { guestCount = json['guestCount']; minRate = JsonConverters.toDouble(json['minRate']); maxRate = JsonConverters.toDouble(json['maxRate']); return this; } Map toJson() => { 'guestCount': guestCount, 'minRate': minRate, 'maxRate': maxRate }; getTypeName() => "RateGuestCountDetail"; TypeContext? context = _ctx; } class Rate implements IConvertible { String? hotelCode; String? rateCode; String? roomCode; DateTime? startDate; DateTime? endDate; double? rate1; double? rate2; double? rate3; double? rate4; double? extraAdult; double? extraChild; double? extraBed; String? currencyCode; int? freeChildLimit; bool? includeMonday; bool? includeTuesday; bool? includeWednesday; bool? includeThursday; bool? includeFriday; bool? includeSaturday; bool? includeSunday; String? customerSegment; String? sourceName; String? sourceID; bool? isActive; DateTime? inactiveDate; String? rateSetID; List? rateChargeDetails; List? rateGuestCountDetails; Rate({this.hotelCode,this.rateCode,this.roomCode,this.startDate,this.endDate,this.rate1,this.rate2,this.rate3,this.rate4,this.extraAdult,this.extraChild,this.extraBed,this.currencyCode,this.freeChildLimit,this.includeMonday,this.includeTuesday,this.includeWednesday,this.includeThursday,this.includeFriday,this.includeSaturday,this.includeSunday,this.customerSegment,this.sourceName,this.sourceID,this.isActive,this.inactiveDate,this.rateSetID,this.rateChargeDetails,this.rateGuestCountDetails}); Rate.fromJson(Map json) { fromMap(json); } fromMap(Map json) { hotelCode = json['hotelCode']; rateCode = json['rateCode']; roomCode = json['roomCode']; startDate = JsonConverters.fromJson(json['startDate'],'DateTime',context!); endDate = JsonConverters.fromJson(json['endDate'],'DateTime',context!); rate1 = JsonConverters.toDouble(json['rate1']); rate2 = JsonConverters.toDouble(json['rate2']); rate3 = JsonConverters.toDouble(json['rate3']); rate4 = JsonConverters.toDouble(json['rate4']); extraAdult = JsonConverters.toDouble(json['extraAdult']); extraChild = JsonConverters.toDouble(json['extraChild']); extraBed = JsonConverters.toDouble(json['extraBed']); currencyCode = json['currencyCode']; freeChildLimit = json['freeChildLimit']; includeMonday = json['includeMonday']; includeTuesday = json['includeTuesday']; includeWednesday = json['includeWednesday']; includeThursday = json['includeThursday']; includeFriday = json['includeFriday']; includeSaturday = json['includeSaturday']; includeSunday = json['includeSunday']; customerSegment = json['customerSegment']; sourceName = json['sourceName']; sourceID = json['sourceID']; isActive = json['isActive']; inactiveDate = JsonConverters.fromJson(json['inactiveDate'],'DateTime',context!); rateSetID = json['rateSetID']; rateChargeDetails = JsonConverters.fromJson(json['rateChargeDetails'],'List',context!); rateGuestCountDetails = JsonConverters.fromJson(json['rateGuestCountDetails'],'List',context!); return this; } Map toJson() => { 'hotelCode': hotelCode, 'rateCode': rateCode, 'roomCode': roomCode, 'startDate': JsonConverters.toJson(startDate,'DateTime',context!), 'endDate': JsonConverters.toJson(endDate,'DateTime',context!), 'rate1': rate1, 'rate2': rate2, 'rate3': rate3, 'rate4': rate4, 'extraAdult': extraAdult, 'extraChild': extraChild, 'extraBed': extraBed, 'currencyCode': currencyCode, 'freeChildLimit': freeChildLimit, 'includeMonday': includeMonday, 'includeTuesday': includeTuesday, 'includeWednesday': includeWednesday, 'includeThursday': includeThursday, 'includeFriday': includeFriday, 'includeSaturday': includeSaturday, 'includeSunday': includeSunday, 'customerSegment': customerSegment, 'sourceName': sourceName, 'sourceID': sourceID, 'isActive': isActive, 'inactiveDate': JsonConverters.toJson(inactiveDate,'DateTime',context!), 'rateSetID': rateSetID, 'rateChargeDetails': JsonConverters.toJson(rateChargeDetails,'List',context!), 'rateGuestCountDetails': JsonConverters.toJson(rateGuestCountDetails,'List',context!) }; getTypeName() => "Rate"; TypeContext? context = _ctx; } class RateContainer implements IConvertible { String? echoToken; RateType? rateType; String? changeAction; List? rates; RateContainer({this.echoToken,this.rateType,this.changeAction,this.rates}); RateContainer.fromJson(Map json) { fromMap(json); } fromMap(Map json) { echoToken = json['echoToken']; rateType = JsonConverters.fromJson(json['rateType'],'RateType',context!); changeAction = json['changeAction']; rates = JsonConverters.fromJson(json['rates'],'List',context!); return this; } Map toJson() => { 'echoToken': echoToken, 'rateType': JsonConverters.toJson(rateType,'RateType',context!), 'changeAction': changeAction, 'rates': JsonConverters.toJson(rates,'List',context!) }; getTypeName() => "RateContainer"; TypeContext? context = _ctx; } class Response implements IConvertible { String? statusCode; int? recordCount; int? errorCount; Response({this.statusCode,this.recordCount,this.errorCount}); Response.fromJson(Map json) { fromMap(json); } fromMap(Map json) { statusCode = json['statusCode']; recordCount = json['recordCount']; errorCount = json['errorCount']; return this; } Map toJson() => { 'statusCode': statusCode, 'recordCount': recordCount, 'errorCount': errorCount }; getTypeName() => "Response"; TypeContext? context = _ctx; } // @Route("/hotelrate/{SubscriptionId}/{CendynPropertyId}", "POST") class HotelRate implements IReturn, IConvertible { RateContainer? rateContainer; String? subscriptionId; String? cendynPropertyId; HotelRate({this.rateContainer,this.subscriptionId,this.cendynPropertyId}); HotelRate.fromJson(Map json) { fromMap(json); } fromMap(Map json) { rateContainer = JsonConverters.fromJson(json['rateContainer'],'RateContainer',context!); subscriptionId = json['subscriptionId']; cendynPropertyId = json['cendynPropertyId']; return this; } Map toJson() => { 'rateContainer': JsonConverters.toJson(rateContainer,'RateContainer',context!), 'subscriptionId': subscriptionId, 'cendynPropertyId': cendynPropertyId }; createResponse() => Response(); getResponseTypeName() => "Response"; getTypeName() => "HotelRate"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'cert.cendyn.com', types: { 'RateType': TypeInfo(TypeOf.Class, create:() => RateType()), 'RateChargeDetail': TypeInfo(TypeOf.Class, create:() => RateChargeDetail()), 'RateGuestCountDetail': TypeInfo(TypeOf.Class, create:() => RateGuestCountDetail()), 'Rate': TypeInfo(TypeOf.Class, create:() => Rate()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'RateContainer': TypeInfo(TypeOf.Class, create:() => RateContainer()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'Response': TypeInfo(TypeOf.Class, create:() => Response()), 'HotelRate': TypeInfo(TypeOf.Class, create:() => HotelRate()), });