| PATCH,PUT,OPTIONS | /v1/projects/{ProjectID}/certified-payroll/{Week} |
|---|
export class CertifiedPayrollLine
{
public CertifiedPayrollLineID: number;
public CertifiedPayrollID: number;
public WorkerName: string;
public ContactID?: number;
public Classification: string;
public HoursST: number;
public HoursOT: number;
public BaseRate: number;
public FringeRate: number;
public FringeCashRate: number;
public FringePlanRate: number;
public GrossPay: number;
public Flagged: boolean;
public RestitutionAmount: number;
public RestitutionNote: string;
public RequiredBase: number;
public RequiredFringe: number;
public SortOrder: number;
public constructor(init?: Partial<CertifiedPayrollLine>) { (Object as any).assign(this, init); }
}
export class CertifiedPayroll
{
public CertifiedPayrollID: number;
public CertifiedPayrollUID: string;
public ProjectID: number;
public PayrollNumber: number;
public WeekEnding?: string;
public Status: string;
public DbeParticipationPct: number;
public DbeGoalPct: number;
public OjtApprenticeHours: number;
public OjtApprenticeGoalHours: number;
public WorkerCount: number;
public TotalHoursST: number;
public TotalHoursOT: number;
public TotalGrossPay: number;
public FlaggedCount: number;
public SubmittedBy: string;
public SubmittedAt?: string;
public CreatedBy: string;
public CreatedAt?: string;
public UpdatedAt?: string;
public Lines: CertifiedPayrollLine[] = [];
public DeterminationNo: string;
public DeterminationType: string;
public constructor(init?: Partial<CertifiedPayroll>) { (Object as any).assign(this, init); }
}
export class CertifiedPayrollResponse
{
public ResponseStatus: ResponseStatus;
public Payroll: CertifiedPayroll;
public constructor(init?: Partial<CertifiedPayrollResponse>) { (Object as any).assign(this, init); }
}
export class CertifiedPayrollUpdateRequest
{
public ProjectID: number;
public Week: string;
public DbeParticipationPct?: number;
public DbeGoalPct?: number;
public OjtApprenticeHours?: number;
public OjtApprenticeGoalHours?: number;
public Lines: CertifiedPayrollLine[] = [];
public SeedFromTime: boolean;
public constructor(init?: Partial<CertifiedPayrollUpdateRequest>) { (Object as any).assign(this, init); }
}
TypeScript CertifiedPayrollUpdateRequest 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.
PUT /v1/projects/{ProjectID}/certified-payroll/{Week} HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ProjectID: 0,
Week: String,
DbeParticipationPct: 0,
DbeGoalPct: 0,
OjtApprenticeHours: 0,
OjtApprenticeGoalHours: 0,
Lines:
[
{
CertifiedPayrollLineID: 0,
CertifiedPayrollID: 0,
WorkerName: String,
ContactID: 0,
Classification: String,
HoursST: 0,
HoursOT: 0,
BaseRate: 0,
FringeRate: 0,
FringeCashRate: 0,
FringePlanRate: 0,
GrossPay: 0,
Flagged: False,
RestitutionAmount: 0,
RestitutionNote: String,
RequiredBase: 0,
RequiredFringe: 0,
SortOrder: 0
}
],
SeedFromTime: False
}
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
}
},
Payroll:
{
CertifiedPayrollID: 0,
CertifiedPayrollUID: 00000000000000000000000000000000,
ProjectID: 0,
PayrollNumber: 0,
WeekEnding: 0001-01-01,
Status: String,
DbeParticipationPct: 0,
DbeGoalPct: 0,
OjtApprenticeHours: 0,
OjtApprenticeGoalHours: 0,
WorkerCount: 0,
TotalHoursST: 0,
TotalHoursOT: 0,
TotalGrossPay: 0,
FlaggedCount: 0,
SubmittedBy: String,
SubmittedAt: 0001-01-01,
CreatedBy: String,
CreatedAt: 0001-01-01,
UpdatedAt: 0001-01-01,
Lines:
[
{
CertifiedPayrollLineID: 0,
CertifiedPayrollID: 0,
WorkerName: String,
ContactID: 0,
Classification: String,
HoursST: 0,
HoursOT: 0,
BaseRate: 0,
FringeRate: 0,
FringeCashRate: 0,
FringePlanRate: 0,
GrossPay: 0,
Flagged: False,
RestitutionAmount: 0,
RestitutionNote: String,
RequiredBase: 0,
RequiredFringe: 0,
SortOrder: 0
}
],
DeterminationNo: String,
DeterminationType: String
}
}