| GET,OPTIONS | /v1/pm/resources |
|---|
"use strict";
export class PmResCommitment {
/** @param {{ProjectName?:string,JobName?:string,StartDate?:string,EndDate?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ProjectName;
/** @type {string} */
JobName;
/** @type {string} */
StartDate;
/** @type {string} */
EndDate;
}
export class PmResEquipment {
/** @param {{EquipmentID?:number,Name?:string,EquipmentType?:string,SerialNumber?:string,JobCount?:number,Overbooked?:boolean,MaintenanceState?:string,Commitments?:PmResCommitment[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
EquipmentID;
/** @type {string} */
Name;
/** @type {string} */
EquipmentType;
/** @type {string} */
SerialNumber;
/** @type {number} */
JobCount;
/** @type {boolean} */
Overbooked;
/** @type {string} */
MaintenanceState;
/** @type {PmResCommitment[]} */
Commitments = [];
}
export class PmResMaterial {
/** @param {{MaterialID?:number,Name?:string,MaterialType?:string,OnHand?:number,NeededByJobs?:number,QtyNeeded?:number,Shortfall?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
MaterialID;
/** @type {string} */
Name;
/** @type {string} */
MaterialType;
/** @type {number} */
OnHand;
/** @type {number} */
NeededByJobs;
/** @type {number} */
QtyNeeded;
/** @type {boolean} */
Shortfall;
}
export class PmResourcesResponse {
/** @param {{FromDate?:string,ToDate?:string,OverbookedCount?:number,CommittedCount?:number,ShortfallCount?:number,Equipment?:PmResEquipment[],Materials?:PmResMaterial[],ResponseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
FromDate;
/** @type {string} */
ToDate;
/** @type {number} */
OverbookedCount;
/** @type {number} */
CommittedCount;
/** @type {number} */
ShortfallCount;
/** @type {PmResEquipment[]} */
Equipment = [];
/** @type {PmResMaterial[]} */
Materials = [];
/** @type {ResponseStatus} */
ResponseStatus;
}
export class PmResourcesRequest {
/** @param {{Days?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Days;
}
JavaScript PmResourcesRequest 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/pm/resources HTTP/1.1 Host: api.dev.dynamics.trendsic.com Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
FromDate: String,
ToDate: String,
OverbookedCount: 0,
CommittedCount: 0,
ShortfallCount: 0,
Equipment:
[
{
EquipmentID: 0,
Name: String,
EquipmentType: String,
SerialNumber: String,
JobCount: 0,
Overbooked: False,
MaintenanceState: String,
Commitments:
[
{
ProjectName: String,
JobName: String,
StartDate: String,
EndDate: String
}
]
}
],
Materials:
[
{
MaterialID: 0,
Name: String,
MaterialType: String,
OnHand: 0,
NeededByJobs: 0,
QtyNeeded: 0,
Shortfall: False
}
],
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}