| GET | /workflow/{WorkflowId}/advanced-info |
|---|
export class Provider
{
public id: number;
public name: string;
public taxCode?: string;
public address?: string;
public email?: string;
public phone?: string;
public additionalInfo?: string;
public providerType: number;
public createdAt?: string;
public createdBy?: number;
public constructor(init?: Partial<Provider>) { (Object as any).assign(this, init); }
}
export class Contract
{
public id: number;
// @Required()
public workflowId: number;
// @StringLength(100)
public contractNo?: string;
// @StringLength(100)
public contractDate?: string;
public serviceName?: string;
// @StringLength(100)
public contractType?: string;
public objective?: string;
public location?: string;
public createdAt: string;
// @Required()
public createdBy: number;
public constructor(init?: Partial<Contract>) { (Object as any).assign(this, init); }
}
export class Estimate
{
public id: number;
// @Required()
public workflowId: number;
public valueBeforeTax?: number;
public taxAmount?: number;
public totalAmount?: number;
public createdAt: string;
// @Required()
public createdBy: number;
public constructor(init?: Partial<Estimate>) { (Object as any).assign(this, init); }
}
export class PurchaseHistory
{
public id: number;
// @Required()
public workflowId: number;
public sequenceNo?: number;
public detail?: string;
// @StringLength(150)
public unit?: string;
public quantity?: number;
public unitPrice?: number;
public amount?: number;
public note?: string;
public createdAt: string;
// @Required()
public createdBy: number;
public constructor(init?: Partial<PurchaseHistory>) { (Object as any).assign(this, init); }
}
export class AdvancedWorkflowInfoData
{
public provider?: Provider;
public contract?: Contract;
public estimate?: Estimate;
public purchaseHistory?: PurchaseHistory[];
public constructor(init?: Partial<AdvancedWorkflowInfoData>) { (Object as any).assign(this, init); }
}
export class AdvancedWorkflowInfoResponse
{
public code: number;
public message: string;
public data: AdvancedWorkflowInfoData;
public constructor(init?: Partial<AdvancedWorkflowInfoResponse>) { (Object as any).assign(this, init); }
}
export class GetAdvancedWorkflowInfoRequest
{
public workflowId: number;
public constructor(init?: Partial<GetAdvancedWorkflowInfoRequest>) { (Object as any).assign(this, init); }
}
TypeScript GetAdvancedWorkflowInfoRequest 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 /workflow/{WorkflowId}/advanced-info HTTP/1.1
Host: etc-api.vsmlab.vn
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
code: 0,
message: String,
data:
{
provider:
{
id: 0,
name: String,
taxCode: String,
address: String,
email: String,
phone: String,
additionalInfo: String,
providerType: 0,
createdAt: "0001-01-01T00:00:00.0000000+07:06",
createdBy: 0
},
contract:
{
id: 0,
workflowId: 0,
contractNo: String,
contractDate: String,
serviceName: String,
contractType: String,
objective: String,
location: String,
createdBy: 0
},
estimate:
{
id: 0,
workflowId: 0,
valueBeforeTax: 0,
taxAmount: 0,
totalAmount: 0,
createdBy: 0
},
purchaseHistory:
[
{
id: 0,
workflowId: 0,
sequenceNo: 0,
detail: String,
unit: String,
quantity: 0,
unitPrice: 0,
amount: 0,
note: String,
createdBy: 0
}
]
}
}