@tomei/finance
Version:
NestJS package for finance module
86 lines • 3.87 kB
TypeScript
import { CommonService as MediaCommonService, MediasModel } from '@tomei/media';
import { DocumentStatus, DocType } from '../enum';
import { IDocumentAttr } from './interfaces/document-attr.interface';
import { IDocumentFindAll } from './interfaces/document-find-all.interface';
import DocumentItem from './document-item';
import { AccountSystemEntity } from '../account-system-entity/account-system-entity';
import { DocumentRepository } from './document.repository';
import FinanceCustomerBase from '../customer/customer';
import DocumentModel from '../models/document.entity';
import { LoginUserBase } from '@tomei/general';
import { IAccountSystem } from '../interfaces/account-system.interface';
export default class Document extends AccountSystemEntity {
DocNo: string;
private _DocType;
private _DocDate;
Currency: string;
private _Amount;
Description: string;
private _Status;
IssuedById: string;
IssuedToId: string;
IssuedToType: string;
RelatedObjectId: string;
RelatedObjectType: string;
CreatedById: string;
CreatedAt: Date;
UpdatedById: string;
UpdatedAt: Date;
UseAccSystemDocYN: string;
protected _ObjectType: string;
get ObjectType(): string;
private _DocHTMLFileMediaId;
private _DocPDFFileMediaId;
private static _RepositoryBase;
private _DbTransaction;
private _IsNewRecord;
private _DocumentItems;
private static _MediaRepository;
mediaCommonService: MediaCommonService;
private get IsNewRecord();
private set IsNewRecord(value);
get DocType(): DocType;
set DocType(docType: DocType);
get DocDate(): Date;
set DocDate(date: Date);
get DocHTMLFileMediaId(): string;
set DocHTMLFileMediaId(mediaId: string);
get DocPDFFileMediaId(): string;
set DocPDFFileMediaId(mediaId: string);
get Amount(): number;
private set Amount(value);
get Status(): DocumentStatus;
set Status(status: DocumentStatus);
get RepositoryBase(): DocumentRepository;
get ObjectId(): string;
get ObjectName(): string;
get TableName(): string;
constructor(dbTransaction?: any, documentData?: any);
init(params: IDocumentAttr): void;
static initDocument(dbTransaction: any, docNo: string): Promise<Document>;
reCalculateAmount(): Promise<void>;
get DocumentItems(): Promise<DocumentItem[]>;
getDocumentItems(dbTransaction?: any): Promise<DocumentItem[]>;
static settleByCreditNote(loginUser: LoginUserBase, dbTransaction: any, DocNo: string, AmountToReduce: number): Promise<Document>;
static DEFAULT_INVOICE_TEMPLATE_HTML(): Promise<Express.Multer.File>;
DEFAULT_INVOICE_TEMPLATE_PDF(customer: FinanceCustomerBase, date?: Date): Promise<Express.Multer.File>;
DEFAULT_RECEIPT_TEMPLATE_PDF(customer: FinanceCustomerBase, date?: Date): Promise<Express.Multer.File>;
get DocumentFileInHTML(): Promise<MediasModel>;
get DocumentFileInPDF(): Promise<MediasModel>;
generateInvoice(userId?: string, customer?: FinanceCustomerBase, dbTransaction?: any, date?: Date): Promise<{
HTMLMedia: MediasModel;
PDFMedia: MediasModel;
}>;
generateReceipt(userId?: string, customer?: FinanceCustomerBase, transaction?: any, date?: Date): Promise<{
HTMLMedia: MediasModel;
PDFMedia: MediasModel;
}>;
generateCreditNote(userId?: string, customer?: FinanceCustomerBase): Promise<void>;
newDocumentItem(documentItem?: DocumentItem): Promise<DocumentItem>;
getPreviousDocument(docType: DocType): Promise<DocumentModel>;
static findAll(loginUser: LoginUserBase, dbTransaction: any, page?: number, row?: number, search?: IDocumentFindAll, order?: [string, string][], accountingSystem?: IAccountSystem): Promise<{
count: number;
rows: DocumentModel[];
}>;
}
//# sourceMappingURL=document.d.ts.map