tvpl.api

<back to all web services

CreateWorkflowStepRequest

Requires Authentication
The following routes are available for this service:
POST/WorkflowStep/update
namespace tvpl.api.ServiceModel

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

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

    [<AllowNullLiteral>]
    type WorkflowStep() = 
        member val Id:Int32 = new Int32() with get,set
        [<References(typeof<Document>)>]
        member val WorkflowId:Int32 = new Int32() with get,set

        member val StepOrder:Nullable<Int32> = new Nullable<Int32>() with get,set
        [<Required>]
        [<StringLength(255)>]
        member val StepName:String = null with get,set

        [<Required>]
        member val IsRequired:Boolean = new Boolean() with get,set

        member val SLALegalValue:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val SLALegalIsByDay:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val SLAInternalValue:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val SLAInternalIsByDay:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val RequireAttachment:Boolean = new Boolean() with get,set
        [<Required>]
        member val Description:String = null with get,set

        member val CreatedBy:Int32 = new Int32() with get,set
        [<Ignore>]
        member val DepartmentIds:ResizeArray<Int32> = new ResizeArray<Int32>() with get,set

        [<Ignore>]
        member val StepBasisDocumentIds:ResizeArray<Int32> = new ResizeArray<Int32>() with get,set

        [<Ignore>]
        member val StepAttachedIds:ResizeArray<Int32> = new ResizeArray<Int32>() with get,set

        [<Ignore>]
        member val MainAssigneeIds:ResizeArray<Int32> = new ResizeArray<Int32>() with get,set

    [<AllowNullLiteral>]
    type BasicUploadedFile() = 
        member val FileName:String = null with get,set
        member val Filekey:String = null with get,set
        member val FileUrl:String = null with get,set
        member val Checksum:String = null with get,set
        member val ETag:String = null with get,set
        member val FileSize:Int64 = new Int64() with get,set

    [<AllowNullLiteral>]
    type UploadedFiles() = 
        inherit BasicUploadedFile()
        member val Id:Nullable<Int64> = new Nullable<Int64>() with get,set
        member val UploadedFile:String = null with get,set
        member val SubDocumentId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val StepId:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Code:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type CreateWorkflowStepRequest() = 
        inherit WorkflowStep()
        member val StepAttachFiles:ResizeArray<UploadedFiles> = new ResizeArray<UploadedFiles>() with get,set

F# CreateWorkflowStepRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /WorkflowStep/update HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	stepAttachFiles: 
	[
		{
			id: 0,
			uploadedFile: String,
			subDocumentId: 0,
			stepId: 0,
			code: 0,
			fileName: String,
			filekey: String,
			fileUrl: String,
			checksum: String,
			eTag: String,
			fileSize: 0
		}
	],
	id: 0,
	workflowId: 0,
	stepOrder: 0,
	stepName: String,
	isRequired: False,
	slaLegalValue: 0,
	slaLegalIsByDay: False,
	slaInternalValue: 0,
	slaInternalIsByDay: False,
	requireAttachment: False,
	description: String,
	createdBy: 0,
	departmentIds: 
	[
		0
	],
	stepBasisDocumentIds: 
	[
		0
	],
	stepAttachedIds: 
	[
		0
	],
	mainAssigneeIds: 
	[
		0
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	code: 0,
	message: String,
	insertedId: 0
}