tvpl.api

<back to all web services

SearchCategoryRequest

Requires Authentication
The following routes are available for this service:
POST/category

export enum CategoryTypes
{
    Department = 'Department',
    PartyGroup = 'PartyGroup',
    DocGroup = 'DocGroup',
    DocType = 'DocType',
    IssuingAgency = 'IssuingAgency',
    Status = 'Status',
    Subjects = 'Subjects',
    Workflow = 'Workflow',
}

export class CategoryRequest
{
    public id?: number;
    public type?: CategoryTypes;
    public name?: string;
    public parentId?: number;

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

export class SearchCategoryRequest extends CategoryRequest
{

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

export class CreateCategoryModel
{
    public name: string;
    public description: string;
    public type: CategoryTypes;
    public isParty: boolean;
    // @Ignore()
    public childList?: number[];

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

export class Category extends CreateCategoryModel
{
    public id: number;
    public level: number;
    public sortOrder: number;
    public lastUpdate?: string;
    // @Ignore()
    public children: Category[];

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

export class BaseResponse<any[]> implements IResponseRequest
{
    public code: number;
    public message?: string;
    public data?: Category[];

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

TypeScript SearchCategoryRequest DTOs

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

HTTP + CSV

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

POST /category HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: text/csv
Content-Type: text/csv
Content-Length: length

{"id":0,"type":"Department","name":"String","parentId":0}
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length

{"code":0,"message":"String","data":[{"id":0,"level":0,"sortOrder":0,"lastUpdate":"0001-01-01T00:00:00.0000000+07:06","children":[{"id":0,"level":0,"sortOrder":0,"lastUpdate":"0001-01-01T00:00:00.0000000+07:06","children":[{"id":0,"level":0,"sortOrder":0,"lastUpdate":"0001-01-01T00:00:00.0000000+07:06","children":null,"name":"String","description":"String","type":"Department","isParty":false,"childList":[0]}],"name":"String","description":"String","type":"Department","isParty":false,"childList":[0]}],"name":"String","description":"String","type":"Department","isParty":false,"childList":[0]}]}