//#固定资产事项登记 import _ from "lodash"; import * as Const from "../const"; import { IPathResponse } from "../core/IPathResponse"; import { TFlowDataResponse } from "../flow/IFlowDataResponse"; import { TCore, TStim } from "../index.ts"; import { IMyoaMainResponse } from "../myoa/IMyoaMainResponse.ts"; import { ICardDataBillResponse } from "./ICardDataBillResponse.ts"; /** 车辆保险:dataType=1加001,使用单位(unitDict),投保单位(dddwText),生效日期(handleAt),到期日期(autoBxrq) 车辆加油:dataType=1002,加油日期(handleAt),油油号(字典)(autoJyyh),加油容量(nowCount) 车辆里程:dataType=1003,读取日期(handleAt),里程数(nowCount) 车辆年检:dataType=1004,本次年检时间(handleAt),本次年检费用(nowMoney),下次年检时间(autoNjrq) 车辆维修:dataType=1005,维修日期(handleAt),维修金额(nowMoney),维修单位(dddwText) */ export interface ICardDataResponse { whoBuild: number; userIndx: number; dataIndx: number; parentID: number; hashCode: number; dataLevl: number; dataFrom: number; kjndKJQJ: number; isLasted: number; dataStat: number; dataOrdr: number; dataHide: number; dataDate: number; dataTime: number; dataGUID: string; mastName: string; mastGUID: string; createBy: string; createAt: number; updateBy: string; updateAt: number; deleteBy: string; deleteAt: number; queuesBy: number; entityID: string; dataType: number; //#登记类别(系统常量) cardMain: number; unitMain: number; unitDict: number; //#new使用单位(字典) deptMain: number; menuUUID: string; /** 经办时间|申请日期 */ handleAt: number; handleBy: string; //#经办用户 nowCount: number; //#当前里程 /** 保险花费|维修金额 */ nowMoney: number; /** 登记内容|维修原因 */ dataText: string; dataMemo: string; //#备注信息 dddwMain: number; //#定点单位.标识 dddwCode: string; //#定点单位.编号 dddwText: string; //#定点单位.名称 autoJyyh: number; //#new加油油号 autoBxrq: number; //#new保险到期日期 autoNjrq: number; //#new年检到期日期=下次年检时间 cardExid: number; autoTbdw: number; autoType: number; startDay: number; endedDay: number; getMoney: number; //#加油金额 /**所属部门 */ sqbmText: string; /**使用日期 */ usesDate: number; /**使用人(名称) */ sqyhText: string; /**使用人 */ sqyhMain: number; /**实验内容 */ dataCont: string; /**实验结果 */ dataRslt: string; /**仪器交接 */ cardYqjj: string; /**仪器状态 */ cardYqzt: number; /**仪器状态名称 */ cardYqztText: string; /** 地址信息.标识 */ cardRoom: number; /** 地址信息.名称 */ cardRoomText: string; /** 巡查模板.标识 */ dictMain: number; /** 巡查模板.名称 */ dictText: string; thirdApp: string; autoCpbh: string; //#车牌号 cardName: string; /** 单据编号 */ cardCode: string; unitDictText: string; autoJyyhText: string; autoTbdwText: string; autoJykh: string; expdMain: number; expdCode: string; listPath: IPathResponse[]; autoClno: string; //#车架编号 doneWlzf: number; //#支付确认 autoTbxz: number; //#保险险种 autoTbxzText: string; /** 送审/审核时间 */ lastTime: number; billStat: number; flowMain: number; flowNode: number; lastMemo: string; flowText: string; flowUser: string; itemMain: number; //#加油卡id sourceND: number; /** 事前标识 1:允许被关联 0:默认值 */ todoLock: number; listLock: ICardDataResponse[]; /**关联myoa */ listMyoa: IMyoaMainResponse[]; /**bill */ listBill: ICardDataBillResponse[]; //#虚拟字段 ylcs: number; //#月里程数 nclcs: number; //#年初里程数 /**所属部门 */ cardDeptText: string; /**单号 */ billCode: string; /**经办人 */ cardUser: number; /**存放地点 */ cardLaid: number; /**存放地点 */ cardLaidText: string; /**负责人 */ cardKeep: number; /**负责人 */ cardKeepText: string; /**联系方式(关联cardMain) */ dContact: string; /**当前状态 */ cardZczt: number; /**当前状态 */ cardZcztText: string; /**使用方向 */ cardSyfx: number; /**使用方向 */ cardSyfxText: string; /**关联资产单号 */ fromBillCode: string; /**保管人 */ cardMast: number; /**保管人 */ cardMastText: string; /**联系方式 */ wContact: string; } export class TCardDataResponse implements ICardDataResponse { whoBuild: number = 0; userIndx: number = 0; dataIndx: number = 0; parentID: number = 0; hashCode: number = 0; dataLevl: number = 0; dataFrom: number = 0; kjndKJQJ: number = 0; isLasted: number = 0; dataStat: number = 0; dataOrdr: number = 0; dataHide: number = 0; dataDate: number = 0; dataTime: number = 0; dataGUID: string = ""; mastName: string = ""; mastGUID: string = ""; createBy: string = ""; createAt: number = 0; updateBy: string = ""; updateAt: number = 0; deleteBy: string = ""; deleteAt: number = 0; queuesBy: number = 0; entityID: string = ""; dataType: number = 0; cardMain: number = 0; unitMain: number = 0; unitDict: number = 0; deptMain: number = 0; menuUUID: string = ""; handleAt: number = 0; handleBy: string = ""; nowCount: number = 0; nowMoney: number = 0; dataText: string = ""; dataMemo: string = ""; dddwMain: number = 0; dddwCode: string = ""; dddwText: string = ""; startDay: number = 0; endedDay: number = 0; getMoney: number = 0; /**所属部门 */ sqbmText: string = ""; /**使用日期 */ usesDate: number = 0; /**使用人(名称) */ sqyhText: string = ""; /**使用人 */ sqyhMain: number = 0; /**实验内容 */ dataCont: string = ""; /**实验结果 */ dataRslt: string = ""; /**单号 */ billCode: string = ""; autoJyyh: number = 0; autoBxrq: number = 0; autoNjrq: number = 0; cardExid: number = 0; autoTbdw: number = 0; autoType: number = 0; /** 送审/审核时间 */ lastTime: number = 0; autoCpbh: string = ""; cardCode: string = ""; cardName: string = ""; unitDictText: string = ""; autoJyyhText: string = ""; autoTbdwText: string = ""; autoJykh: string = ""; expdMain: number = 0; expdCode: string = ""; listPath: IPathResponse[] = []; autoClno: string = ""; doneWlzf: number = 0; autoTbxz: number = 0; autoTbxzText: string = ""; billStat: number = 0; flowMain: number = 0; lastMemo: string = ""; flowNode: number = 0; flowText: string = ""; flowUser: string = ""; itemMain: number = 0; sourceND: number = 0; /** 事前标识 1:允许被关联 0:默认值 */ todoLock: number = 1; listLock: ICardDataResponse[] = []; listMyoa: IMyoaMainResponse[] = []; listBill: ICardDataBillResponse[] = []; //虚拟字段 ylcs: number = 0; nclcs: number = 0; /**所属部门 */ cardDeptText: string = ""; /**关联资产单号 */ fromBillCode: string = ""; /**经办人 */ cardUser: number = 0; /**存放地点 */ cardLaid: number = 0; /**存放地点 */ cardLaidText: string = ""; /**负责人 */ cardKeep: number = 0; /**负责人 */ cardKeepText: string = ""; /**联系方式 */ dContact: string = ""; /**当前状态 */ cardZczt: number = 0; /**当前状态 */ cardZcztText: string = ""; /**使用方向 */ cardSyfx: number = 0; /**使用方向 */ cardSyfxText: string = ""; /**仪器交接 */ cardYqjj: string = ""; /**仪器状态 */ cardYqzt: number = 0; /**仪器状态名称 */ cardYqztText: string = ""; /** 地址信息.标识 */ cardRoom: number = 0; /** 地址信息.名称 */ cardRoomText: string = ""; /** 巡查模板.标识 */ dictMain: number = 0; /** 巡查模板.名称 */ dictText: string = ""; thirdApp: string = ""; /**保管人 */ cardMast: number = 0; /**保管人 */ cardMastText: string = ""; wContact: string = ""; static toFlowData(card: ICardDataResponse): TFlowDataResponse { let result = new TFlowDataResponse(); result.whoBuild = card.whoBuild; result.userIndx = card.userIndx; result.flowMain = card.flowMain; result.flowNode = card.flowNode; result.notified = Const.Todo.CONST_STR_TODO_TYPE_TO_YZHT_WAIT; result.entityID = card.entityID; result.billMain = card.dataIndx; result.billCode = card.cardCode === "" ? card.dataIndx.toString() : card.cardCode; result.billMemo = card.dataMemo; result.outMoney = card.nowMoney; result.createAt = card.createAt; result.mastName = card.mastName; result.createBy = card.createBy; result.unitMain = card.unitMain; result.deptMain = card.deptMain; result.flowStat = card.billStat; result.menuUUID = card.menuUUID; return result; } static toFlowDatas(card: ICardDataResponse[]): TFlowDataResponse[] { return card.map((u) => this.toFlowData(u)); } static toTravel(card: ICardDataResponse): TCore.ISysTravelResponse { const travel = new TCore.TSysTravelResponse(); travel.whoBuild = card.whoBuild; travel.flowMain = card.flowMain; travel.flowNode = card.flowNode; travel.billUUID = card.entityID; travel.billMain = card.dataIndx; travel.billCode = card.billCode; travel.mastName = card.mastName; travel.createBy = card.createBy; travel.menuUUID = card.menuUUID; return travel; } /** 转换成记录日志需要的数据(第一层,不包含菜单) */ static toTravelData(card?: ICardDataResponse | ICardDataResponse[]): TCore.ISysTravelResponse[] { if (_.isNil(card)) { return []; } if (_.isArray(card)) { return card.map((u) => { return this.toTravel(u); }); } return [this.toTravel(card)]; } constructor(card: Partial = {}) { if (card) { _.merge(this, _.pick(card, Object.keys(this))); } } static toWldyPrintData(noti: ICardDataResponse) { const data = new TStim.TStimulsoftPrintData(); data.billMain = String(noti.dataIndx); data.menuUUID = noti.menuUUID; return data; } static toWldyPrintDatas(listNoti: ICardDataResponse[]) { return listNoti.map((u) => this.toWldyPrintData(u)); } }