| 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 .jsv suffix or ?format=jsv
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/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
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
}
]
}