| GET,OPTIONS | /v1/Project/{ProjectID}/material/{MaterialID}/Jobs |
|---|
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class CalendarEvent implements IConvertible
{
int? CalendarEventId;
String? CalendarId;
DateTime? EventStart;
DateTime? EventEnd;
String? Location;
String? Summary;
String? Description;
int? EventTypeId;
bool? Recurrence;
String? RecurrenceFrequency;
String? RecurrenceBy;
String? RecurrenceByValue;
DateTime? RecurrenceUntil;
String? CreatedBy;
String? CreatedByName;
DateTime? DateCreated;
String? ModifiedBy;
DateTime? DateModified;
bool? Deleted;
String? TimeZone;
int? Offset;
DateTime? TextReminderSentDate;
bool? Confirmed;
String? ConfirmationTextId;
String? FirstTextReminderId;
String? SecondTextReminderId;
String? LocationUID;
DateTime? AgentReminderSentDate;
int? ContactId;
bool? IsPrivate;
int? ProjectID;
int? JobID;
DateTime? ProjectStartDate;
DateTime? ProjectEndDate;
DateTime? MaxCrewEndDate;
DateTime? MaxEquipmentEndDate;
String? CheckInId;
bool? AllDay;
String? JobName;
String? JobStatusName;
int? JobStatusId;
String? ProjectName;
int? ResourceId;
String? ResourceName;
DateTime? Original_EventStart;
bool? Original_Recurrence;
String? Original_RecurrenceFrequency;
String? Original_RecurrenceBy;
String? Original_RecurrenceByValue;
DateTime? Original_RecurrenceUntil;
String? Checksum;
CalendarEvent({this.CalendarEventId,this.CalendarId,this.EventStart,this.EventEnd,this.Location,this.Summary,this.Description,this.EventTypeId,this.Recurrence,this.RecurrenceFrequency,this.RecurrenceBy,this.RecurrenceByValue,this.RecurrenceUntil,this.CreatedBy,this.CreatedByName,this.DateCreated,this.ModifiedBy,this.DateModified,this.Deleted,this.TimeZone,this.Offset,this.TextReminderSentDate,this.Confirmed,this.ConfirmationTextId,this.FirstTextReminderId,this.SecondTextReminderId,this.LocationUID,this.AgentReminderSentDate,this.ContactId,this.IsPrivate,this.ProjectID,this.JobID,this.ProjectStartDate,this.ProjectEndDate,this.MaxCrewEndDate,this.MaxEquipmentEndDate,this.CheckInId,this.AllDay,this.JobName,this.JobStatusName,this.JobStatusId,this.ProjectName,this.ResourceId,this.ResourceName,this.Original_EventStart,this.Original_Recurrence,this.Original_RecurrenceFrequency,this.Original_RecurrenceBy,this.Original_RecurrenceByValue,this.Original_RecurrenceUntil,this.Checksum});
CalendarEvent.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
CalendarEventId = json['CalendarEventId'];
CalendarId = json['CalendarId'];
EventStart = JsonConverters.fromJson(json['EventStart'],'DateTime',context!);
EventEnd = JsonConverters.fromJson(json['EventEnd'],'DateTime',context!);
Location = json['Location'];
Summary = json['Summary'];
Description = json['Description'];
EventTypeId = json['EventTypeId'];
Recurrence = json['Recurrence'];
RecurrenceFrequency = json['RecurrenceFrequency'];
RecurrenceBy = json['RecurrenceBy'];
RecurrenceByValue = json['RecurrenceByValue'];
RecurrenceUntil = JsonConverters.fromJson(json['RecurrenceUntil'],'DateTime',context!);
CreatedBy = json['CreatedBy'];
CreatedByName = json['CreatedByName'];
DateCreated = JsonConverters.fromJson(json['DateCreated'],'DateTime',context!);
ModifiedBy = json['ModifiedBy'];
DateModified = JsonConverters.fromJson(json['DateModified'],'DateTime',context!);
Deleted = json['Deleted'];
TimeZone = json['TimeZone'];
Offset = json['Offset'];
TextReminderSentDate = JsonConverters.fromJson(json['TextReminderSentDate'],'DateTime',context!);
Confirmed = json['Confirmed'];
ConfirmationTextId = json['ConfirmationTextId'];
FirstTextReminderId = json['FirstTextReminderId'];
SecondTextReminderId = json['SecondTextReminderId'];
LocationUID = json['LocationUID'];
AgentReminderSentDate = JsonConverters.fromJson(json['AgentReminderSentDate'],'DateTime',context!);
ContactId = json['ContactId'];
IsPrivate = json['IsPrivate'];
ProjectID = json['ProjectID'];
JobID = json['JobID'];
ProjectStartDate = JsonConverters.fromJson(json['ProjectStartDate'],'DateTime',context!);
ProjectEndDate = JsonConverters.fromJson(json['ProjectEndDate'],'DateTime',context!);
MaxCrewEndDate = JsonConverters.fromJson(json['MaxCrewEndDate'],'DateTime',context!);
MaxEquipmentEndDate = JsonConverters.fromJson(json['MaxEquipmentEndDate'],'DateTime',context!);
CheckInId = json['CheckInId'];
AllDay = json['AllDay'];
JobName = json['JobName'];
JobStatusName = json['JobStatusName'];
JobStatusId = json['JobStatusId'];
ProjectName = json['ProjectName'];
ResourceId = json['ResourceId'];
ResourceName = json['ResourceName'];
Original_EventStart = JsonConverters.fromJson(json['Original_EventStart'],'DateTime',context!);
Original_Recurrence = json['Original_Recurrence'];
Original_RecurrenceFrequency = json['Original_RecurrenceFrequency'];
Original_RecurrenceBy = json['Original_RecurrenceBy'];
Original_RecurrenceByValue = json['Original_RecurrenceByValue'];
Original_RecurrenceUntil = JsonConverters.fromJson(json['Original_RecurrenceUntil'],'DateTime',context!);
Checksum = json['Checksum'];
return this;
}
Map<String, dynamic> toJson() => {
'CalendarEventId': CalendarEventId,
'CalendarId': CalendarId,
'EventStart': JsonConverters.toJson(EventStart,'DateTime',context!),
'EventEnd': JsonConverters.toJson(EventEnd,'DateTime',context!),
'Location': Location,
'Summary': Summary,
'Description': Description,
'EventTypeId': EventTypeId,
'Recurrence': Recurrence,
'RecurrenceFrequency': RecurrenceFrequency,
'RecurrenceBy': RecurrenceBy,
'RecurrenceByValue': RecurrenceByValue,
'RecurrenceUntil': JsonConverters.toJson(RecurrenceUntil,'DateTime',context!),
'CreatedBy': CreatedBy,
'CreatedByName': CreatedByName,
'DateCreated': JsonConverters.toJson(DateCreated,'DateTime',context!),
'ModifiedBy': ModifiedBy,
'DateModified': JsonConverters.toJson(DateModified,'DateTime',context!),
'Deleted': Deleted,
'TimeZone': TimeZone,
'Offset': Offset,
'TextReminderSentDate': JsonConverters.toJson(TextReminderSentDate,'DateTime',context!),
'Confirmed': Confirmed,
'ConfirmationTextId': ConfirmationTextId,
'FirstTextReminderId': FirstTextReminderId,
'SecondTextReminderId': SecondTextReminderId,
'LocationUID': LocationUID,
'AgentReminderSentDate': JsonConverters.toJson(AgentReminderSentDate,'DateTime',context!),
'ContactId': ContactId,
'IsPrivate': IsPrivate,
'ProjectID': ProjectID,
'JobID': JobID,
'ProjectStartDate': JsonConverters.toJson(ProjectStartDate,'DateTime',context!),
'ProjectEndDate': JsonConverters.toJson(ProjectEndDate,'DateTime',context!),
'MaxCrewEndDate': JsonConverters.toJson(MaxCrewEndDate,'DateTime',context!),
'MaxEquipmentEndDate': JsonConverters.toJson(MaxEquipmentEndDate,'DateTime',context!),
'CheckInId': CheckInId,
'AllDay': AllDay,
'JobName': JobName,
'JobStatusName': JobStatusName,
'JobStatusId': JobStatusId,
'ProjectName': ProjectName,
'ResourceId': ResourceId,
'ResourceName': ResourceName,
'Original_EventStart': JsonConverters.toJson(Original_EventStart,'DateTime',context!),
'Original_Recurrence': Original_Recurrence,
'Original_RecurrenceFrequency': Original_RecurrenceFrequency,
'Original_RecurrenceBy': Original_RecurrenceBy,
'Original_RecurrenceByValue': Original_RecurrenceByValue,
'Original_RecurrenceUntil': JsonConverters.toJson(Original_RecurrenceUntil,'DateTime',context!),
'Checksum': Checksum
};
getTypeName() => "CalendarEvent";
TypeContext? context = _ctx;
}
class Job implements IConvertible
{
int? JobID;
String? JobName;
int? JobTypeID;
DateTime? ExpectedStartDate;
DateTime? ActualStartDate;
DateTime? ExpectedCompletionDate;
DateTime? ActualEndDate;
bool? Active;
String? CreatedByUID;
int? ProjectID;
int? StatusId;
bool? AdvancedScheduling;
bool? ShowTimes;
List<CalendarEvent>? Schedule = [];
Job({this.JobID,this.JobName,this.JobTypeID,this.ExpectedStartDate,this.ActualStartDate,this.ExpectedCompletionDate,this.ActualEndDate,this.Active,this.CreatedByUID,this.ProjectID,this.StatusId,this.AdvancedScheduling,this.ShowTimes,this.Schedule});
Job.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
JobID = json['JobID'];
JobName = json['JobName'];
JobTypeID = json['JobTypeID'];
ExpectedStartDate = JsonConverters.fromJson(json['ExpectedStartDate'],'DateTime',context!);
ActualStartDate = JsonConverters.fromJson(json['ActualStartDate'],'DateTime',context!);
ExpectedCompletionDate = JsonConverters.fromJson(json['ExpectedCompletionDate'],'DateTime',context!);
ActualEndDate = JsonConverters.fromJson(json['ActualEndDate'],'DateTime',context!);
Active = json['Active'];
CreatedByUID = json['CreatedByUID'];
ProjectID = json['ProjectID'];
StatusId = json['StatusId'];
AdvancedScheduling = json['AdvancedScheduling'];
ShowTimes = json['ShowTimes'];
Schedule = JsonConverters.fromJson(json['Schedule'],'List<CalendarEvent>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'JobID': JobID,
'JobName': JobName,
'JobTypeID': JobTypeID,
'ExpectedStartDate': JsonConverters.toJson(ExpectedStartDate,'DateTime',context!),
'ActualStartDate': JsonConverters.toJson(ActualStartDate,'DateTime',context!),
'ExpectedCompletionDate': JsonConverters.toJson(ExpectedCompletionDate,'DateTime',context!),
'ActualEndDate': JsonConverters.toJson(ActualEndDate,'DateTime',context!),
'Active': Active,
'CreatedByUID': CreatedByUID,
'ProjectID': ProjectID,
'StatusId': StatusId,
'AdvancedScheduling': AdvancedScheduling,
'ShowTimes': ShowTimes,
'Schedule': JsonConverters.toJson(Schedule,'List<CalendarEvent>',context!)
};
getTypeName() => "Job";
TypeContext? context = _ctx;
}
class MaterialProjectJobsResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
List<Job>? Jobs = [];
MaterialProjectJobsResponse({this.ResponseStatus,this.Jobs});
MaterialProjectJobsResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
Jobs = JsonConverters.fromJson(json['Jobs'],'List<Job>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'Jobs': JsonConverters.toJson(Jobs,'List<Job>',context!)
};
getTypeName() => "MaterialProjectJobsResponse";
TypeContext? context = _ctx;
}
class MaterialProjectJobsRequest implements IConvertible
{
int? ProjectID;
int? MaterialID;
MaterialProjectJobsRequest({this.ProjectID,this.MaterialID});
MaterialProjectJobsRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ProjectID = json['ProjectID'];
MaterialID = json['MaterialID'];
return this;
}
Map<String, dynamic> toJson() => {
'ProjectID': ProjectID,
'MaterialID': MaterialID
};
getTypeName() => "MaterialProjectJobsRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'CalendarEvent': TypeInfo(TypeOf.Class, create:() => CalendarEvent()),
'Job': TypeInfo(TypeOf.Class, create:() => Job()),
'List<CalendarEvent>': TypeInfo(TypeOf.Class, create:() => <CalendarEvent>[]),
'MaterialProjectJobsResponse': TypeInfo(TypeOf.Class, create:() => MaterialProjectJobsResponse()),
'List<Job>': TypeInfo(TypeOf.Class, create:() => <Job>[]),
'MaterialProjectJobsRequest': TypeInfo(TypeOf.Class, create:() => MaterialProjectJobsRequest()),
});
Dart MaterialProjectJobsRequest 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
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/Project/{ProjectID}/material/{MaterialID}/Jobs HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Jobs":[{"JobID":0,"JobName":"String","JobTypeID":0,"ExpectedStartDate":"0001-01-01T00:00:00.0000000","ActualStartDate":"0001-01-01T00:00:00.0000000","ExpectedCompletionDate":"0001-01-01T00:00:00.0000000","ActualEndDate":"0001-01-01T00:00:00.0000000","Active":false,"CreatedByUID":"00000000000000000000000000000000","ProjectID":0,"StatusId":0,"AdvancedScheduling":false,"ShowTimes":false,"Schedule":[{"CalendarEventId":0,"CalendarId":"00000000000000000000000000000000","EventStart":"0001-01-01T00:00:00.0000000","EventEnd":"0001-01-01T00:00:00.0000000","Location":"String","Summary":"String","Description":"String","EventTypeId":0,"Recurrence":false,"RecurrenceFrequency":"String","RecurrenceBy":"String","RecurrenceByValue":"String","RecurrenceUntil":"0001-01-01T00:00:00.0000000","CreatedBy":"String","CreatedByName":"String","DateCreated":"0001-01-01T00:00:00.0000000","ModifiedBy":"String","DateModified":"0001-01-01T00:00:00.0000000","Deleted":false,"TimeZone":"String","Offset":0,"TextReminderSentDate":"0001-01-01T00:00:00.0000000","Confirmed":false,"ConfirmationTextId":"String","FirstTextReminderId":"String","SecondTextReminderId":"String","LocationUID":"00000000000000000000000000000000","AgentReminderSentDate":"0001-01-01T00:00:00.0000000","ContactId":0,"IsPrivate":false,"ProjectID":0,"JobID":0,"ProjectStartDate":"0001-01-01T00:00:00.0000000","ProjectEndDate":"0001-01-01T00:00:00.0000000","MaxCrewEndDate":"0001-01-01T00:00:00.0000000","MaxEquipmentEndDate":"0001-01-01T00:00:00.0000000","CheckInId":"00000000000000000000000000000000","AllDay":false,"JobName":"String","JobStatusName":"String","JobStatusId":0,"ProjectName":"String","ResourceId":0,"ResourceName":"String","Original_EventStart":"0001-01-01T00:00:00.0000000","Original_Recurrence":false,"Original_RecurrenceFrequency":"String","Original_RecurrenceBy":"String","Original_RecurrenceByValue":"String","Original_RecurrenceUntil":"0001-01-01T00:00:00.0000000","Checksum":"String"}]}]}