| POST | /v1/schedule |
|---|
import 'package:servicestack/servicestack.dart';
class WorkerScheduleItem implements IConvertible
{
int? WorkerScheduleItemID;
int? JobID;
int? ProjectID;
int? ContactID;
DateTime? ScheduledDate;
int? SortOrder;
int? SourceCrewID;
String? Status;
DateTime? StartedAt;
DateTime? CompletedAt;
String? WorkerNotes;
String? JobName;
String? ProjectName;
String? FirstName;
String? LastName;
String? WorkerName;
String? SourceCrewName;
int? ProjectLocationID;
String? ProjectLocationName;
String? LocationZip;
String? LocationCity;
double? LocationLatitude;
double? LocationLongitude;
String? JobStatusName;
String? BranchId;
String? BranchName;
String? WorkerHomeBranchId;
String? WorkerHomeBranchName;
WorkerScheduleItem({this.WorkerScheduleItemID,this.JobID,this.ProjectID,this.ContactID,this.ScheduledDate,this.SortOrder,this.SourceCrewID,this.Status,this.StartedAt,this.CompletedAt,this.WorkerNotes,this.JobName,this.ProjectName,this.FirstName,this.LastName,this.WorkerName,this.SourceCrewName,this.ProjectLocationID,this.ProjectLocationName,this.LocationZip,this.LocationCity,this.LocationLatitude,this.LocationLongitude,this.JobStatusName,this.BranchId,this.BranchName,this.WorkerHomeBranchId,this.WorkerHomeBranchName});
WorkerScheduleItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
WorkerScheduleItemID = json['WorkerScheduleItemID'];
JobID = json['JobID'];
ProjectID = json['ProjectID'];
ContactID = json['ContactID'];
ScheduledDate = JsonConverters.fromJson(json['ScheduledDate'],'DateTime',context!);
SortOrder = json['SortOrder'];
SourceCrewID = json['SourceCrewID'];
Status = json['Status'];
StartedAt = JsonConverters.fromJson(json['StartedAt'],'DateTime',context!);
CompletedAt = JsonConverters.fromJson(json['CompletedAt'],'DateTime',context!);
WorkerNotes = json['WorkerNotes'];
JobName = json['JobName'];
ProjectName = json['ProjectName'];
FirstName = json['FirstName'];
LastName = json['LastName'];
WorkerName = json['WorkerName'];
SourceCrewName = json['SourceCrewName'];
ProjectLocationID = json['ProjectLocationID'];
ProjectLocationName = json['ProjectLocationName'];
LocationZip = json['LocationZip'];
LocationCity = json['LocationCity'];
LocationLatitude = JsonConverters.toDouble(json['LocationLatitude']);
LocationLongitude = JsonConverters.toDouble(json['LocationLongitude']);
JobStatusName = json['JobStatusName'];
BranchId = json['BranchId'];
BranchName = json['BranchName'];
WorkerHomeBranchId = json['WorkerHomeBranchId'];
WorkerHomeBranchName = json['WorkerHomeBranchName'];
return this;
}
Map<String, dynamic> toJson() => {
'WorkerScheduleItemID': WorkerScheduleItemID,
'JobID': JobID,
'ProjectID': ProjectID,
'ContactID': ContactID,
'ScheduledDate': JsonConverters.toJson(ScheduledDate,'DateTime',context!),
'SortOrder': SortOrder,
'SourceCrewID': SourceCrewID,
'Status': Status,
'StartedAt': JsonConverters.toJson(StartedAt,'DateTime',context!),
'CompletedAt': JsonConverters.toJson(CompletedAt,'DateTime',context!),
'WorkerNotes': WorkerNotes,
'JobName': JobName,
'ProjectName': ProjectName,
'FirstName': FirstName,
'LastName': LastName,
'WorkerName': WorkerName,
'SourceCrewName': SourceCrewName,
'ProjectLocationID': ProjectLocationID,
'ProjectLocationName': ProjectLocationName,
'LocationZip': LocationZip,
'LocationCity': LocationCity,
'LocationLatitude': LocationLatitude,
'LocationLongitude': LocationLongitude,
'JobStatusName': JobStatusName,
'BranchId': BranchId,
'BranchName': BranchName,
'WorkerHomeBranchId': WorkerHomeBranchId,
'WorkerHomeBranchName': WorkerHomeBranchName
};
getTypeName() => "WorkerScheduleItem";
TypeContext? context = _ctx;
}
class SchedulableJob implements IConvertible
{
int? JobID;
String? JobName;
int? ProjectID;
String? ProjectName;
int? StatusID;
String? StatusName;
int? ProjectLocationID;
String? ProjectLocationName;
String? LocationZip;
String? LocationCity;
double? LocationLatitude;
double? LocationLongitude;
DateTime? ExpectedStartDate;
DateTime? ExpectedCompletionDate;
bool? IsRecurring;
List<String>? OccurrenceDates = [];
SchedulableJob({this.JobID,this.JobName,this.ProjectID,this.ProjectName,this.StatusID,this.StatusName,this.ProjectLocationID,this.ProjectLocationName,this.LocationZip,this.LocationCity,this.LocationLatitude,this.LocationLongitude,this.ExpectedStartDate,this.ExpectedCompletionDate,this.IsRecurring,this.OccurrenceDates});
SchedulableJob.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
JobID = json['JobID'];
JobName = json['JobName'];
ProjectID = json['ProjectID'];
ProjectName = json['ProjectName'];
StatusID = json['StatusID'];
StatusName = json['StatusName'];
ProjectLocationID = json['ProjectLocationID'];
ProjectLocationName = json['ProjectLocationName'];
LocationZip = json['LocationZip'];
LocationCity = json['LocationCity'];
LocationLatitude = JsonConverters.toDouble(json['LocationLatitude']);
LocationLongitude = JsonConverters.toDouble(json['LocationLongitude']);
ExpectedStartDate = JsonConverters.fromJson(json['ExpectedStartDate'],'DateTime',context!);
ExpectedCompletionDate = JsonConverters.fromJson(json['ExpectedCompletionDate'],'DateTime',context!);
IsRecurring = json['IsRecurring'];
OccurrenceDates = JsonConverters.fromJson(json['OccurrenceDates'],'List<String>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'JobID': JobID,
'JobName': JobName,
'ProjectID': ProjectID,
'ProjectName': ProjectName,
'StatusID': StatusID,
'StatusName': StatusName,
'ProjectLocationID': ProjectLocationID,
'ProjectLocationName': ProjectLocationName,
'LocationZip': LocationZip,
'LocationCity': LocationCity,
'LocationLatitude': LocationLatitude,
'LocationLongitude': LocationLongitude,
'ExpectedStartDate': JsonConverters.toJson(ExpectedStartDate,'DateTime',context!),
'ExpectedCompletionDate': JsonConverters.toJson(ExpectedCompletionDate,'DateTime',context!),
'IsRecurring': IsRecurring,
'OccurrenceDates': JsonConverters.toJson(OccurrenceDates,'List<String>',context!)
};
getTypeName() => "SchedulableJob";
TypeContext? context = _ctx;
}
class ScheduleWorker implements IConvertible
{
int? ContactId;
String? FirstName;
String? LastName;
String? Name;
String? Initials;
double? Rate;
String? ImageUrl;
String? BranchId;
String? BranchName;
ScheduleWorker({this.ContactId,this.FirstName,this.LastName,this.Name,this.Initials,this.Rate,this.ImageUrl,this.BranchId,this.BranchName});
ScheduleWorker.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ContactId = json['ContactId'];
FirstName = json['FirstName'];
LastName = json['LastName'];
Name = json['Name'];
Initials = json['Initials'];
Rate = JsonConverters.toDouble(json['Rate']);
ImageUrl = json['ImageUrl'];
BranchId = json['BranchId'];
BranchName = json['BranchName'];
return this;
}
Map<String, dynamic> toJson() => {
'ContactId': ContactId,
'FirstName': FirstName,
'LastName': LastName,
'Name': Name,
'Initials': Initials,
'Rate': Rate,
'ImageUrl': ImageUrl,
'BranchId': BranchId,
'BranchName': BranchName
};
getTypeName() => "ScheduleWorker";
TypeContext? context = _ctx;
}
class Crew implements IConvertible
{
int? CrewID;
String? CrewName;
String? CrewNumber;
int? CrewManagerContactID;
String? CrewManagerContactName;
String? CrewColor;
DateTime? RecordCreatedDate;
bool? Active;
String? CreatedByUID;
int? ProjectID;
int? CrewMemberCount;
int? ProjectCrewID;
String? ProjectName;
String? BranchId;
String? BranchName;
Crew({this.CrewID,this.CrewName,this.CrewNumber,this.CrewManagerContactID,this.CrewManagerContactName,this.CrewColor,this.RecordCreatedDate,this.Active,this.CreatedByUID,this.ProjectID,this.CrewMemberCount,this.ProjectCrewID,this.ProjectName,this.BranchId,this.BranchName});
Crew.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
CrewID = json['CrewID'];
CrewName = json['CrewName'];
CrewNumber = json['CrewNumber'];
CrewManagerContactID = json['CrewManagerContactID'];
CrewManagerContactName = json['CrewManagerContactName'];
CrewColor = json['CrewColor'];
RecordCreatedDate = JsonConverters.fromJson(json['RecordCreatedDate'],'DateTime',context!);
Active = json['Active'];
CreatedByUID = json['CreatedByUID'];
ProjectID = json['ProjectID'];
CrewMemberCount = json['CrewMemberCount'];
ProjectCrewID = json['ProjectCrewID'];
ProjectName = json['ProjectName'];
BranchId = json['BranchId'];
BranchName = json['BranchName'];
return this;
}
Map<String, dynamic> toJson() => {
'CrewID': CrewID,
'CrewName': CrewName,
'CrewNumber': CrewNumber,
'CrewManagerContactID': CrewManagerContactID,
'CrewManagerContactName': CrewManagerContactName,
'CrewColor': CrewColor,
'RecordCreatedDate': JsonConverters.toJson(RecordCreatedDate,'DateTime',context!),
'Active': Active,
'CreatedByUID': CreatedByUID,
'ProjectID': ProjectID,
'CrewMemberCount': CrewMemberCount,
'ProjectCrewID': ProjectCrewID,
'ProjectName': ProjectName,
'BranchId': BranchId,
'BranchName': BranchName
};
getTypeName() => "Crew";
TypeContext? context = _ctx;
}
class ScheduleLastAssignment implements IConvertible
{
int? JobID;
List<int>? ContactIds = [];
int? SourceCrewID;
ScheduleLastAssignment({this.JobID,this.ContactIds,this.SourceCrewID});
ScheduleLastAssignment.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
JobID = json['JobID'];
ContactIds = JsonConverters.fromJson(json['ContactIds'],'List<int>',context!);
SourceCrewID = json['SourceCrewID'];
return this;
}
Map<String, dynamic> toJson() => {
'JobID': JobID,
'ContactIds': JsonConverters.toJson(ContactIds,'List<int>',context!),
'SourceCrewID': SourceCrewID
};
getTypeName() => "ScheduleLastAssignment";
TypeContext? context = _ctx;
}
class ScheduleAutoFillResult implements IConvertible
{
int? JobsFilled;
int? JobsSkipped;
int? VisitsScheduled;
ScheduleAutoFillResult({this.JobsFilled,this.JobsSkipped,this.VisitsScheduled});
ScheduleAutoFillResult.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
JobsFilled = json['JobsFilled'];
JobsSkipped = json['JobsSkipped'];
VisitsScheduled = json['VisitsScheduled'];
return this;
}
Map<String, dynamic> toJson() => {
'JobsFilled': JobsFilled,
'JobsSkipped': JobsSkipped,
'VisitsScheduled': VisitsScheduled
};
getTypeName() => "ScheduleAutoFillResult";
TypeContext? context = _ctx;
}
class WorkerScheduleResponse implements IConvertible
{
List<WorkerScheduleItem>? Items = [];
List<SchedulableJob>? SchedulableJobs = [];
List<ScheduleWorker>? Workers = [];
List<Crew>? Crews = [];
List<ScheduleWorker>? BudgetedCrew = [];
ScheduleLastAssignment? LastAssignment;
ScheduleAutoFillResult? AutoFill;
int? DatesScheduled;
int? WorkersScheduled;
int? ItemsRemoved;
ResponseStatus? ResponseStatus;
WorkerScheduleResponse({this.Items,this.SchedulableJobs,this.Workers,this.Crews,this.BudgetedCrew,this.LastAssignment,this.AutoFill,this.DatesScheduled,this.WorkersScheduled,this.ItemsRemoved,this.ResponseStatus});
WorkerScheduleResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Items = JsonConverters.fromJson(json['Items'],'List<WorkerScheduleItem>',context!);
SchedulableJobs = JsonConverters.fromJson(json['SchedulableJobs'],'List<SchedulableJob>',context!);
Workers = JsonConverters.fromJson(json['Workers'],'List<ScheduleWorker>',context!);
Crews = JsonConverters.fromJson(json['Crews'],'List<Crew>',context!);
BudgetedCrew = JsonConverters.fromJson(json['BudgetedCrew'],'List<ScheduleWorker>',context!);
LastAssignment = JsonConverters.fromJson(json['LastAssignment'],'ScheduleLastAssignment',context!);
AutoFill = JsonConverters.fromJson(json['AutoFill'],'ScheduleAutoFillResult',context!);
DatesScheduled = json['DatesScheduled'];
WorkersScheduled = json['WorkersScheduled'];
ItemsRemoved = json['ItemsRemoved'];
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Items': JsonConverters.toJson(Items,'List<WorkerScheduleItem>',context!),
'SchedulableJobs': JsonConverters.toJson(SchedulableJobs,'List<SchedulableJob>',context!),
'Workers': JsonConverters.toJson(Workers,'List<ScheduleWorker>',context!),
'Crews': JsonConverters.toJson(Crews,'List<Crew>',context!),
'BudgetedCrew': JsonConverters.toJson(BudgetedCrew,'List<ScheduleWorker>',context!),
'LastAssignment': JsonConverters.toJson(LastAssignment,'ScheduleLastAssignment',context!),
'AutoFill': JsonConverters.toJson(AutoFill,'ScheduleAutoFillResult',context!),
'DatesScheduled': DatesScheduled,
'WorkersScheduled': WorkersScheduled,
'ItemsRemoved': ItemsRemoved,
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
};
getTypeName() => "WorkerScheduleResponse";
TypeContext? context = _ctx;
}
class ScheduleCreateRequest implements IConvertible
{
int? JobID;
int? ProjectID;
DateTime? ScheduledDate;
DateTime? SeriesEndDate;
List<int>? ContactIds = [];
int? CrewID;
ScheduleCreateRequest({this.JobID,this.ProjectID,this.ScheduledDate,this.SeriesEndDate,this.ContactIds,this.CrewID});
ScheduleCreateRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
JobID = json['JobID'];
ProjectID = json['ProjectID'];
ScheduledDate = JsonConverters.fromJson(json['ScheduledDate'],'DateTime',context!);
SeriesEndDate = JsonConverters.fromJson(json['SeriesEndDate'],'DateTime',context!);
ContactIds = JsonConverters.fromJson(json['ContactIds'],'List<int>',context!);
CrewID = json['CrewID'];
return this;
}
Map<String, dynamic> toJson() => {
'JobID': JobID,
'ProjectID': ProjectID,
'ScheduledDate': JsonConverters.toJson(ScheduledDate,'DateTime',context!),
'SeriesEndDate': JsonConverters.toJson(SeriesEndDate,'DateTime',context!),
'ContactIds': JsonConverters.toJson(ContactIds,'List<int>',context!),
'CrewID': CrewID
};
getTypeName() => "ScheduleCreateRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'WorkerScheduleItem': TypeInfo(TypeOf.Class, create:() => WorkerScheduleItem()),
'SchedulableJob': TypeInfo(TypeOf.Class, create:() => SchedulableJob()),
'ScheduleWorker': TypeInfo(TypeOf.Class, create:() => ScheduleWorker()),
'Crew': TypeInfo(TypeOf.Class, create:() => Crew()),
'ScheduleLastAssignment': TypeInfo(TypeOf.Class, create:() => ScheduleLastAssignment()),
'ScheduleAutoFillResult': TypeInfo(TypeOf.Class, create:() => ScheduleAutoFillResult()),
'WorkerScheduleResponse': TypeInfo(TypeOf.Class, create:() => WorkerScheduleResponse()),
'List<WorkerScheduleItem>': TypeInfo(TypeOf.Class, create:() => <WorkerScheduleItem>[]),
'List<SchedulableJob>': TypeInfo(TypeOf.Class, create:() => <SchedulableJob>[]),
'List<ScheduleWorker>': TypeInfo(TypeOf.Class, create:() => <ScheduleWorker>[]),
'List<Crew>': TypeInfo(TypeOf.Class, create:() => <Crew>[]),
'ScheduleCreateRequest': TypeInfo(TypeOf.Class, create:() => ScheduleCreateRequest()),
});
Dart ScheduleCreateRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/schedule HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<ScheduleCreateRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<ContactIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:int>0</d2p1:int>
</ContactIds>
<CrewID>0</CrewID>
<JobID>0</JobID>
<ProjectID>0</ProjectID>
<ScheduledDate>0001-01-01T00:00:00</ScheduledDate>
<SeriesEndDate>0001-01-01T00:00:00</SeriesEndDate>
</ScheduleCreateRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<WorkerScheduleResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<AutoFill>
<JobsFilled>0</JobsFilled>
<JobsSkipped>0</JobsSkipped>
<VisitsScheduled>0</VisitsScheduled>
</AutoFill>
<BudgetedCrew>
<ScheduleWorker>
<BranchId>00000000-0000-0000-0000-000000000000</BranchId>
<BranchName>String</BranchName>
<ContactId>0</ContactId>
<FirstName>String</FirstName>
<ImageUrl>String</ImageUrl>
<Initials>String</Initials>
<LastName>String</LastName>
<Name>String</Name>
<Rate>0</Rate>
</ScheduleWorker>
</BudgetedCrew>
<Crews>
<Crew>
<Active>false</Active>
<BranchId>00000000-0000-0000-0000-000000000000</BranchId>
<BranchName>String</BranchName>
<CreatedByUID>00000000-0000-0000-0000-000000000000</CreatedByUID>
<CrewColor>String</CrewColor>
<CrewID>0</CrewID>
<CrewManagerContactID>0</CrewManagerContactID>
<CrewManagerContactName>String</CrewManagerContactName>
<CrewMemberCount>0</CrewMemberCount>
<CrewName>String</CrewName>
<CrewNumber>String</CrewNumber>
<ProjectCrewID>0</ProjectCrewID>
<ProjectID>0</ProjectID>
<ProjectName>String</ProjectName>
<RecordCreatedDate>0001-01-01T00:00:00</RecordCreatedDate>
</Crew>
</Crews>
<DatesScheduled>0</DatesScheduled>
<Items>
<WorkerScheduleItem>
<BranchId>00000000-0000-0000-0000-000000000000</BranchId>
<BranchName>String</BranchName>
<CompletedAt>0001-01-01T00:00:00</CompletedAt>
<ContactID>0</ContactID>
<FirstName>String</FirstName>
<JobID>0</JobID>
<JobName>String</JobName>
<JobStatusName>String</JobStatusName>
<LastName>String</LastName>
<LocationCity>String</LocationCity>
<LocationLatitude>0</LocationLatitude>
<LocationLongitude>0</LocationLongitude>
<LocationZip>String</LocationZip>
<ProjectID>0</ProjectID>
<ProjectLocationID>0</ProjectLocationID>
<ProjectLocationName>String</ProjectLocationName>
<ProjectName>String</ProjectName>
<ScheduledDate>0001-01-01T00:00:00</ScheduledDate>
<SortOrder>0</SortOrder>
<SourceCrewID>0</SourceCrewID>
<SourceCrewName>String</SourceCrewName>
<StartedAt>0001-01-01T00:00:00</StartedAt>
<Status>String</Status>
<WorkerHomeBranchId>00000000-0000-0000-0000-000000000000</WorkerHomeBranchId>
<WorkerHomeBranchName>String</WorkerHomeBranchName>
<WorkerName>String</WorkerName>
<WorkerNotes>String</WorkerNotes>
<WorkerScheduleItemID>0</WorkerScheduleItemID>
</WorkerScheduleItem>
</Items>
<ItemsRemoved>0</ItemsRemoved>
<LastAssignment>
<ContactIds xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:int>0</d3p1:int>
</ContactIds>
<JobID>0</JobID>
<SourceCrewID>0</SourceCrewID>
</LastAssignment>
<ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:Message>String</d2p1:Message>
<d2p1:StackTrace>String</d2p1:StackTrace>
<d2p1:Errors>
<d2p1:ResponseError>
<d2p1:ErrorCode>String</d2p1:ErrorCode>
<d2p1:FieldName>String</d2p1:FieldName>
<d2p1:Message>String</d2p1:Message>
<d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d5p1:KeyValueOfstringstring>
<d5p1:Key>String</d5p1:Key>
<d5p1:Value>String</d5p1:Value>
</d5p1:KeyValueOfstringstring>
</d2p1:Meta>
</d2p1:ResponseError>
</d2p1:Errors>
<d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d3p1:KeyValueOfstringstring>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value>String</d3p1:Value>
</d3p1:KeyValueOfstringstring>
</d2p1:Meta>
</ResponseStatus>
<SchedulableJobs>
<SchedulableJob>
<ExpectedCompletionDate>0001-01-01T00:00:00</ExpectedCompletionDate>
<ExpectedStartDate>0001-01-01T00:00:00</ExpectedStartDate>
<IsRecurring>false</IsRecurring>
<JobID>0</JobID>
<JobName>String</JobName>
<LocationCity>String</LocationCity>
<LocationLatitude>0</LocationLatitude>
<LocationLongitude>0</LocationLongitude>
<LocationZip>String</LocationZip>
<OccurrenceDates xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:string>String</d4p1:string>
</OccurrenceDates>
<ProjectID>0</ProjectID>
<ProjectLocationID>0</ProjectLocationID>
<ProjectLocationName>String</ProjectLocationName>
<ProjectName>String</ProjectName>
<StatusID>0</StatusID>
<StatusName>String</StatusName>
</SchedulableJob>
</SchedulableJobs>
<Workers>
<ScheduleWorker>
<BranchId>00000000-0000-0000-0000-000000000000</BranchId>
<BranchName>String</BranchName>
<ContactId>0</ContactId>
<FirstName>String</FirstName>
<ImageUrl>String</ImageUrl>
<Initials>String</Initials>
<LastName>String</LastName>
<Name>String</Name>
<Rate>0</Rate>
</ScheduleWorker>
</Workers>
<WorkersScheduled>0</WorkersScheduled>
</WorkerScheduleResponse>