Trendsic Platform Service

<back to all web services

AgreementPlannerRequest

Requires Authentication
The following routes are available for this service:
GET,OPTIONS/v1/serviceagreement/planner
import 'package:servicestack/servicestack.dart';

class AgreementPlannerRow implements IConvertible
{
    int? AgreementID;
    String? Name;
    String? ProjectName;
    String? ServiceType;
    String? Area;
    String? Zip;
    String? Frequency;
    String? NextDueIso;
    String? NextDueLabel;
    bool? Overdue;
    int? DurationMin;
    List<int>? EligibleDow = [];
    int? ScheduledDow;
    bool? WeeklyAll;
    bool? DueThisWeek;
    int? AssignedCrewID;
    String? AssignedCrewName;
    int? ThisWeekJobID;
    int? ThisWeekBackingJobID;
    String? ThisWeekOccIso;
    String? ThisWeekStandingIso;
    int? StandingDow;
    bool? Moved;

    AgreementPlannerRow({this.AgreementID,this.Name,this.ProjectName,this.ServiceType,this.Area,this.Zip,this.Frequency,this.NextDueIso,this.NextDueLabel,this.Overdue,this.DurationMin,this.EligibleDow,this.ScheduledDow,this.WeeklyAll,this.DueThisWeek,this.AssignedCrewID,this.AssignedCrewName,this.ThisWeekJobID,this.ThisWeekBackingJobID,this.ThisWeekOccIso,this.ThisWeekStandingIso,this.StandingDow,this.Moved});
    AgreementPlannerRow.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        AgreementID = json['AgreementID'];
        Name = json['Name'];
        ProjectName = json['ProjectName'];
        ServiceType = json['ServiceType'];
        Area = json['Area'];
        Zip = json['Zip'];
        Frequency = json['Frequency'];
        NextDueIso = json['NextDueIso'];
        NextDueLabel = json['NextDueLabel'];
        Overdue = json['Overdue'];
        DurationMin = json['DurationMin'];
        EligibleDow = JsonConverters.fromJson(json['EligibleDow'],'List<int>',context!);
        ScheduledDow = json['ScheduledDow'];
        WeeklyAll = json['WeeklyAll'];
        DueThisWeek = json['DueThisWeek'];
        AssignedCrewID = json['AssignedCrewID'];
        AssignedCrewName = json['AssignedCrewName'];
        ThisWeekJobID = json['ThisWeekJobID'];
        ThisWeekBackingJobID = json['ThisWeekBackingJobID'];
        ThisWeekOccIso = json['ThisWeekOccIso'];
        ThisWeekStandingIso = json['ThisWeekStandingIso'];
        StandingDow = json['StandingDow'];
        Moved = json['Moved'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'AgreementID': AgreementID,
        'Name': Name,
        'ProjectName': ProjectName,
        'ServiceType': ServiceType,
        'Area': Area,
        'Zip': Zip,
        'Frequency': Frequency,
        'NextDueIso': NextDueIso,
        'NextDueLabel': NextDueLabel,
        'Overdue': Overdue,
        'DurationMin': DurationMin,
        'EligibleDow': JsonConverters.toJson(EligibleDow,'List<int>',context!),
        'ScheduledDow': ScheduledDow,
        'WeeklyAll': WeeklyAll,
        'DueThisWeek': DueThisWeek,
        'AssignedCrewID': AssignedCrewID,
        'AssignedCrewName': AssignedCrewName,
        'ThisWeekJobID': ThisWeekJobID,
        'ThisWeekBackingJobID': ThisWeekBackingJobID,
        'ThisWeekOccIso': ThisWeekOccIso,
        'ThisWeekStandingIso': ThisWeekStandingIso,
        'StandingDow': StandingDow,
        'Moved': Moved
    };

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

class AgreementPlannerCrew implements IConvertible
{
    int? CrewID;
    String? CrewName;
    String? CrewColor;

    AgreementPlannerCrew({this.CrewID,this.CrewName,this.CrewColor});
    AgreementPlannerCrew.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CrewID = json['CrewID'];
        CrewName = json['CrewName'];
        CrewColor = json['CrewColor'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CrewID': CrewID,
        'CrewName': CrewName,
        'CrewColor': CrewColor
    };

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

class AgreementPlannerResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    String? FromIso;
    String? ToIso;
    int? WeekdayCapacity;
    List<AgreementPlannerRow>? Rows = [];
    List<AgreementPlannerCrew>? Crews = [];

    AgreementPlannerResponse({this.ResponseStatus,this.FromIso,this.ToIso,this.WeekdayCapacity,this.Rows,this.Crews});
    AgreementPlannerResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
        FromIso = json['FromIso'];
        ToIso = json['ToIso'];
        WeekdayCapacity = json['WeekdayCapacity'];
        Rows = JsonConverters.fromJson(json['Rows'],'List<AgreementPlannerRow>',context!);
        Crews = JsonConverters.fromJson(json['Crews'],'List<AgreementPlannerCrew>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
        'FromIso': FromIso,
        'ToIso': ToIso,
        'WeekdayCapacity': WeekdayCapacity,
        'Rows': JsonConverters.toJson(Rows,'List<AgreementPlannerRow>',context!),
        'Crews': JsonConverters.toJson(Crews,'List<AgreementPlannerCrew>',context!)
    };

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

class AgreementPlannerRequest implements IConvertible
{
    String? From;
    String? Scope;

    AgreementPlannerRequest({this.From,this.Scope});
    AgreementPlannerRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        From = json['From'];
        Scope = json['Scope'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'From': From,
        'Scope': Scope
    };

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

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

Dart AgreementPlannerRequest DTOs

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

HTTP + OTHER

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

GET /v1/serviceagreement/planner HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsonl
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"FromIso":"String","ToIso":"String","WeekdayCapacity":0,"Rows":[{"AgreementID":0,"Name":"String","ProjectName":"String","ServiceType":"String","Area":"String","Zip":"String","Frequency":"String","NextDueIso":"String","NextDueLabel":"String","Overdue":false,"DurationMin":0,"EligibleDow":[0],"ScheduledDow":0,"WeeklyAll":false,"DueThisWeek":false,"AssignedCrewID":0,"AssignedCrewName":"String","ThisWeekJobID":0,"ThisWeekBackingJobID":0,"ThisWeekOccIso":"String","ThisWeekStandingIso":"String","StandingDow":0,"Moved":false}],"Crews":[{"CrewID":0,"CrewName":"String","CrewColor":"String"}]}