tvpl.api

<back to all web services

StatDocByTypeRequest

Requires Authentication
The following routes are available for this service:
POST/document/stat-search-by-type

export enum DocumentSearchStage
{
    All = 'All',
    AllProcessing = 'AllProcessing',
    Draft = 'Draft',
    PendingApproval = 'PendingApproval',
    IsRevisionRequested = 'IsRevisionRequested',
    PendingCompilation = 'PendingCompilation',
    PendingReport = 'PendingReport',
    Published = 'Published',
    Active = 'Active',
    InActive = 'InActive',
}

export class SimpleSearchFilter
{
    public title?: string;
    public groupId?: number;
    public subjectId?: number;
    public isUrgent?: boolean;
    public documentSearchStage: DocumentSearchStage;
    public isInternal?: boolean;
    public fromDate?: string;
    public toDate?: string;
    public typeId?: number;
    public statusId?: number;
    public issuingAgencyId?: number;
    public isParty?: boolean;

    public constructor(init?: Partial<SimpleSearchFilter>) { (Object as any).assign(this, init); }
}

export class DocumentSearchResultItem
{
    public title?: string;
    public description: string;
    public owner?: string;
    public documentPolicyId?: number;
    public updateDocumentId?: number;
    public effectBeginDate?: string;
    public effectEndDate?: string;
    public issuingAgencyId?: number;
    public subjectId?: number;
    public signBy?: string;
    public signDate?: string;
    public updatedAt?: string;
    public statusId?: number;
    public isInternal: boolean;
    public documentNumber?: string;
    public documentCode?: string;
    public isUrgent?: boolean;
    public id: number;
    public reasonReturn?: string;
    public accountId?: number;
    public approverId?: number;
    // @StringLength(500)
    public updatedBy?: string;

    // @StringLength(500)
    public createdBy?: string;

    public isParty?: boolean;
    public isRevisionRequested?: boolean;
    public isPrivate?: boolean;
    public departmentId?: number;
    public publicationDate?: string;
    public processStatusId: number;
    public documentTypeId?: number;
    public documentGroupId?: number;
    public accountName?: string;
    public acceptAccountName?: string;
    public documentGroupText?: string;
    public processStatusText?: string;
    public documentTypeText?: string;
    public departmentText?: string;
    public statusText?: string;
    public issuingAgencyText?: string;
    public subjectText?: string;
    public comment?: string;
    public submitComment?: string;
    public fullFile?: string;
    public parthFile?: string;
    public isActive?: boolean;
    public stepOrder?: number;
    public stepCount?: number;

    public constructor(init?: Partial<DocumentSearchResultItem>) { (Object as any).assign(this, init); }
}

export class SearchResponse implements IResponseRequest
{
    public totalCount: number;
    public code: number;
    public data: DocumentSearchResultItem[];
    public message: string;

    public constructor(init?: Partial<SearchResponse>) { (Object as any).assign(this, init); }
}

export class StatDocByTypeRequest extends SimpleSearchFilter implements IPost
{

    public constructor(init?: Partial<StatDocByTypeRequest>) { super(init); (Object as any).assign(this, init); }
}

TypeScript StatDocByTypeRequest DTOs

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

HTTP + OTHER

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

POST /document/stat-search-by-type HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length

{"title":"String","groupId":0,"subjectId":0,"isUrgent":false,"documentSearchStage":"All","isInternal":false,"fromDate":"0001-01-01T00:00:00.0000000+07:06","toDate":"0001-01-01T00:00:00.0000000+07:06","typeId":0,"statusId":0,"issuingAgencyId":0,"isParty":false}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length

{"totalCount":0,"code":0,"data":[{"title":"String","description":"String","owner":"String","documentPolicyId":0,"updateDocumentId":0,"effectBeginDate":"0001-01-01T00:00:00.0000000+07:06","effectEndDate":"0001-01-01T00:00:00.0000000+07:06","issuingAgencyId":0,"subjectId":0,"signBy":"String","signDate":"0001-01-01T00:00:00.0000000+07:06","updatedAt":"0001-01-01T00:00:00.0000000+07:06","statusId":0,"isInternal":false,"documentNumber":"String","documentCode":"String","isUrgent":false,"id":0,"reasonReturn":"String","accountId":0,"approverId":0,"updatedBy":"String","createdBy":"String","isParty":false,"isRevisionRequested":false,"isPrivate":false,"departmentId":0,"publicationDate":"0001-01-01T00:00:00.0000000+07:06","processStatusId":0,"documentTypeId":0,"documentGroupId":0,"accountName":"String","acceptAccountName":"String","documentGroupText":"String","processStatusText":"String","documentTypeText":"String","departmentText":"String","statusText":"String","issuingAgencyText":"String","subjectText":"String","comment":"String","submitComment":"String","fullFile":"String","parthFile":"String","isActive":false,"stepOrder":0,"stepCount":0}],"message":"String"}