tvpl.api

<back to all web services

GetAdvancedWorkflowInfoRequest

Requires Authentication
The following routes are available for this service:
GET/workflow/{WorkflowId}/advanced-info
namespace tvpl.api.ServiceModel

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type Provider() = 
        member val Id:Int32 = new Int32() with get,set
        member val Name:String = null with get,set
        member val TaxCode:String = null with get,set
        member val Address:String = null with get,set
        member val Email:String = null with get,set
        member val Phone:String = null with get,set
        member val AdditionalInfo:String = null with get,set
        member val ProviderType:Int32 = new Int32() with get,set
        member val CreatedAt:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val CreatedBy:Nullable<Int32> = new Nullable<Int32>() with get,set

    [<AllowNullLiteral>]
    type Contract() = 
        member val Id:Int32 = new Int32() with get,set
        [<Required>]
        member val WorkflowId:Int32 = new Int32() with get,set

        [<StringLength(100)>]
        member val ContractNo:String = null with get,set

        [<StringLength(100)>]
        member val ContractDate:String = null with get,set

        member val ServiceName:String = null with get,set
        [<StringLength(100)>]
        member val ContractType:String = null with get,set

        member val Objective:String = null with get,set
        member val Location:String = null with get,set
        member val CreatedAt:DateTime = new DateTime() with get,set
        [<Required>]
        member val CreatedBy:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type Estimate() = 
        member val Id:Int32 = new Int32() with get,set
        [<Required>]
        member val WorkflowId:Int32 = new Int32() with get,set

        member val ValueBeforeTax:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val TaxAmount:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val TotalAmount:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val CreatedAt:DateTime = new DateTime() with get,set
        [<Required>]
        member val CreatedBy:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type PurchaseHistory() = 
        member val Id:Int32 = new Int32() with get,set
        [<Required>]
        member val WorkflowId:Int32 = new Int32() with get,set

        member val SequenceNo:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Detail:String = null with get,set
        [<StringLength(150)>]
        member val Unit:String = null with get,set

        member val Quantity:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val UnitPrice:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Amount:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Note:String = null with get,set
        member val CreatedAt:DateTime = new DateTime() with get,set
        [<Required>]
        member val CreatedBy:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type AdvancedWorkflowInfoData() = 
        member val Provider:Provider = null with get,set
        member val Contract:Contract = null with get,set
        member val Estimate:Estimate = null with get,set
        member val PurchaseHistory:ResizeArray<PurchaseHistory> = new ResizeArray<PurchaseHistory>() with get,set

    [<AllowNullLiteral>]
    type AdvancedWorkflowInfoResponse() = 
        member val Code:Int32 = new Int32() with get,set
        member val Message:String = null with get,set
        member val Data:AdvancedWorkflowInfoData = null with get,set

    [<AllowNullLiteral>]
    type GetAdvancedWorkflowInfoRequest() = 
        member val WorkflowId:Int32 = new Int32() with get,set

F# GetAdvancedWorkflowInfoRequest 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

HTTP + JSON

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: application/json
HTTP/1.1 200 OK
Content-Type: application/json
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","createdAt":"0001-01-01T00:00:00.0000000+07:06","createdBy":0},"estimate":{"id":0,"workflowId":0,"valueBeforeTax":0,"taxAmount":0,"totalAmount":0,"createdAt":"0001-01-01T00:00:00.0000000+07:06","createdBy":0},"purchaseHistory":[{"id":0,"workflowId":0,"sequenceNo":0,"detail":"String","unit":"String","quantity":0,"unitPrice":0,"amount":0,"note":"String","createdAt":"0001-01-01T00:00:00.0000000+07:06","createdBy":0}]}}