/* Options: Date: 2026-08-01 08:55:26 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: MaterialProjectRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; class Location implements IConvertible { String? Id; String? ClientId; String? Name; String? Address1; String? Address2; String? City; String? State; String? Zip; String? Phone; String? Fax; String? URL; String? Email; String? TimeZone; bool? Active; DateTime? EntDate; DateTime? ModDate; String? LocationImage; Location({this.Id,this.ClientId,this.Name,this.Address1,this.Address2,this.City,this.State,this.Zip,this.Phone,this.Fax,this.URL,this.Email,this.TimeZone,this.Active,this.EntDate,this.ModDate,this.LocationImage}); Location.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; ClientId = json['ClientId']; Name = json['Name']; Address1 = json['Address1']; Address2 = json['Address2']; City = json['City']; State = json['State']; Zip = json['Zip']; Phone = json['Phone']; Fax = json['Fax']; URL = json['URL']; Email = json['Email']; TimeZone = json['TimeZone']; Active = json['Active']; EntDate = JsonConverters.fromJson(json['EntDate'],'DateTime',context!); ModDate = JsonConverters.fromJson(json['ModDate'],'DateTime',context!); LocationImage = json['LocationImage']; return this; } Map toJson() => { 'Id': Id, 'ClientId': ClientId, 'Name': Name, 'Address1': Address1, 'Address2': Address2, 'City': City, 'State': State, 'Zip': Zip, 'Phone': Phone, 'Fax': Fax, 'URL': URL, 'Email': Email, 'TimeZone': TimeZone, 'Active': Active, 'EntDate': JsonConverters.toJson(EntDate,'DateTime',context!), 'ModDate': JsonConverters.toJson(ModDate,'DateTime',context!), 'LocationImage': LocationImage }; getTypeName() => "Location"; TypeContext? context = _ctx; } class Project implements IConvertible { int? ProjectID; String? ProjectUID; String? ProjectName; String? ImageURL; String? ImageKey; String? ClientName; String? ClientPhone; String? ClientEmail; bool? NotifyCustomerOnVisitCompletion; int? ClientContactID; int? ProjectManagerID; String? ProjectManagerName; DateTime? StartDate; DateTime? EndDate; DateTime? ActualStartDate; DateTime? ActualEndDate; int? JobCount; int? CrewMemberCount; String? CrewAvatarsJson; String? CrewNamesSearch; int? EquipmentCount; int? MaterialCount; int? ProjectStatusID; String? ProjectStatusDescription; double? Budget; double? CostToDate; String? ProjectLocation; String? ProjectType; String? ProjectSponsor; String? CreatedBy; DateTime? CreatedAt; DateTime? UpdatedAt; String? ProjectDescription; String? Scope; int? StatusId; String? BranchId; String? BranchName; Location? Location; Project({this.ProjectID,this.ProjectUID,this.ProjectName,this.ImageURL,this.ImageKey,this.ClientName,this.ClientPhone,this.ClientEmail,this.NotifyCustomerOnVisitCompletion,this.ClientContactID,this.ProjectManagerID,this.ProjectManagerName,this.StartDate,this.EndDate,this.ActualStartDate,this.ActualEndDate,this.JobCount,this.CrewMemberCount,this.CrewAvatarsJson,this.CrewNamesSearch,this.EquipmentCount,this.MaterialCount,this.ProjectStatusID,this.ProjectStatusDescription,this.Budget,this.CostToDate,this.ProjectLocation,this.ProjectType,this.ProjectSponsor,this.CreatedBy,this.CreatedAt,this.UpdatedAt,this.ProjectDescription,this.Scope,this.StatusId,this.BranchId,this.BranchName,this.Location}); Project.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ProjectID = json['ProjectID']; ProjectUID = json['ProjectUID']; ProjectName = json['ProjectName']; ImageURL = json['ImageURL']; ImageKey = json['ImageKey']; ClientName = json['ClientName']; ClientPhone = json['ClientPhone']; ClientEmail = json['ClientEmail']; NotifyCustomerOnVisitCompletion = json['NotifyCustomerOnVisitCompletion']; ClientContactID = json['ClientContactID']; ProjectManagerID = json['ProjectManagerID']; ProjectManagerName = json['ProjectManagerName']; StartDate = JsonConverters.fromJson(json['StartDate'],'DateTime',context!); EndDate = JsonConverters.fromJson(json['EndDate'],'DateTime',context!); ActualStartDate = JsonConverters.fromJson(json['ActualStartDate'],'DateTime',context!); ActualEndDate = JsonConverters.fromJson(json['ActualEndDate'],'DateTime',context!); JobCount = json['JobCount']; CrewMemberCount = json['CrewMemberCount']; CrewAvatarsJson = json['CrewAvatarsJson']; CrewNamesSearch = json['CrewNamesSearch']; EquipmentCount = json['EquipmentCount']; MaterialCount = json['MaterialCount']; ProjectStatusID = json['ProjectStatusID']; ProjectStatusDescription = json['ProjectStatusDescription']; Budget = JsonConverters.toDouble(json['Budget']); CostToDate = JsonConverters.toDouble(json['CostToDate']); ProjectLocation = json['ProjectLocation']; ProjectType = json['ProjectType']; ProjectSponsor = json['ProjectSponsor']; CreatedBy = json['CreatedBy']; CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!); UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!); ProjectDescription = json['ProjectDescription']; Scope = json['Scope']; StatusId = json['StatusId']; BranchId = json['BranchId']; BranchName = json['BranchName']; Location = JsonConverters.fromJson(json['Location'],'Location',context!); return this; } Map toJson() => { 'ProjectID': ProjectID, 'ProjectUID': ProjectUID, 'ProjectName': ProjectName, 'ImageURL': ImageURL, 'ImageKey': ImageKey, 'ClientName': ClientName, 'ClientPhone': ClientPhone, 'ClientEmail': ClientEmail, 'NotifyCustomerOnVisitCompletion': NotifyCustomerOnVisitCompletion, 'ClientContactID': ClientContactID, 'ProjectManagerID': ProjectManagerID, 'ProjectManagerName': ProjectManagerName, 'StartDate': JsonConverters.toJson(StartDate,'DateTime',context!), 'EndDate': JsonConverters.toJson(EndDate,'DateTime',context!), 'ActualStartDate': JsonConverters.toJson(ActualStartDate,'DateTime',context!), 'ActualEndDate': JsonConverters.toJson(ActualEndDate,'DateTime',context!), 'JobCount': JobCount, 'CrewMemberCount': CrewMemberCount, 'CrewAvatarsJson': CrewAvatarsJson, 'CrewNamesSearch': CrewNamesSearch, 'EquipmentCount': EquipmentCount, 'MaterialCount': MaterialCount, 'ProjectStatusID': ProjectStatusID, 'ProjectStatusDescription': ProjectStatusDescription, 'Budget': Budget, 'CostToDate': CostToDate, 'ProjectLocation': ProjectLocation, 'ProjectType': ProjectType, 'ProjectSponsor': ProjectSponsor, 'CreatedBy': CreatedBy, 'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!), 'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!), 'ProjectDescription': ProjectDescription, 'Scope': Scope, 'StatusId': StatusId, 'BranchId': BranchId, 'BranchName': BranchName, 'Location': JsonConverters.toJson(Location,'Location',context!) }; getTypeName() => "Project"; TypeContext? context = _ctx; } class MaterialProjectResponse implements IConvertible { ResponseStatus? ResponseStatus; List? Projects = []; MaterialProjectResponse({this.ResponseStatus,this.Projects}); MaterialProjectResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); Projects = JsonConverters.fromJson(json['Projects'],'List',context!); return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'Projects': JsonConverters.toJson(Projects,'List',context!) }; getTypeName() => "MaterialProjectResponse"; TypeContext? context = _ctx; } // @Route("/v1/Material/{MaterialID}/Projects", "GET,OPTIONS") class MaterialProjectRequest implements IReturn, IConvertible, IGet { int? MaterialID; MaterialProjectRequest({this.MaterialID}); MaterialProjectRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { MaterialID = json['MaterialID']; return this; } Map toJson() => { 'MaterialID': MaterialID }; createResponse() => MaterialProjectResponse(); getResponseTypeName() => "MaterialProjectResponse"; getTypeName() => "MaterialProjectRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'Location': TypeInfo(TypeOf.Class, create:() => Location()), 'Project': TypeInfo(TypeOf.Class, create:() => Project()), 'MaterialProjectResponse': TypeInfo(TypeOf.Class, create:() => MaterialProjectResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'MaterialProjectRequest': TypeInfo(TypeOf.Class, create:() => MaterialProjectRequest()), });