UNPKG

@etsoo/smarterp-core

Version:

TypeScript APIs for SmartERP Core

89 lines (81 loc) 2.03 kB
import { EntityApi, IApi, IApiPayload, IApp, IdResultPayload } from "@etsoo/appscript"; import { DocumentListData } from "./dto/document/DocumentListData"; import { DocumentListRQ } from "./rq/document/DocumentListRQ"; import { DocumentReadData } from "./dto/document/DocumentReadData"; import { DocumentCreateRQ } from "./rq/document/DocumentCreateRQ"; import { DocumentQueryRQ } from "./rq/document/DocumentQueryRQ"; import { DocumentQueryData } from "./dto/document/DocumentQueryData"; import { DocumentUpdateRQ } from "./rq/document/DocumentUpdateRQ"; /** * Document API */ export class DocumentApi extends EntityApi { /** * Constructor * @param app Application * @param api API */ constructor(app: IApp, api: IApi = app.api) { super("Document", app, api); } /** * Create * @param rq Request data * @param payload Payload * @returns Result */ create(rq: DocumentCreateRQ, payload?: IdResultPayload) { return this.createBase(rq, payload); } /** * Delete * @param id Id * @param payload Payload * @returns Result */ delete(id: number, payload?: IdResultPayload) { return this.deleteBase(id, payload); } /** * List * @param rq Request data * @param payload Payload * @returns Result */ list(rq: DocumentListRQ, payload: IApiPayload<DocumentListData[]>) { return this.listBase(rq, payload); } /** * Query * @param rq Request data * @param payload Payload * @returns Result */ query(rq: DocumentQueryRQ, payload?: IApiPayload<DocumentQueryData[]>) { return this.queryBase(rq, payload); } /** * Read * @param id Id * @param payload Payload * @returns Result */ read(id: number, payload?: IApiPayload<DocumentReadData>) { return this.readBase(id, payload); } /** * Update * @param rq Request data * @param payload Payload * @returns Result */ update(rq: DocumentUpdateRQ, payload?: IdResultPayload) { return this.updateBase(rq, payload); } }