import _ from "lodash"; import { TStim } from ".."; import * as Const from "../const"; import { IDeptResponse, IPathResponse, IUnitResponse, IUserLiteResponse } from "../core"; import { TFlowDataResponse } from "../flow/IFlowDataResponse"; import { IGamsItemResponse } from "../gams"; import { IZbzbZbflResponse } from "./index"; export interface IZbzdMainResponse { whoBuild: number; userIndx: number; zbzdZdid: number; parentID: number; hashCode: number; dataLevl: number; dataFrom: number; kjndKJQJ: number; dataStat: number; dataOrdr: number; dataDate: number; dataTime: number; dataHide: number; dataGUID: string; mastName: string; mastGUID: string; createBy: string; createAt: number; updateBy: string; updateAt: number; deleteBy: string; deleteAt: number; queuesBy: number; entityID: string; zbzdStat: number; zbzdKJQJ: number; zbzdZbje: number; zbzdFrom: number; sourceND: number; unitMain: number; deptMain: number; sourceDW: string; sourceBM: string; zbzdMemo: string; fromText: string; zbzdZbwh: string; tzStatus: number; ysdwText: string; ysbmText: string; originID: number; isLasted: number; hasEnded: number; menuUUID: string; flowUndo: number; flowText: string; usesZbkz: number; usesZbhz: number; canSplit: number; zbzdZclx: number; syncStat: number; usesFlow: number; pathSize: number; ysbmSize: number; ysyhSize: number; ysbmMain: number; loadText: string; dataType: number; zbzdCode: string; zbzdUses: string; deptName: string; unitNamf: string; unitText: string; zbzdMain: number; flowMain: number; flowNode: number; lastTime: number; lastMemo: string; userName: string; userMain: number; sourceDw: string; zbzdJhje: number; /** * 项目分类 */ xmflName: string; /** * 项目分类 */ xmflMain: number; /** * 资金性质 */ zjxzName: string; /** * 资金性质 */ zjxzMain: number; /** * 预算项目 */ ysxmName: string; /** * 预算项目 */ ysxmMain: number; /** * 部门经济 */ bmkmName: string; /** * 部门经济 */ bmkmMain: number; /** * 功能科目 */ gnkmName: string; /** * 功能科目 */ gnkmMain: number; /** * 政府经济 */ zfkmName: string; /** * 政府经济 */ zfkmMain: number; /** * 指标来源 */ zblyName: string; /** * 指标来源 */ zblyMain: number; /** * 指标金额 */ zbflFlje: number; /** * 生成额度 */ zbhdHdid: number; /** * 指标标识 */ zbflFlid: number; /** * 是否锁定 */ lockMode: number; /** * 使用单位 */ ysdwIndx: number; /** * 使用单位 */ ysdwName: string; /** * 使用部门 */ ysbmName: string; /** * 资金来源 */ zjlyText: string; /** * 借贷标识 */ zbflJdbz: number; /** * 财政受理编号 */ czslCode: string; /** * 收款单位名称 */ acnoZhmc: string; /** * 收款单位账号 */ acnoYhzh: string; /** * 收款单位开户行 */ acnoKhyh: string; /** * 收款单位联系人 */ wContact: string; /** * 收款单位联系人电话 */ dContact: string; /** * 调增单位.标识 */ unitFrom: number; /** * 调增单位.名称 */ unitFromText: string; /** * 业务科室.标识 */ deptFrom: number; /** * 业务科室.名称 */ deptFromText: string; /** * 流程节点判断 */ flowVal1: number; /** * 流程节点判断 */ flowVal2: number; /** * 关联单据 */ billFrom: number; /** * 资金性质.名称 */ zjxzText: string; /** * 指标分录 */ listZBFL: IZbzbZbflResponse[]; listPath: IPathResponse[]; /** * 使用单位 */ listYSDW: IUnitResponse[]; /** * 使用部门 */ listYSBM: IDeptResponse[]; /** * 资金来源 */ listZJLY: IGamsItemResponse[]; /** * 审核用户 */ listUserWithFlow: IUserLiteResponse[]; } export class TZbzdMainResponse implements IZbzdMainResponse { whoBuild: number = 0; userIndx: number = 0; zbzdZdid: number = 0; parentID: number = 0; hashCode: number = 0; dataLevl: number = 0; dataFrom: number = 0; kjndKJQJ: number = 0; dataStat: number = 0; dataOrdr: number = 0; dataDate: number = 0; dataTime: number = 0; dataHide: 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 = ""; zbzdStat: number = 0; zbzdKJQJ: number = 0; zbzdZbje: number = 0; zbzdFrom: number = 0; sourceND: number = 0; unitMain: number = 0; deptMain: number = 0; lastTime: number = 0; sourceDW: string = ""; sourceBM: string = ""; zbzdMemo: string = ""; fromText: string = ""; lastMemo: string = ""; userName: string = ""; userMain: number = -1; /** 指标文号 */ zbzdZbwh: string = ""; tzStatus: number = 0; ysdwText: string = ""; ysbmText: string = ""; originID: number = 0; isLasted: number = 0; hasEnded: number = 0; menuUUID: string = ""; flowUndo: number = 0; flowText: string = ""; usesZbkz: number = 0; usesZbhz: number = 0; canSplit: number = 0; zbzdZclx: number = 0; syncStat: number = 0; usesFlow: number = 0; pathSize: number = 0; ysbmSize: number = 0; ysyhSize: number = 0; ysbmMain: number = 0; loadText: string = ""; dataType: number = 0; /** 指标单号|财务受理编号 */ zbzdCode: string = ""; /** 申请事由|资金用途原因 */ zbzdUses: string = ""; deptName: string = ""; unitNamf: string = ""; /** 单位名称 */ unitText: string = ""; zbzdMain: number = 0; flowMain: number = 0; flowNode: number = 0; xmflName: string = ""; xmflMain: number = 0; zjxzName: string = ""; zjxzMain: number = 0; ysxmName: string = ""; ysxmMain: number = 0; bmkmName: string = ""; bmkmMain: number = 0; gnkmName: string = ""; gnkmMain: number = 0; zfkmName: string = ""; zfkmMain: number = 0; zbflFlje: number = 0; zblyName: string = ""; zblyMain: number = 0; zbhdHdid: number = 0; zbflFlid: number = 0; lockMode: number = 0; ysdwIndx: number = 0; ysdwName: string = ""; ysbmName: string = ""; zjlyText: string = ""; zbflJdbz: number = 0; czslCode: string = ""; acnoZhmc: string = ""; acnoYhzh: string = ""; acnoKhyh: string = ""; wContact: string = ""; dContact: string = ""; unitFrom: number = 0; unitFromText: string = ""; deptFrom: number = 0; deptFromText: string = ""; flowVal1: number = -1; flowVal2: number = -1; billFrom: number = 0; sourceDw: string = ""; zjxzText: string = ""; zbzdJhje: number = 0; listZBFL: IZbzbZbflResponse[] = []; listPath: IPathResponse[] = []; listYSDW: IUnitResponse[] = []; listYSBM: IDeptResponse[] = []; listZJLY: IGamsItemResponse[] = []; listUserWithFlow: IUserLiteResponse[] = []; constructor(card: any = {}) { if (card) { _.merge(this, _.pick(card, Object.keys(this))); } } static toFlowDatas(card: TZbzdMainResponse[]): TFlowDataResponse[] { return card.map((u) => this.toFlowData(u)); } static toFlowData(zbzd: TZbzdMainResponse): TFlowDataResponse { const result = new TFlowDataResponse(); result.whoBuild = zbzd.whoBuild; result.userIndx = zbzd.userIndx; result.flowMain = zbzd.flowMain; //#flowmain=0 result.flowNode = zbzd.flowNode; //#flownode=0 result.notified = Const.Todo.CONST_STR_TODO_TYPE_TO_YZCG_WAIT; result.entityID = zbzd.entityID; result.billMain = zbzd.zbzdZdid; result.billCode = zbzd.entityID; result.billMemo = zbzd.zbzdMemo; result.ysxmText = ""; result.outMoney = 0; result.createAt = zbzd.createAt; result.mastName = zbzd.mastName; result.createBy = zbzd.createBy; result.unitMain = zbzd.unitMain; result.menuUUID = zbzd.menuUUID; result.deptMain = zbzd.deptMain; result.flowStat = zbzd.zbzdStat; return result; } static toWldyPrintData(noti: IZbzdMainResponse) { const data = new TStim.TStimulsoftPrintData(); data.billMain = String(noti.zbzdZdid); data.menuUUID = noti.menuUUID; return data; } static toWldyPrintDatas(listNoti: IZbzdMainResponse[]) { return listNoti.map((u) => this.toWldyPrintData(u)); } }