{"remainingRequest":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xypm-web\\src\\views\\ProcessManagement\\ScheduleManagement\\PaymentApproval.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xypm-web\\src\\views\\ProcessManagement\\ScheduleManagement\\PaymentApproval.vue","mtime":1723543352528},{"path":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\xypm-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xypm-web\\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]}