import { THzcb, TCore, TStim } from ".."; import { TFlowDataResponse } from "../flow"; import _ from "lodash"; export interface IHzcbTdssResponse { whoBuild: number; userIndx: number; tdssIndx: number; parentID: number; hashCode: number; dataLevl: number; dataFrom: number; kjndKJQJ: number; dataStat: number; dataOrdr: number; dataHide: number; dataType: number; dataDate: number; dataTime: number; dataGUID: string; mastName: string; mastGUID: string; userMain: number; createBy: string; createAt: number; updateBy: string; updateAt: number; deleteBy: string; deleteAt: number; queuesBy: number; entityID: string; sourceND: number; unitMain: number; deptMain: number; flowUndo: number; flowUser: string; flowText: string; menuMain: number; menuUUID: string; sqbmText: string; sqyhText: string; /**申请日期 */ tdssDate: number; /**流程状态:(0:制单;1:送审;2:终审) */ tdssStat: number; /**单据类型:检验类型 */ tdssType: number; /**编号 */ tdssCode: string; /**名称 */ tdssName: string; /**申请用途 */ tdssUses: string; /**备注说明 */ tdssMemo: string; /**基地ID */ hzcbMain: number; /**基地名称 */ hzcbName: string; /**区域 */ nodeText: string; /**申请类型 */ sqlxMain: number; /**申请类型 */ sqlxText: string; /**土地及设施类型 */ sslxMain: number; /**土地及设施类型 */ sslxText: string; /**面积 */ mjValue1: number; wContact: string; //#联系人 dContact: string; //#联系电话 flowMain: number; flowNode: number; coverURL: string; touchURL: string; unitText: string; sourceDW: string; lastDate: number; lastTime: number; flowStat: number; didFirst: number; lastMemo: string; userName: string; userGUID: string; /**附件 */ listPath: TCore.IPathResponse[]; /** 关联项目 */ listFrom: THzcb.IHzcbMainResponse[]; } export class THzcbTdssResponse implements IHzcbTdssResponse { whoBuild: number = 0; userIndx: number = 0; tdssIndx: number = 0; parentID: number = 0; hashCode: number = 0; dataLevl: number = 0; dataFrom: number = 0; kjndKJQJ: number = 0; dataStat: number = 0; dataOrdr: number = 0; dataHide: number = 0; dataType: number = 0; dataDate: number = 0; dataTime: number = 0; dataGUID: string = ""; mastName: string = ""; mastGUID: string = ""; userMain: number = 0; createBy: string = ""; createAt: number = 0; updateBy: string = ""; updateAt: number = 0; deleteBy: string = ""; deleteAt: number = 0; queuesBy: number = 0; entityID: string = ""; sourceND: number = 0; unitMain: number = 0; deptMain: number = 0; flowUndo: number = 0; flowUser: string = ""; flowText: string = ""; menuMain: number = 0; menuUUID: string = ""; sqbmText: string = ""; sqyhText: string = ""; tdssDate: number = 0; tdssStat: number = 0; tdssType: number = 0; tdssCode: string = ""; tdssName: string = ""; tdssUses: string = ""; tdssMemo: string = ""; hzcbMain: number = 0; hzcbName: string = ""; nodeText: string = ""; sqlxMain: number = 0; sqlxText: string = ""; sslxMain: number = 0; sslxText: string = ""; mjValue1: number = 0; wContact: string = ""; //#联系人 dContact: string = ""; //#联系电话 coverURL: string = ""; touchURL: string = ""; unitText: string = ""; sourceDW: string = ""; lastDate: number = 0; lastTime: number = 0; flowStat: number = 0; didFirst: number = 0; lastMemo: string = ""; userName: string = ""; userGUID: string = ""; flowMain: number = 0; flowNode: number = 0; listPath: TCore.IPathResponse[] = []; listFrom: THzcb.IHzcbMainResponse[] = []; constructor(response: any = {}) { if (response) { _.merge(this, _.pick(response, Object.keys(this))); } } static toFlowDatas(notis: IHzcbTdssResponse[]): TFlowDataResponse[] { return notis.map((u) => this.toFlowData(u)); } static toFlowData(xmss: IHzcbTdssResponse): TFlowDataResponse { const result = new TFlowDataResponse(); result.whoBuild = xmss.whoBuild; result.userIndx = xmss.userIndx; result.flowMain = xmss.flowMain; result.flowNode = xmss.flowNode; result.notified = ""; result.entityID = xmss.entityID; result.billMain = xmss.tdssIndx; result.billCode = xmss.tdssCode; result.billMemo = xmss.tdssMemo; result.billUses = ""; result.ysxmText = ""; result.outMoney = 0; result.createAt = xmss.createAt; result.mastName = xmss.mastName; result.createBy = xmss.createBy; result.unitMain = xmss.unitMain; result.menuUUID = xmss.menuUUID; result.deptMain = xmss.deptMain; result.flowStat = xmss.tdssStat; return result; } static toWldyPrintData(noti: IHzcbTdssResponse) { const data = new TStim.TStimulsoftPrintData(); data.billMain = String(noti.tdssIndx); data.menuUUID = noti.menuUUID; return data; } static toWldyPrintDatas(listNoti: IHzcbTdssResponse[]) { return listNoti.map((u) => this.toWldyPrintData(u)); } }