Trendsic Platform Service

<back to all web services

VisitExceptionsRequest

Requires Authentication
The following routes are available for this service:
GET,OPTIONS/v1/visits/exceptions
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<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> 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<String, dynamic> 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<ExceptionItem>? 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<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Items = JsonConverters.fromJson(json['Items'],'List<ExceptionItem>',context!);
        MissedCount = json['MissedCount'];
        SlaCount = json['SlaCount'];
        SkippedCount = json['SkippedCount'];
        AtRiskCount = json['AtRiskCount'];
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Items': JsonConverters.toJson(Items,'List<ExceptionItem>',context!),
        'MissedCount': MissedCount,
        'SlaCount': SlaCount,
        'SkippedCount': SkippedCount,
        'AtRiskCount': AtRiskCount,
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
    };

    getTypeName() => "VisitExceptionsResponse";
    TypeContext? context = _ctx;
}

class VisitExceptionsRequest implements IConvertible
{
    VisitExceptionsRequest();
    VisitExceptionsRequest.fromJson(Map<String, dynamic> json) : super();
    fromMap(Map<String, dynamic> json) {
        return this;
    }

    Map<String, dynamic> toJson() => {};
    getTypeName() => "VisitExceptionsRequest";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'ExceptionItem': TypeInfo(TypeOf.Class, create:() => ExceptionItem()),
    'VisitExceptionsResponse': TypeInfo(TypeOf.Class, create:() => VisitExceptionsResponse()),
    'List<ExceptionItem>': TypeInfo(TypeOf.Class, create:() => <ExceptionItem>[]),
    'VisitExceptionsRequest': TypeInfo(TypeOf.Class, create:() => VisitExceptionsRequest()),
});

Dart VisitExceptionsRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /v1/visits/exceptions HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"Items":[{"Kind":"String","VisitKey":"String","JobID":0,"ProjectID":0,"AgreementID":0,"AgreementJobID":0,"OccurrenceDate":"String","CustomerName":"String","LocationName":"String","City":"String","Lat":0,"Lng":0,"AgeDays":0,"Reason":"String","DurationMinutes":0,"IsCommercial":false,"PreferredCrewID":0}],"MissedCount":0,"SlaCount":0,"SkippedCount":0,"AtRiskCount":0,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}