UNPKG

@tomei/rental

Version:
72 lines (71 loc) 3.9 kB
import { ObjectBase } from '@tomei/general'; import { RentalHirerChangeRequestRepository } from './rental-hirer-change-request.repository'; import { LoginUser } from '@tomei/sso'; import { HirerChangeRequestTypeEnum } from '../../enum/rental-hirer-change-request-type'; import { HirerChangeRequestStatusEnum } from '../../enum/rental-hirer-change-request-status'; import { IRentalHirerChangeRequestAttr, IRentalHirerChangeRequestUpdate } from '../../interfaces'; import { Rental } from '../rental/rental'; import { HirerChangeRequestHirerRoleEnum } from '../../enum'; import { JointHirerRepository } from '../../components/joint-hirer/joint-hirer.repository'; import { HirerChangeRequestSignatureRepository } from '../hirer-change-request-signature/hirer-change-request-signature.repository'; import { HirerChangeRequestSignature } from '../hirer-change-request-signature/hirer-change-request-signature'; import { HirerChangeRequestNewHirer } from '../hirer-change-request-new-hirer/hirer-change-request-new-hirer'; import { HirerChangeRequestRemoveHirer } from '../hirer-change-request-remove-hirer/hirer-change-request-remove-hirer'; export declare class RentalHirerChangeRequest extends ObjectBase implements IRentalHirerChangeRequestAttr { ObjectId: string; ObjectName: string; ObjectType: string; TableName: string; RentalId: string; Type: HirerChangeRequestTypeEnum; Status: HirerChangeRequestStatusEnum; RequestedAt: Date; RequestedById: string; RequestingHirerId: string; RequestingHirerType: HirerChangeRequestHirerRoleEnum; CancelRemarks: string; UpdatedAt: Date; UpdatedById: string; Signatures: HirerChangeRequestSignature[]; Rental: Rental | null; get RequestId(): string; set RequestId(value: string); protected static _Repository: RentalHirerChangeRequestRepository; protected static _HirerSignatureRepository: HirerChangeRequestSignatureRepository; protected static _JointHirerRepository: JointHirerRepository; protected constructor(hirerChangeRequestAttr?: IRentalHirerChangeRequestAttr); toJSON(): IRentalHirerChangeRequestAttr; static init(requestId?: string, dbTransaction?: any): Promise<RentalHirerChangeRequest>; private checkForDuplicate; getSignatures(dbTransaction: any): Promise<HirerChangeRequestSignature[]>; private checkIsAllSigned; private create; update(loginUser: LoginUser, dbTransaction: any, params: IRentalHirerChangeRequestUpdate): Promise<this>; generateSignatures(loginUser: LoginUser, dbTransaction?: any): Promise<void>; createAddRequest(newHirer: { FullName: string; IdNo: string; IdType: string; Email?: string; ContactNo: string; Relationship: string; Address: string; City: string; State: string; Postcode: string; Country: string; }, loginUser: LoginUser, dbTransaction?: any): Promise<{ hirerChangeRequest: RentalHirerChangeRequest; NewHirer: HirerChangeRequestNewHirer; }>; createRemoveRequest(loginUser: LoginUser, dbTransaction: any, targetHirerId: string): Promise<{ hirerChangeRequest: RentalHirerChangeRequest; RemoveHirer: HirerChangeRequestRemoveHirer; }>; static findAll(loginUser: LoginUser, dbTransaction: any, rentalId: string): Promise<RentalHirerChangeRequest[]>; getNewHirer(dbTransaction: any): Promise<HirerChangeRequestNewHirer>; getRemoveHirer(dbTransaction: any): Promise<HirerChangeRequestRemoveHirer>; sign(loginUser: LoginUser, dbTransaction: any, signatureId: string): Promise<HirerChangeRequestSignature>; complete(loginUser: LoginUser, dbTransaction: any, customerId?: string, customerType?: string): Promise<RentalHirerChangeRequest>; cancel(loginUser: LoginUser, dbTransaction: any, cancelRemarks: string): Promise<RentalHirerChangeRequest>; }