import _ from "lodash"; import { Const, TStim } from ".."; import { IPathResponse, IUnitResponse } from "../core"; import { TFlowDataResponse } from "../flow"; import { IYzhtBillResponse } from "../yzht"; import { IHzcbMainResponse } from "./IHzcbMainResponse"; export interface IHzcbXmykResponse { whoBuild: number; userIndx: number; xmykIndx: number; hzcbMain: 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; xmykCode: string; xmykName: string; /** 本次申报金额 */ aplMoney: number; /** 已申报金额 */ aplReady: number; /** 指标数 */ getMoney: number; /** 可申报金额 */ nowMoney: number; xmykDate: number; xmykStat: number; xmykUses: string; xmykMemo: string; coverURL: string; touchURL: string; deptName: string; sourceBm: string; unitText: string; sourceDw: string; lastDate: number; lastTime: number; flowMain: number; flowNode: number; flowStat: number; didFirst: number; lastMemo: string; userName: string; userGUID: string; hzcbTxt1: string; hzcbName: string; /** 单位codefull */ sourceDW: string; // 文件号 fileCode: string; /** 功能科目 */ gnkmMain: number; gnkmUUID: string; gnkmCode: string; gnkmName: string; /** 经济科目 */ bmkmMain: number; bmkmUUID: string; bmkmCode: string; bmkmName: string; /** 预算级次 */ ysjcMain: number; ysjcUUID: string; ysjcCode: string; ysjcName: string; /** 资金性质 */ zjxzMain: number; zjxzUUID: string; zjxzCode: string; zjxzName: string; syncStat: number; listFrom: IHzcbMainResponse[]; listUnit: IUnitResponse[]; listBill: IYzhtBillResponse[]; listPath: IPathResponse[]; } export class THzcbXmykResponse implements IHzcbXmykResponse { whoBuild: number = 0; userIndx: number = 0; xmykIndx: number = 0; hzcbMain: 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 = ""; xmykCode: string = ""; xmykName: string = ""; /** 本次申报金额 */ aplMoney: number = 0; /** 已申报金额 */ aplReady: number = 0; /** 指标数 */ getMoney: number = 0; /** 可申报金额 */ nowMoney: number = 0; xmykDate: number = 0; xmykStat: number = 0; xmykUses: string = ""; xmykMemo: string = ""; coverURL: string = ""; touchURL: string = ""; deptName: string = ""; sourceBm: string = ""; unitText: string = ""; sourceDw: string = ""; lastDate: number = 0; lastTime: number = 0; flowMain: number = 0; flowNode: number = 0; flowStat: number = 0; didFirst: number = 0; lastMemo: string = ""; userName: string = ""; userGUID: string = ""; hzcbTxt1: string = ""; hzcbName: string = ""; sourceDW: string = ""; fileCode: string = ""; gnkmMain: number = 0; gnkmUUID: string = ""; gnkmCode: string = ""; gnkmName: string = ""; bmkmMain: number = 0; bmkmUUID: string = ""; bmkmCode: string = ""; bmkmName: string = ""; ysjcMain: number = 0; ysjcUUID: string = ""; ysjcCode: string = ""; ysjcName: string = ""; zjxzMain: number = 0; zjxzUUID: string = ""; zjxzCode: string = ""; zjxzName: string = ""; syncStat: number = 0; listFrom: IHzcbMainResponse[] = []; listBill: IYzhtBillResponse[] = []; listPath: IPathResponse[] = []; listUnit: IUnitResponse[] = []; constructor(xmyk: any = {}) { if (xmyk) { _.merge(this, _.pick(xmyk, Object.keys(this))); } } static toFlowDatas(xmyk: THzcbXmykResponse[]): TFlowDataResponse[] { return xmyk.map((u) => this.toFlowData(u)); } static toFlowData(xmyk: THzcbXmykResponse): TFlowDataResponse { let result = new TFlowDataResponse(); result.whoBuild = xmyk.whoBuild; result.userIndx = xmyk.userIndx; result.flowMain = xmyk.flowMain; result.flowNode = xmyk.flowNode; result.notified = Const.Todo.CONST_STR_TODO_TYPE_TO_HZCB_XMYK_WAIT; result.entityID = xmyk.entityID; result.billMain = xmyk.xmykIndx; result.billCode = xmyk.xmykCode; result.billMemo = xmyk.xmykMemo; result.outMoney = 0; result.createAt = xmyk.createAt; result.mastName = xmyk.mastName; result.createBy = xmyk.createBy; result.unitMain = xmyk.unitMain; result.deptMain = xmyk.deptMain; result.menuUUID = xmyk.menuUUID; result.flowStat = xmyk.xmykStat; return result; } static toWldyPrintData(xmyk: IHzcbXmykResponse) { const data = new TStim.TStimulsoftPrintData(); data.billMain = String(xmyk.xmykIndx); data.menuUUID = xmyk.menuUUID; return data; } static toWldyPrintDatas(listXmyk: IHzcbXmykResponse[]) { return listXmyk.map((u) => this.toWldyPrintData(u)); } }