/* Options: Date: 2026-06-22 21:46:05 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: AdditionalServiceListRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class AdditionalServiceRequestPhoto implements IConvertible { int? AdditionalServiceRequestPhotoID; String? Url; String? MimeType; DateTime? CreatedAt; AdditionalServiceRequestPhoto({this.AdditionalServiceRequestPhotoID,this.Url,this.MimeType,this.CreatedAt}); AdditionalServiceRequestPhoto.fromJson(Map json) { fromMap(json); } fromMap(Map json) { AdditionalServiceRequestPhotoID = json['AdditionalServiceRequestPhotoID']; Url = json['Url']; MimeType = json['MimeType']; CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!); return this; } Map toJson() => { 'AdditionalServiceRequestPhotoID': AdditionalServiceRequestPhotoID, 'Url': Url, 'MimeType': MimeType, 'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!) }; getTypeName() => "AdditionalServiceRequestPhoto"; TypeContext? context = _ctx; } class AdditionalServiceRequest implements IConvertible { int? AdditionalServiceRequestID; String? AdditionalServiceRequestUID; String? TenantId; String? BranchId; String? BranchName; int? ProjectID; String? ProjectName; String? ProjectUID; int? JobID; int? AgreementJobID; int? RequestedByContactID; String? RequestedByName; int? CustomerContactID; String? CustomerName; String? CustomerEmail; String? CustomerPhone; bool? CustomerSmsOptIn; String? Description; String? Status; int? QuoteID; String? QuoteUID; String? QuoteStatus; double? QuoteTotal; bool? FinalPriceAfterCompletion; String? QuoteApprovedByName; DateTime? QuoteApprovedAt; int? ConvertedJobID; int? PhotoCount; String? CreatedBy; DateTime? CreatedAt; String? UpdatedBy; DateTime? UpdatedAt; List? Photos = []; AdditionalServiceRequest({this.AdditionalServiceRequestID,this.AdditionalServiceRequestUID,this.TenantId,this.BranchId,this.BranchName,this.ProjectID,this.ProjectName,this.ProjectUID,this.JobID,this.AgreementJobID,this.RequestedByContactID,this.RequestedByName,this.CustomerContactID,this.CustomerName,this.CustomerEmail,this.CustomerPhone,this.CustomerSmsOptIn,this.Description,this.Status,this.QuoteID,this.QuoteUID,this.QuoteStatus,this.QuoteTotal,this.FinalPriceAfterCompletion,this.QuoteApprovedByName,this.QuoteApprovedAt,this.ConvertedJobID,this.PhotoCount,this.CreatedBy,this.CreatedAt,this.UpdatedBy,this.UpdatedAt,this.Photos}); AdditionalServiceRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { AdditionalServiceRequestID = json['AdditionalServiceRequestID']; AdditionalServiceRequestUID = json['AdditionalServiceRequestUID']; TenantId = json['TenantId']; BranchId = json['BranchId']; BranchName = json['BranchName']; ProjectID = json['ProjectID']; ProjectName = json['ProjectName']; ProjectUID = json['ProjectUID']; JobID = json['JobID']; AgreementJobID = json['AgreementJobID']; RequestedByContactID = json['RequestedByContactID']; RequestedByName = json['RequestedByName']; CustomerContactID = json['CustomerContactID']; CustomerName = json['CustomerName']; CustomerEmail = json['CustomerEmail']; CustomerPhone = json['CustomerPhone']; CustomerSmsOptIn = json['CustomerSmsOptIn']; Description = json['Description']; Status = json['Status']; QuoteID = json['QuoteID']; QuoteUID = json['QuoteUID']; QuoteStatus = json['QuoteStatus']; QuoteTotal = JsonConverters.toDouble(json['QuoteTotal']); FinalPriceAfterCompletion = json['FinalPriceAfterCompletion']; QuoteApprovedByName = json['QuoteApprovedByName']; QuoteApprovedAt = JsonConverters.fromJson(json['QuoteApprovedAt'],'DateTime',context!); ConvertedJobID = json['ConvertedJobID']; PhotoCount = json['PhotoCount']; CreatedBy = json['CreatedBy']; CreatedAt = JsonConverters.fromJson(json['CreatedAt'],'DateTime',context!); UpdatedBy = json['UpdatedBy']; UpdatedAt = JsonConverters.fromJson(json['UpdatedAt'],'DateTime',context!); Photos = JsonConverters.fromJson(json['Photos'],'List',context!); return this; } Map toJson() => { 'AdditionalServiceRequestID': AdditionalServiceRequestID, 'AdditionalServiceRequestUID': AdditionalServiceRequestUID, 'TenantId': TenantId, 'BranchId': BranchId, 'BranchName': BranchName, 'ProjectID': ProjectID, 'ProjectName': ProjectName, 'ProjectUID': ProjectUID, 'JobID': JobID, 'AgreementJobID': AgreementJobID, 'RequestedByContactID': RequestedByContactID, 'RequestedByName': RequestedByName, 'CustomerContactID': CustomerContactID, 'CustomerName': CustomerName, 'CustomerEmail': CustomerEmail, 'CustomerPhone': CustomerPhone, 'CustomerSmsOptIn': CustomerSmsOptIn, 'Description': Description, 'Status': Status, 'QuoteID': QuoteID, 'QuoteUID': QuoteUID, 'QuoteStatus': QuoteStatus, 'QuoteTotal': QuoteTotal, 'FinalPriceAfterCompletion': FinalPriceAfterCompletion, 'QuoteApprovedByName': QuoteApprovedByName, 'QuoteApprovedAt': JsonConverters.toJson(QuoteApprovedAt,'DateTime',context!), 'ConvertedJobID': ConvertedJobID, 'PhotoCount': PhotoCount, 'CreatedBy': CreatedBy, 'CreatedAt': JsonConverters.toJson(CreatedAt,'DateTime',context!), 'UpdatedBy': UpdatedBy, 'UpdatedAt': JsonConverters.toJson(UpdatedAt,'DateTime',context!), 'Photos': JsonConverters.toJson(Photos,'List',context!) }; getTypeName() => "AdditionalServiceRequest"; TypeContext? context = _ctx; } class AdditionalServiceListResponse implements IConvertible { ResponseStatus? ResponseStatus; List? Requests = []; AdditionalServiceListResponse({this.ResponseStatus,this.Requests}); AdditionalServiceListResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); Requests = JsonConverters.fromJson(json['Requests'],'List',context!); return this; } Map toJson() => { 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'Requests': JsonConverters.toJson(Requests,'List',context!) }; getTypeName() => "AdditionalServiceListResponse"; TypeContext? context = _ctx; } // @Route("/v1/additionalservice", "GET,OPTIONS") class AdditionalServiceListRequest implements IReturn, IConvertible, IGet { String? Status; AdditionalServiceListRequest({this.Status}); AdditionalServiceListRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Status = json['Status']; return this; } Map toJson() => { 'Status': Status }; createResponse() => AdditionalServiceListResponse(); getResponseTypeName() => "AdditionalServiceListResponse"; getTypeName() => "AdditionalServiceListRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'AdditionalServiceRequestPhoto': TypeInfo(TypeOf.Class, create:() => AdditionalServiceRequestPhoto()), 'AdditionalServiceRequest': TypeInfo(TypeOf.Class, create:() => AdditionalServiceRequest()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'AdditionalServiceListResponse': TypeInfo(TypeOf.Class, create:() => AdditionalServiceListResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'AdditionalServiceListRequest': TypeInfo(TypeOf.Class, create:() => AdditionalServiceListRequest()), });