{"remainingRequest":"D:\\jenkins\\workspace\\xypm-web-prod\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xypm-web-prod\\src\\views\\ProcessManagement\\ScheduleManagement\\PaymentApproval.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xypm-web-prod\\src\\views\\ProcessManagement\\ScheduleManagement\\PaymentApproval.vue","mtime":1702930191761},{"path":"D:\\jenkins\\workspace\\xypm-web-prod\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\xypm-web-prod\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xypm-web-prod\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\r\nconst eipUserSelector = () =>\r\n import('@/components/selector/EipUserSelector.vue')\r\nimport ProjectInfoDialog from '@/components/dialog/ProjectInfoDialog.vue'\r\nimport ProjectContractDialog from '@/components/dialog/ProjectContractDialog.vue'\r\nimport {duration} from 'moment'\r\nimport utils from '@/utils.js'\r\nimport req from '@/request.js'\r\nconst BigNumber = require('bignumber.js')\r\nexport default {\r\n name: 'PaymentApproval',\r\n components: {\r\n ProjectInfoDialog,\r\n ProjectContractDialog,\r\n // eipUserSelector\r\n },\r\n props: {\r\n pid: {\r\n type: String,\r\n default: '',\r\n },\r\n isShow: {\r\n type: Boolean,\r\n default: true,\r\n },\r\n alias: {\r\n type: String,\r\n default: '',\r\n },\r\n },\r\n data() {\r\n return {\r\n total: {\r\n projectInfo: {\r\n projectName: '合计',\r\n },\r\n contractInfo: {\r\n name: '----',\r\n },\r\n purpose: '----',\r\n registerDate: '----',\r\n totalInvestment: '----',\r\n payeeAmountTotal: 0,\r\n amountAppropriated: '----',\r\n },\r\n selected: {\r\n numbers: 0,\r\n payeeAmountTotal: '0',\r\n },\r\n options: [\r\n {\r\n id: '50001023600050001574',\r\n label: '50001023600050001574',\r\n },\r\n {\r\n id: '500501004141000002640040',\r\n label: '500501004141000002640040',\r\n },\r\n ],\r\n importData: {\r\n title: '工程支付导入',\r\n templateName: '支付审批模板.xlsx',\r\n downloadUrl: '/../fvue/static/excel/PaymentApproval.xlsx',\r\n importUrl:\r\n window.context.cqxy +\r\n '/biz/processManagement/progressManage/v1/importExcelData',\r\n showProject: true,\r\n showContract: true,\r\n projectId: '',\r\n contractId: '',\r\n // params: {\r\n // contractId: '',\r\n // // registerPersonId: '',\r\n // // registerPersonName: '',\r\n // },\r\n },\r\n importDataDetailed: {\r\n title: '拨款明细导入',\r\n templateName: '拨款明细模板.xls',\r\n downloadUrl: '/../fvue/static/excel/PaymentApprovalList.xlsx',\r\n importUrl:\r\n window.context.cqxy +\r\n '/biz/processManagement/progressManageDefinite/v1/readExcelData',\r\n },\r\n projectObj: {}, //获取当前项目\r\n searchForm: {\r\n projectId: '',\r\n dept: '',\r\n registerDate: '',\r\n }, //顶部搜索参数\r\n dataBaseOptions: {\r\n dataBaseId: '',\r\n tableName: '', // 必填\r\n tableSchema: '',\r\n },\r\n ConstructionModeArr: [],\r\n ProjectTypeArr: [],\r\n originAPIOptions: {\r\n url: '', // 列表请求接口地址\r\n method: 'post', // 列表请求方法\r\n moduleRoot: '', // 微服务根路径\r\n },\r\n exportQuery: {},\r\n data: [], //表格数据\r\n pageResult: {\r\n page: 1,\r\n pageSize: 20,\r\n total: 0,\r\n },\r\n form: {\r\n contractInfo: {\r\n name: '',\r\n id: '',\r\n },\r\n projectInfo: {\r\n projectName: '',\r\n projectCode: '',\r\n },\r\n }, //基本信息表单\r\n dialogVisible: false,\r\n dialogTitle: '添加',\r\n selectionArr: [],\r\n active: 0,\r\n loading: false,\r\n routeKey: '',\r\n rules: {\r\n 'projectInfo.projectName': {\r\n required: true,\r\n message: '请选择项目名称',\r\n trigger: 'blur',\r\n },\r\n 'contractInfo.name': {\r\n required: true,\r\n message: '请选择合同名称',\r\n trigger: 'blur',\r\n },\r\n purpose: {\r\n required: true,\r\n message: '请选择用途',\r\n trigger: 'change',\r\n },\r\n },\r\n routerParams: null,\r\n }\r\n },\r\n computed: {\r\n deleteUrl: function () {\r\n return (\r\n window.context.cqxy + '/biz/processManagement/progressManage/v1/delete'\r\n )\r\n },\r\n },\r\n\r\n methods: {\r\n //重置\r\n handleReset() {\r\n this.searchForm.projectId = ''\r\n this.searchForm.dept = ''\r\n this.searchForm.registerDate = ''\r\n this.$refs['searchForm'].resetFields()\r\n this.pageResult = {\r\n page: 1,\r\n pageSize: 20,\r\n total: 0,\r\n }\r\n this.$nextTick(() => {\r\n this.$refs.AtTable.load()\r\n })\r\n },\r\n countTotal() {\r\n let arr = this.form.definiteInfo\r\n let total = 0\r\n arr.forEach((item) => {\r\n if (item.payeeAmount !== '') {\r\n let pay = parseFloat(item.payeeAmount)\r\n total += pay\r\n } else {\r\n this.form.payeeAmountTotal = 0\r\n }\r\n })\r\n this.form.payeeAmountTotal = total\r\n this.form.amountTotalWords = utils.convertCurrency(total)\r\n },\r\n //打开合同信息\r\n handleFocusContract() {\r\n this.$refs.contract.open(this.form.projectId)\r\n },\r\n //选择合同信息\r\n handleSelectContract(data) {\r\n // console.log(data,'data')\r\n this.form.totalInvestment = data.contractAmount\r\n\r\n if (!data.payee) {\r\n this.form.registerPersonName = data.payeeAccountPhone\r\n } else {\r\n this.form.registerPersonName = data.payee\r\n }\r\n\r\n this.form.contractId = data.id\r\n this.form.contractInfo.name = data.name\r\n this.form.contractInfo.id = data.id\r\n this.form.handlerPerson = data.payeeAccount\r\n this.form.registerPersonId = data.payeeContactPhone\r\n\r\n let params = {\r\n projectId: this.form.projectId,\r\n registerDate: this.form.registerDate,\r\n contractId: this.form.contractId,\r\n }\r\n this.$http\r\n .post(\r\n '${cqxy}/biz/processManagement/progressManage/v1/getAppropriatedl',\r\n params\r\n )\r\n .then((res) => {\r\n if (res.data.state) {\r\n this.form.amountAppropriated = res.data.value\r\n }\r\n })\r\n },\r\n filterHandler(value, row, column) {\r\n const property = column['property']\r\n return row[property] === value\r\n },\r\n //导入后重新加载数据\r\n load() {\r\n this.$refs.AtTable.load()\r\n },\r\n //导出\r\n handleExport() {\r\n let query = [\r\n {\r\n group: 'filter',\r\n operation: 'EQUAL',\r\n property: 'purpose',\r\n relation: 'AND',\r\n value: '1',\r\n },\r\n ]\r\n let search = {\r\n 'pm.ID_': this.searchForm.projectId,\r\n register_date_: this.searchForm.registerDate,\r\n register_person_name_: this.searchForm.registerPersonName,\r\n }\r\n if (this.pid) {\r\n search['pm.ID_'] = this.pid\r\n this.importData.projectId = this.pid\r\n } else if (this.routerParams) {\r\n search['pm.ID_'] = this.$route.params.id\r\n search.contract_id_ = this.routerParams.contract.id\r\n }\r\n for (let i in search) {\r\n if (search[i]) {\r\n query.push({\r\n group: 'advance',\r\n operation: 'LIKE',\r\n property: i,\r\n relation: 'AND',\r\n value: search[i],\r\n })\r\n }\r\n }\r\n let param = {\r\n pageBean: {\r\n page: 1,\r\n pageSize: -1,\r\n showTotal: true,\r\n },\r\n\r\n querys: query,\r\n sorter: [],\r\n }\r\n console.log(param)\r\n req\r\n .downloadPostCopy(\r\n '${cqxy}/biz/processManagement/progressManage/v1/exportDataToExcel',\r\n param\r\n )\r\n .then((res) => {\r\n if (res.status === 200) {\r\n this.$message.success('导出成功')\r\n } else {\r\n this.$message.error('导出失败')\r\n }\r\n })\r\n },\r\n loadDetailed(data) {\r\n for (let i = 0; i < data.length; i++) {\r\n data[i].key = this.form.definiteInfo.length + i\r\n }\r\n this.form.definiteInfo.push(...data)\r\n this.countTotal()\r\n },\r\n handleExportDetailed() {\r\n let param = {\r\n pageBean: {\r\n page: 1,\r\n pageSize: -1,\r\n showTotal: true,\r\n },\r\n querys: [],\r\n sorter: [],\r\n }\r\n req\r\n .downloadPostCopy(\r\n '${cqxy}/biz/processManagement/progressManageDefinite/v1/exportDataToExcel',\r\n param\r\n )\r\n .then((res) => {\r\n if (res.status === 200) {\r\n this.$message.success('导出成功')\r\n } else {\r\n this.$message.error('导出失败')\r\n }\r\n })\r\n },\r\n //上一步\r\n prevSteps() {\r\n this.active--\r\n this.active = this.active\r\n },\r\n //下一步\r\n nextSteps() {\r\n if (this.active == 0) {\r\n let _this = this\r\n let vaitalArr = [\r\n 'projectInfo.projectName',\r\n // 'projectInfo.projectCode',\r\n 'contractInfo.name',\r\n // 'registerPersonName',\r\n ]\r\n Promise.all(\r\n vaitalArr.map((item) => {\r\n const p = new Promise((resolve, reject) => {\r\n _this.$refs.form.validateField(item, (vaild) => {\r\n resolve(vaild)\r\n })\r\n })\r\n return p\r\n })\r\n ).then((result) => {\r\n result = result.filter((item) => item)\r\n if (!result.length) {\r\n this.active++\r\n this.active = this.active\r\n this.$refs['form'].clearValidate()\r\n }\r\n })\r\n } else {\r\n this.active++\r\n this.active = this.active\r\n this.$refs['form'].clearValidate()\r\n }\r\n },\r\n handleAdd() {\r\n this.dialogTitle = '添加'\r\n let date = new Date()\r\n this.form = {\r\n purpose: 1,\r\n haveFundPlan: 1,\r\n handlerPerson: '',\r\n projectId: this.$route.params.id,\r\n contractId: '',\r\n payeeAmountTotal: 0,\r\n registerPersonId: '',\r\n registerPersonName: '',\r\n totalInvestment: '',\r\n amountAppropriated: '',\r\n registerDate: utils.formatDateYear(date),\r\n month: (date.getMonth() + 1).toString(),\r\n year: date.getFullYear().toString(),\r\n contractInfo: {\r\n name: '',\r\n id: '',\r\n },\r\n definiteInfo: [],\r\n dept: '建设部',\r\n projectInfo: {\r\n projectName: this.$route.params.projectName,\r\n projectCode: '',\r\n },\r\n accessoryInfo: [],\r\n }\r\n if (this.routerParams) {\r\n if (this.data.length) {\r\n let data = this.data[0]\r\n this.form.contractId = data.contractId\r\n this.form.contractInfo.name = data.contractInfo.name\r\n this.form.registerPersonName = data.registerPersonName\r\n this.form.handlerPerson = data.handlerPerson\r\n this.form.registerPersonId = data.registerPersonId\r\n this.form.totalInvestment = data.totalInvestment\r\n } else {\r\n let data = this.routerParams.contract\r\n this.form.contractId = data.id\r\n this.form.contractInfo.name = data.name //合同名称\r\n this.form.registerPersonName = data.payee //收款单位\r\n this.form.totalInvestment = data.contractAmount\r\n }\r\n }\r\n let params = {\r\n projectId: this.form.projectId,\r\n registerDate: this.form.registerDate,\r\n contractId: this.form.contractId,\r\n }\r\n this.$http\r\n .post(\r\n '${cqxy}/biz/processManagement/progressManage/v1/getAppropriatedl',\r\n params\r\n )\r\n .then((res) => {\r\n if (res.data.state) {\r\n this.form.amountAppropriated = res.data.value\r\n }\r\n })\r\n this.dialogVisible = true\r\n // console.log(this.form)\r\n },\r\n handleRowDBClick(data) {\r\n this.dialogTitle = '修改'\r\n this.$http\r\n .post(\r\n '${cqxy}/biz/processManagement/progressManage/v1/detail/' + data.id\r\n )\r\n .then((res) => {\r\n this.dialogVisible = true\r\n let response = res.data.value\r\n if (!response.contractInfo) {\r\n let obj = {\r\n contractInfo: {},\r\n }\r\n this.form = {...response, ...obj}\r\n } else {\r\n this.form = response\r\n }\r\n // this.form.year = this.form.year\r\n this.form.month = this.form.month.toString()\r\n })\r\n },\r\n handleFocusProject() {\r\n this.$refs.project.open()\r\n },\r\n handleSelectProject(data) {\r\n this.form.contractInfo.name = ''\r\n this.form.contractInfo.id = ''\r\n this.form.projectId = data.id\r\n this.form.projectInfo.projectCode = data.projectCode\r\n this.form.projectInfo.projectName = data.projectName\r\n // this.form.handlerPerson = data.projectManager\r\n this.$refs.form.clearValidate()\r\n },\r\n handleSelect(selection) {\r\n selection.forEach((item, index) => {\r\n if (item.projectInfo.projectName === '合计') {\r\n selection.splice(index, 1)\r\n }\r\n })\r\n this.selected.numbers = selection.length\r\n let total = this.calculationTotal(selection, 'payeeAmountTotal')\r\n this.selected.payeeAmountTotal = total\r\n },\r\n handleDialogCancel() {\r\n this.dialogVisible = false\r\n this.active = 0\r\n this.form = {\r\n projectId: '',\r\n contractId: '',\r\n registerPersonId: '',\r\n registerPersonName: '',\r\n payeeAmountTotal: 0,\r\n contractInfo: {},\r\n definiteInfo: [],\r\n projectInfo: {},\r\n accessoryInfo: [],\r\n }\r\n /* 发送一个事件用于侧边栏按钮监听是否显示 */\r\n this.$bus.$emit('handleAsideBtn', true)\r\n },\r\n handleDialogClose() {\r\n this.dialogVisible = false\r\n this.active = 0\r\n this.form = {\r\n projectId: '',\r\n contractId: '',\r\n payeeAmountTotal: 0,\r\n registerPersonId: '',\r\n registerPersonName: '',\r\n contractInfo: {},\r\n definiteInfo: [],\r\n projectInfo: {},\r\n accessoryInfo: [],\r\n }\r\n },\r\n handleFile(file) {\r\n this.form.accessoryInfo = file\r\n },\r\n //保存\r\n handleDialogSubmit() {\r\n if (!this.form.contractId) return this.$message.info('请选择合同名称')\r\n if (this.form.accessoryInfo && this.form.accessoryInfo.length > 0) {\r\n this.form.accessoryInfo.forEach((item) => {\r\n if (item.id) {\r\n delete item.id\r\n }\r\n })\r\n }\r\n if (this.form.payeeAmountTotal == 0) {\r\n this.$message.error(`'本次拨款额'不能为0元`)\r\n return\r\n }\r\n this.loading = true\r\n this.$http\r\n .post('${cqxy}/biz/processManagement/progressManage/v1/save', this.form)\r\n .then((res) => {\r\n if (res.data.state) {\r\n // this.$refs.form.resetFields()\r\n this.$message.success(res.data.message)\r\n // this.handleDialogClose()\r\n this.$refs.AtTable.load()\r\n this.form = res.data.value\r\n } else {\r\n this.$message.error(res.data.message)\r\n }\r\n this.loading = false\r\n })\r\n .catch((err) => {\r\n this.loading = false\r\n })\r\n },\r\n loadData(param, cb) {\r\n let query = [\r\n {\r\n group: 'filter',\r\n operation: 'EQUAL',\r\n property: 'purpose',\r\n relation: 'AND',\r\n value: '1',\r\n },\r\n ]\r\n let search = {\r\n 'pm.ID_': this.searchForm.projectId,\r\n register_date_: this.searchForm.registerDate,\r\n register_person_name_: this.searchForm.registerPersonName,\r\n }\r\n this.routerParams = JSON.parse(sessionStorage.getItem('routerParams'))\r\n if (this.pid) {\r\n search['pm.ID_'] = this.pid\r\n this.importData.projectId = this.pid\r\n } else if (this.routerParams) {\r\n search['pm.ID_'] = this.$route.params.id\r\n search.contract_id_ = this.routerParams.contract.id\r\n this.importData.projectId = this.$route.params.id\r\n this.importData.contractId = this.routerParams.contract.id\r\n this.importData.showContract = false\r\n query = []\r\n }\r\n for (let i in search) {\r\n if (search[i]) {\r\n query.push({\r\n group: 'main',\r\n operation: 'LIKE',\r\n property: i,\r\n relation: 'AND',\r\n value: search[i],\r\n })\r\n }\r\n }\r\n if (param.querys && param.querys.length) {\r\n param.querys.push(...query)\r\n } else {\r\n param.querys = query\r\n }\r\n this.$http\r\n .post('${cqxy}/biz/processManagement/progressManage/v1/page', param)\r\n .then(\r\n (resp) => {\r\n let response = resp.data.value\r\n this.selected = {\r\n numbers: 0,\r\n payeeAmountTotal: '0',\r\n }\r\n let data = response.rows\r\n // this.total.totalInvestment = this.calculationTotal(\r\n // data,\r\n // 'totalInvestment'\r\n // )\r\n this.total.payeeAmountTotal = this.calculationTotal(\r\n data,\r\n 'payeeAmountTotal'\r\n )\r\n // this.total.amountAppropriated = this.calculationTotal(\r\n // data,\r\n // 'amountAppropriated'\r\n // )\r\n if (data.length !== 0) {\r\n data.push(this.total)\r\n }\r\n this.data = data\r\n this.pageResult = {\r\n page: response.page,\r\n pageSize: response.pageSize,\r\n total: response.total,\r\n }\r\n },\r\n (error) => {\r\n reject(error)\r\n }\r\n )\r\n .finally(() => {\r\n if (cb) {\r\n cb()\r\n }\r\n })\r\n },\r\n findinfo() {\r\n this.$refs.AtTable.load()\r\n },\r\n addListItem() {\r\n let length\r\n length = this.form.definiteInfo.length\r\n let newData = {\r\n key: length + 1,\r\n subjectName: '',\r\n payeeUnit: '重庆建工集团股份有限公司',\r\n bankOfDeposit: '中国建设银行重庆中山路支行营业部',\r\n payeeAmount: '',\r\n payeeNum: '',\r\n purpose: 1,\r\n remarks: '',\r\n }\r\n this.form.definiteInfo.push(newData)\r\n },\r\n\r\n deleteTableData(key, id) {\r\n this.form.definiteInfo = this.form.definiteInfo.filter((item) => {\r\n if (key) {\r\n return item.key !== key\r\n } else {\r\n return item.id !== id\r\n }\r\n })\r\n\r\n this.countTotal()\r\n if (id) {\r\n this.$http\r\n .remove(\r\n '${cqxy}/biz/processManagement/progressManageDefinite/v1/' + id\r\n )\r\n .then((res) => {\r\n if (res.data.state) {\r\n this.$message.success(res.data.message)\r\n } else {\r\n this.$message.error(res.data.message)\r\n }\r\n })\r\n }\r\n },\r\n handleChangeRegisterDate(date) {\r\n let params = {\r\n projectId: this.form.projectId,\r\n registerDate: date,\r\n contractId: this.form.contractId,\r\n }\r\n this.$http\r\n .post(\r\n '${cqxy}/biz/processManagement/progressManage/v1/getAppropriatedl',\r\n params\r\n )\r\n .then((res) => {\r\n if (res.data.state) {\r\n this.form.amountAppropriated = res.data.value\r\n }\r\n })\r\n },\r\n handleDialogExport() {\r\n if (this.form.id) {\r\n req\r\n .downloadGetCopy(\r\n '${cqxy}/biz/processManagement/progressManage/v1/exportApprovalForm?id=' +\r\n this.form.id\r\n )\r\n .then((res) => {\r\n if (res.status == 200) {\r\n this.$message.success('导出成功')\r\n } else {\r\n this.$message.error('导出失败')\r\n }\r\n })\r\n } else {\r\n this.$message.error('请先保存这条数据')\r\n }\r\n },\r\n handleBack() {\r\n this.$router.push({\r\n name: 'ProjectFlowChart',\r\n params: {\r\n id: this.$route.params.id,\r\n alias: this.routerParams.alias,\r\n },\r\n })\r\n },\r\n // 计算列表合同金额合计金额\r\n calculationTotal(data, key) {\r\n let total = new BigNumber(0)\r\n if (key && data && data.length !== 0) {\r\n data.forEach((item) => {\r\n if (item[key]) {\r\n total = total.plus(item[key])\r\n } else {\r\n total = total.plus(0)\r\n }\r\n })\r\n }\r\n return this.moneyFormatter(total)\r\n },\r\n cellClassNameFn(row) {\r\n // 列表项目名称为【合计】隐藏复选框\r\n if (row.row.projectInfo.projectName === '合计') {\r\n return 'table-column-hidden'\r\n }\r\n },\r\n },\r\n destroyed() {\r\n // this.routerParams=JSON.parse( sessionStorage.getItem('routerParams'))\r\n sessionStorage.removeItem('routerParams')\r\n },\r\n}\r\n",null]}