/* Options: Date: 2026-08-01 02:22:44 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: AvailabilityRefreshRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class AvailabilityRowView implements IConvertible { int? ResourceAvailabilityID; String? ResourceType; String? Label; String? EquipmentName; String? RolesCsv; double? InternalRate; double? RentalRate; double? PremiumPerHour; DateTime? AvailableFrom; String? FreedFromProjectLabel; String? Source; AvailabilityRowView({this.ResourceAvailabilityID,this.ResourceType,this.Label,this.EquipmentName,this.RolesCsv,this.InternalRate,this.RentalRate,this.PremiumPerHour,this.AvailableFrom,this.FreedFromProjectLabel,this.Source}); AvailabilityRowView.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResourceAvailabilityID = json['ResourceAvailabilityID']; ResourceType = json['ResourceType']; Label = json['Label']; EquipmentName = json['EquipmentName']; RolesCsv = json['RolesCsv']; InternalRate = JsonConverters.toDouble(json['InternalRate']); RentalRate = JsonConverters.toDouble(json['RentalRate']); PremiumPerHour = JsonConverters.toDouble(json['PremiumPerHour']); AvailableFrom = JsonConverters.fromJson(json['AvailableFrom'],'DateTime',context!); FreedFromProjectLabel = json['FreedFromProjectLabel']; Source = json['Source']; return this; } Map toJson() => { 'ResourceAvailabilityID': ResourceAvailabilityID, 'ResourceType': ResourceType, 'Label': Label, 'EquipmentName': EquipmentName, 'RolesCsv': RolesCsv, 'InternalRate': InternalRate, 'RentalRate': RentalRate, 'PremiumPerHour': PremiumPerHour, 'AvailableFrom': JsonConverters.toJson(AvailableFrom,'DateTime',context!), 'FreedFromProjectLabel': FreedFromProjectLabel, 'Source': Source }; getTypeName() => "AvailabilityRowView"; TypeContext? context = _ctx; } class AvailabilityRefreshSummary implements IConvertible { int? Derived; int? DeactivatedStale; int? SkippedManualPrecedence; int? SkippedNoRentalSource; int? SkippedNoDayRate; List? Notes = []; AvailabilityRefreshSummary({this.Derived,this.DeactivatedStale,this.SkippedManualPrecedence,this.SkippedNoRentalSource,this.SkippedNoDayRate,this.Notes}); AvailabilityRefreshSummary.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Derived = json['Derived']; DeactivatedStale = json['DeactivatedStale']; SkippedManualPrecedence = json['SkippedManualPrecedence']; SkippedNoRentalSource = json['SkippedNoRentalSource']; SkippedNoDayRate = json['SkippedNoDayRate']; Notes = JsonConverters.fromJson(json['Notes'],'List',context!); return this; } Map toJson() => { 'Derived': Derived, 'DeactivatedStale': DeactivatedStale, 'SkippedManualPrecedence': SkippedManualPrecedence, 'SkippedNoRentalSource': SkippedNoRentalSource, 'SkippedNoDayRate': SkippedNoDayRate, 'Notes': JsonConverters.toJson(Notes,'List',context!) }; getTypeName() => "AvailabilityRefreshSummary"; TypeContext? context = _ctx; } class AvailabilityListResponse implements IConvertible { ResponseStatus? ResponseStatus; List? Rows = []; List? EquipmentNames = []; List? CrewRoles = []; AvailabilityRefreshSummary? Summary; AvailabilityListResponse({this.ResponseStatus,this.Rows,this.EquipmentNames,this.CrewRoles,this.Summary}); AvailabilityListResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); Rows = JsonConverters.fromJson(json['Rows'],'List',context!); EquipmentNames = JsonConverters.fromJson(json['EquipmentNames'],'List',context!); CrewRoles = JsonConverters.fromJson(json['CrewRoles'],'List',context!); Summary = JsonConverters.fromJson(json['Summary'],'AvailabilityRefreshSummary',context!); return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'Rows': JsonConverters.toJson(Rows,'List',context!), 'EquipmentNames': JsonConverters.toJson(EquipmentNames,'List',context!), 'CrewRoles': JsonConverters.toJson(CrewRoles,'List',context!), 'Summary': JsonConverters.toJson(Summary,'AvailabilityRefreshSummary',context!) }; getTypeName() => "AvailabilityListResponse"; TypeContext? context = _ctx; } // @Route("/v1/Rfp/Availability/Refresh", "POST,OPTIONS") class AvailabilityRefreshRequest implements IReturn, IConvertible, IPost { AvailabilityRefreshRequest(); AvailabilityRefreshRequest.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; createResponse() => AvailabilityListResponse(); getResponseTypeName() => "AvailabilityListResponse"; getTypeName() => "AvailabilityRefreshRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'AvailabilityRowView': TypeInfo(TypeOf.Class, create:() => AvailabilityRowView()), 'AvailabilityRefreshSummary': TypeInfo(TypeOf.Class, create:() => AvailabilityRefreshSummary()), 'AvailabilityListResponse': TypeInfo(TypeOf.Class, create:() => AvailabilityListResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'AvailabilityRefreshRequest': TypeInfo(TypeOf.Class, create:() => AvailabilityRefreshRequest()), });