/* Options: Date: 2026-06-22 22:50:22 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: VisitExceptionsRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class ExceptionItem implements IConvertible { String? Kind; String? VisitKey; int? JobID; int? ProjectID; int? AgreementID; int? AgreementJobID; String? OccurrenceDate; String? CustomerName; String? LocationName; String? City; double? Lat; double? Lng; int? AgeDays; String? Reason; int? DurationMinutes; bool? IsCommercial; int? PreferredCrewID; ExceptionItem({this.Kind,this.VisitKey,this.JobID,this.ProjectID,this.AgreementID,this.AgreementJobID,this.OccurrenceDate,this.CustomerName,this.LocationName,this.City,this.Lat,this.Lng,this.AgeDays,this.Reason,this.DurationMinutes,this.IsCommercial,this.PreferredCrewID}); ExceptionItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Kind = json['Kind']; VisitKey = json['VisitKey']; JobID = json['JobID']; ProjectID = json['ProjectID']; AgreementID = json['AgreementID']; AgreementJobID = json['AgreementJobID']; OccurrenceDate = json['OccurrenceDate']; CustomerName = json['CustomerName']; LocationName = json['LocationName']; City = json['City']; Lat = JsonConverters.toDouble(json['Lat']); Lng = JsonConverters.toDouble(json['Lng']); AgeDays = json['AgeDays']; Reason = json['Reason']; DurationMinutes = json['DurationMinutes']; IsCommercial = json['IsCommercial']; PreferredCrewID = json['PreferredCrewID']; return this; } Map toJson() => { 'Kind': Kind, 'VisitKey': VisitKey, 'JobID': JobID, 'ProjectID': ProjectID, 'AgreementID': AgreementID, 'AgreementJobID': AgreementJobID, 'OccurrenceDate': OccurrenceDate, 'CustomerName': CustomerName, 'LocationName': LocationName, 'City': City, 'Lat': Lat, 'Lng': Lng, 'AgeDays': AgeDays, 'Reason': Reason, 'DurationMinutes': DurationMinutes, 'IsCommercial': IsCommercial, 'PreferredCrewID': PreferredCrewID }; getTypeName() => "ExceptionItem"; TypeContext? context = _ctx; } class VisitExceptionsResponse implements IConvertible { List? Items = []; int? MissedCount; int? SlaCount; int? SkippedCount; int? AtRiskCount; ResponseStatus? ResponseStatus; VisitExceptionsResponse({this.Items,this.MissedCount,this.SlaCount,this.SkippedCount,this.AtRiskCount,this.ResponseStatus}); VisitExceptionsResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Items = JsonConverters.fromJson(json['Items'],'List',context!); MissedCount = json['MissedCount']; SlaCount = json['SlaCount']; SkippedCount = json['SkippedCount']; AtRiskCount = json['AtRiskCount']; ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); return this; } Map toJson() => { 'Items': JsonConverters.toJson(Items,'List',context!), 'MissedCount': MissedCount, 'SlaCount': SlaCount, 'SkippedCount': SkippedCount, 'AtRiskCount': AtRiskCount, 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!) }; getTypeName() => "VisitExceptionsResponse"; TypeContext? context = _ctx; } // @Route("/v1/visits/exceptions", "GET,OPTIONS") class VisitExceptionsRequest implements IReturn, IConvertible, IGet { VisitExceptionsRequest(); VisitExceptionsRequest.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; createResponse() => VisitExceptionsResponse(); getResponseTypeName() => "VisitExceptionsResponse"; getTypeName() => "VisitExceptionsRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'ExceptionItem': TypeInfo(TypeOf.Class, create:() => ExceptionItem()), 'VisitExceptionsResponse': TypeInfo(TypeOf.Class, create:() => VisitExceptionsResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'VisitExceptionsRequest': TypeInfo(TypeOf.Class, create:() => VisitExceptionsRequest()), });