/* Options: Date: 2025-12-06 06:17:30 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: ProjectProfitLossRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; class ProjectCost implements IConvertible { int? ProjectID; double? Budget; double? CrewCost; double? EquipmentCost; double? MaterialCost; double? TotalCost; double? BilledCrewCost; double? BilledEquipmentCost; double? BilledMaterialCost; double? BilledTotalCost; ProjectCost({this.ProjectID,this.Budget,this.CrewCost,this.EquipmentCost,this.MaterialCost,this.TotalCost,this.BilledCrewCost,this.BilledEquipmentCost,this.BilledMaterialCost,this.BilledTotalCost}); ProjectCost.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ProjectID = json['ProjectID']; Budget = JsonConverters.toDouble(json['Budget']); CrewCost = JsonConverters.toDouble(json['CrewCost']); EquipmentCost = JsonConverters.toDouble(json['EquipmentCost']); MaterialCost = JsonConverters.toDouble(json['MaterialCost']); TotalCost = JsonConverters.toDouble(json['TotalCost']); BilledCrewCost = JsonConverters.toDouble(json['BilledCrewCost']); BilledEquipmentCost = JsonConverters.toDouble(json['BilledEquipmentCost']); BilledMaterialCost = JsonConverters.toDouble(json['BilledMaterialCost']); BilledTotalCost = JsonConverters.toDouble(json['BilledTotalCost']); return this; } Map toJson() => { 'ProjectID': ProjectID, 'Budget': Budget, 'CrewCost': CrewCost, 'EquipmentCost': EquipmentCost, 'MaterialCost': MaterialCost, 'TotalCost': TotalCost, 'BilledCrewCost': BilledCrewCost, 'BilledEquipmentCost': BilledEquipmentCost, 'BilledMaterialCost': BilledMaterialCost, 'BilledTotalCost': BilledTotalCost }; getTypeName() => "ProjectCost"; TypeContext? context = _ctx; } class ProjectProfitLossResponse implements IConvertible { ResponseStatus? ResponseStatus; ProjectCost? ProjectProfitLoss; ProjectProfitLossResponse({this.ResponseStatus,this.ProjectProfitLoss}); ProjectProfitLossResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); ProjectProfitLoss = JsonConverters.fromJson(json['ProjectProfitLoss'],'ProjectCost',context!); return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'ProjectProfitLoss': JsonConverters.toJson(ProjectProfitLoss,'ProjectCost',context!) }; getTypeName() => "ProjectProfitLossResponse"; TypeContext? context = _ctx; } // @Route("/v1/Project/ProfitLoss/{ProjectID}/{ProfitLossStartDate}/{ProfitLossEndDate}", "GET,OPTIONS") class ProjectProfitLossRequest implements IReturn, IConvertible, IGet { int? ProjectID; DateTime? ProfitLossStartDate; DateTime? ProfitLossEndDate; ProjectProfitLossRequest({this.ProjectID,this.ProfitLossStartDate,this.ProfitLossEndDate}); ProjectProfitLossRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ProjectID = json['ProjectID']; ProfitLossStartDate = JsonConverters.fromJson(json['ProfitLossStartDate'],'DateTime',context!); ProfitLossEndDate = JsonConverters.fromJson(json['ProfitLossEndDate'],'DateTime',context!); return this; } Map toJson() => { 'ProjectID': ProjectID, 'ProfitLossStartDate': JsonConverters.toJson(ProfitLossStartDate,'DateTime',context!), 'ProfitLossEndDate': JsonConverters.toJson(ProfitLossEndDate,'DateTime',context!) }; createResponse() => ProjectProfitLossResponse(); getResponseTypeName() => "ProjectProfitLossResponse"; getTypeName() => "ProjectProfitLossRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'ProjectCost': TypeInfo(TypeOf.Class, create:() => ProjectCost()), 'ProjectProfitLossResponse': TypeInfo(TypeOf.Class, create:() => ProjectProfitLossResponse()), 'ProjectProfitLossRequest': TypeInfo(TypeOf.Class, create:() => ProjectProfitLossRequest()), });