/* Options: Date: 2025-12-06 13:03:38 Version: 6.110 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://etc-api.vsmlab.vn //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: StatDocByTypeRequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export interface IPost { } 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) { (Object as any).assign(this, init); } } export interface IResponseRequest { code: number; message: string; } 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) { (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) { (Object as any).assign(this, init); } } // @Route("/document/stat-search-by-type", "POST") export class StatDocByTypeRequest extends SimpleSearchFilter implements IReturn, IPost { public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'StatDocByTypeRequest'; } public getMethod() { return 'POST'; } public createResponse() { return new SearchResponse(); } }