{"remainingRequest":"D:\\jenkins\\workspace\\xypm-web-prod\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\xypm-web-prod\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\xypm-web-prod\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!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\\ChangeManagement.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xypm-web-prod\\src\\views\\ProcessManagement\\ChangeManagement.vue","mtime":1702670995237},{"path":"D:\\jenkins\\workspace\\xypm-web-prod\\babel.config.js","mtime":1667333346259},{"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\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"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":["import \"core-js/modules/es6.regexp.split\";\nimport \"core-js/modules/web.dom.iterable\";\nimport \"core-js/modules/es6.array.find\";\nimport \"core-js/modules/es6.function.name\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport ProjectInfoDialog from '@/components/dialog/ProjectInfoDialog.vue';\nimport ContractInfoDialog from '@/components/dialog/ContractInfoDialog.vue';\nimport req from '@/request.js';\nvar BigNumber = require('bignumber.js');\nexport default {\n name: 'ChangeManagement',\n components: {\n ProjectInfoDialog: ProjectInfoDialog,\n ContractInfoDialog: ContractInfoDialog\n },\n props: {\n pid: {\n type: String,\n default: ''\n },\n isShow: {\n type: Boolean,\n default: true\n },\n alias: {\n type: String,\n default: ''\n }\n },\n data: function data() {\n return {\n total_: {\n projectInfo: {\n projectName: '合计'\n },\n changeReason: '----',\n changeType: '----',\n changePrice: 0,\n changeDate: '----',\n tenderee: '----',\n changeContent: '----',\n remarks: '----'\n },\n selected: {\n numbers: 0,\n money: '0'\n },\n total: 0,\n importData: {\n title: '变更管理导入',\n templateName: '变更管理模板.xls',\n downloadUrl: '/../fvue/static/excel/ChangeManagement.xlsx',\n importUrl: window.context.cqxy + '/biz/processManagement/changeManagement/v1/importExcelData',\n showProject: true,\n showContract: true,\n projectId: ''\n // params: {\n // contractId: '', //合同ID\n // contractName: '', //合同名称\n // },\n },\n\n projectObj: [],\n //获取的所有项目数组\n searchForm: {\n projectId: '',\n changeCode: '',\n changeType: '',\n changeDate: ''\n },\n //顶部搜索参数\n data: [],\n //表格数据\n pageResult: {\n page: 1,\n pageSize: 20,\n total: 0\n },\n form: {\n changeContractName: '',\n changeContractId: '',\n projectInfo: {\n projectName: '',\n projectCode: ''\n },\n accessoryInfo: []\n },\n dialogVisible: false,\n dialogTitle: '添加',\n AmountOptions: [{\n label: '小于20万',\n value: 'less,20'\n }, {\n label: '50 ~ 100万',\n value: '50,100'\n }, {\n label: '100 ~ 200万',\n value: '100,200'\n }, {\n label: '200 ~ 400万',\n value: '200,400'\n }, {\n label: '400万以上',\n value: 'great,400'\n }],\n //表单验证\n rules: {\n 'projectInfo.projectName': {\n required: true,\n message: '项目名称不能为空',\n trigger: 'blur'\n },\n changeDate: {\n required: true,\n message: '请填写变更时间',\n trigger: 'blur'\n }\n // 'projectInfo.projectCode': {\n // required: true,\n // message: '项目代码不能为空',\n // trigger: 'blur',\n // },\n // changeName: {\n // required: true,\n // message: '变更名称不能为空',\n // trigger: 'blur',\n // },\n // changeContractName: {\n // required: true,\n // message: '合同名称不能为空',\n // trigger: 'blur',\n // },\n // changeType: {\n // required: true,\n // message: '变更类型不能为空',\n // trigger: 'blur',\n // },\n // changeDate: {\n // required: true,\n // message: '变更日期不能为空',\n // trigger: 'blur',\n // },\n // changeUnit: {\n // required: true,\n // message: '审批机构不能为空',\n // trigger: 'blur',\n // },\n }\n };\n },\n\n computed: {\n deleteUrl: function deleteUrl() {\n return window.context.cqxy + '/biz/processManagement/changeManagement/v1/delete';\n }\n },\n mounted: function mounted() {\n this.initProjectAll();\n this.initChangeTotal();\n },\n methods: {\n initChangeTotal: function initChangeTotal() {\n var _this = this;\n this.$http.post('${cqxy}/biz/processManagement/changeManagement/v1/totalAmount', this.$route.params.id).then(function (res) {\n if (res.status == 200) {\n _this.total = res.data;\n }\n });\n },\n handleReset: function handleReset() {\n var _this2 = this;\n this.searchForm.changePrice = '';\n this.searchForm.projectId = '';\n this.searchForm.changeCode = '';\n this.searchForm.changeType = '';\n this.searchForm.changeDate = '';\n this.searchForm.changeContent = '';\n this.$refs['searchForm'].resetFields();\n this.pageResult = {\n page: 1,\n pageSize: 20,\n total: 0\n };\n this.$nextTick(function () {\n _this2.$refs.AtTable.load();\n });\n },\n filterHandler: function filterHandler(value, row, column) {\n var property = column['property'];\n return row[property] === value;\n },\n handleFocusContractName: function handleFocusContractName() {\n this.$refs.contract.open(this.form.projectId);\n },\n //合同信息\n handleContract: function handleContract(data) {\n this.form.changeContractName = data.name;\n this.form.changeContractId = data.id;\n // this.importData.params.contractId=data.id\n // this.importData.params.contractName=data.name\n this.$refs.ruleForm.clearValidate();\n },\n handleSelectProject: function handleSelectProject(data) {\n this.form.projectInfo.projectName = data.projectName;\n this.form.projectInfo.projectCode = data.projectCode;\n this.form.projectId = data.id;\n this.form.changeContractName = '';\n this.form.changeContractId = '';\n this.$refs.ruleForm.clearValidate();\n },\n //打开选择项目弹框\n handleFocusProject: function handleFocusProject() {\n this.$refs.project.open();\n },\n //导入后重新加载数据\n load: function load() {\n this.$refs.AtTable.load();\n },\n //导出\n handleExport: function handleExport() {\n var _this3 = this;\n var query = [];\n var search = {\n 'pm.ID_': this.searchForm.projectId,\n change_code_: this.searchForm.changeCode,\n change_type_: this.searchForm.changeType,\n change_date_: this.searchForm.changeDate,\n change_price_: this.searchForm.changePrice,\n change_content_: this.searchForm.changeContent\n };\n if (!this.isShow) {\n search['pm.ID_'] = this.pid;\n }\n for (var i in search) {\n if (search[i]) {\n query.push({\n group: 'advance',\n operation: i == 'change_price_' ? 'GREAT' : 'LIKE',\n property: i,\n relation: 'AND',\n value: search[i]\n });\n }\n }\n var param = {\n pageBean: {\n page: 1,\n pageSize: -1,\n showTotal: true\n },\n querys: query,\n sorter: []\n };\n req.downloadPostCopy('${cqxy}/biz/processManagement/changeManagement/v1/exportDataToExcel', param).then(function (res) {\n if (res.status == 200) {\n _this3.$message.success('导出成功');\n } else {\n _this3.$message.error('导出失败');\n }\n });\n },\n //获取附件信息\n accessoryInfo: function accessoryInfo(info) {\n this.form.accessoryInfo = info;\n },\n initProjectAll: function initProjectAll() {\n var _this4 = this;\n //初始获取所有项目数据\n if (this.isShow) {\n this.$http.post('${cqxy}/biz/projectManagement/pm/v1/All').then(function (res) {\n _this4.projectObj = res.data.value;\n }, function (error) {\n reject(error);\n });\n } else {\n var params = {\n pageBean: {\n page: 1,\n pageSize: 500,\n total: 0\n },\n querys: [{\n group: 'main',\n operation: 'EQUAL',\n property: 'id',\n relation: 'AND',\n value: this.pid\n }]\n };\n this.$http.post('${cqxy}/biz/projectManagement/pm/v1/page', params).then(function (res) {\n if (res.data.state) {\n var resp = res.data.value;\n _this4.projectObj = resp.rows;\n }\n });\n }\n },\n //查询\n handleSearch: function handleSearch() {\n this.$refs.AtTable.load();\n },\n afterSaveData: function afterSaveData() {\n var _this5 = this;\n setTimeout(function () {\n _this5.form = {\n changeContractName: '',\n changeContractId: '',\n projectInfo: {\n projectName: '',\n projectCode: ''\n },\n accessoryInfo: []\n };\n _this5.beforeCloseDialog();\n _this5.$refs.AtTable.load();\n }, 500);\n },\n beforeCloseDialog: function beforeCloseDialog() {\n this.dialogVisible = false;\n },\n handleAdd: function handleAdd() {\n this.dialogTitle = '添加';\n this.dialogVisible = true;\n this.form = {\n projectId: '',\n changeContractId: '',\n changeContractName: '',\n tenderee: '',\n changeType: 1,\n projectInfo: {\n projectName: '',\n projectCode: ''\n }\n };\n if (this.isShow) {\n var selectedProject = this.projectObj.find(function (item) {\n if (item.currentProject && item.currentProject == 1) {\n return item.currentProject == 1;\n }\n });\n this.form.projectInfo.projectName = selectedProject.projectName;\n this.form.projectInfo.projectCode = selectedProject.projectCode;\n this.form.projectId = selectedProject.id;\n } else {\n //根据项目id查询\n this.form.projectInfo.projectName = this.projectObj[0].projectName;\n this.form.projectInfo.projectCode = this.projectObj[0].projectCode;\n this.form.projectId = this.projectObj[0].id;\n }\n },\n handleRowDBClick: function handleRowDBClick(data) {\n var _this6 = this;\n this.dialogTitle = '修改';\n this.$http.post('${cqxy}/biz/processManagement/changeManagement/v1/detail/' + data.id).then(function (res) {\n _this6.dialogVisible = true;\n var response = res.data.value;\n _this6.form = response;\n });\n },\n handleSelect: function handleSelect(selection) {\n selection.forEach(function (item, index) {\n if (item.projectInfo.projectName === '合计') {\n selection.splice(index, 1);\n }\n });\n this.selected.numbers = selection.length;\n var total = this.calculationTotal(selection, 'changePrice');\n this.selected.money = total;\n },\n handleDialogCancel: function handleDialogCancel() {\n this.dialogVisible = false;\n this.form = {\n changeContractName: '',\n changeContractId: '',\n projectInfo: {\n projectName: '',\n projectCode: ''\n },\n accessoryInfo: []\n };\n },\n handleDialogClose: function handleDialogClose() {\n this.dialogVisible = false;\n this.form = {\n changeContractName: '',\n changeContractId: '',\n projectInfo: {\n projectName: '',\n projectCode: ''\n },\n accessoryInfo: []\n };\n },\n //提交保存\n handleDialogSubmit: function handleDialogSubmit(formName) {\n var _this7 = this;\n this.$refs[formName].validate(function (valid) {\n if (valid) {\n if (_this7.form.accessoryInfo && _this7.form.accessoryInfo.length > 0) {\n _this7.form.accessoryInfo.forEach(function (item) {\n if (item.id) {\n delete item.id;\n }\n });\n }\n _this7.$http.post('${cqxy}/biz/processManagement/changeManagement/v1/save', _this7.form).then(function (res) {\n if (res.status == 200) {\n setTimeout(function () {\n _this7.$message.success(res.data.message);\n _this7.afterSaveData();\n }, 500);\n } else {\n _this7.$message.error(res.data.message);\n }\n });\n }\n // else if (this.form.accessoryInfo.length === 0) {\n // this.$message.error('至少上传一个附件')\n // }\n else {\n _this7.$message({\n message: '项目名称不能为空!',\n type: 'warning'\n });\n return false;\n }\n });\n },\n loadData: function loadData(param, cb) {\n var _this8 = this;\n var query = [];\n var search = {\n 'pm.ID_': this.searchForm.projectId,\n change_code_: this.searchForm.changeCode,\n change_type_: this.searchForm.changeType,\n change_date_: this.searchForm.changeDate,\n change_price_: this.searchForm.changePrice,\n change_content_: this.searchForm.changeContent\n };\n if (!this.isShow) {\n search['pm.ID_'] = this.pid;\n this.importData.projectId = this.pid;\n }\n for (var i in search) {\n if (search[i]) {\n if (i == 'change_price_') {\n var arr = search[i].split(',');\n if (arr[0] == 'less') {\n query.push({\n group: 'advance',\n operation: 'LESS',\n property: i,\n relation: 'AND',\n value: arr[1]\n });\n } else if (arr[0] == 'great') {\n query.push({\n group: 'advance',\n operation: 'GREAT',\n property: i,\n relation: 'AND',\n value: arr[1]\n });\n } else {\n query.push({\n group: 'advance',\n operation: 'GREAT_EQUAL',\n property: i,\n relation: 'AND',\n value: arr[0]\n }, {\n group: 'advance',\n operation: 'LESS_EQUAL',\n property: i,\n relation: 'AND',\n value: arr[1]\n });\n }\n } else {\n query.push({\n group: 'advance',\n operation: 'LIKE',\n property: i,\n relation: 'AND',\n value: search[i]\n });\n }\n }\n }\n if (param.querys && param.querys.length) {\n var _param$querys;\n (_param$querys = param.querys).push.apply(_param$querys, query);\n } else {\n param.querys = query;\n }\n this.$http.post('${cqxy}/biz/processManagement/changeManagement/v1/page', param).then(function (resp) {\n var response = resp.data.value;\n _this8.selected = {\n numbers: 0,\n money: '0'\n };\n var data = response.rows;\n var total = _this8.calculationTotal(data, 'changePrice');\n _this8.total_.changePrice = total;\n data.push(_this8.total_);\n _this8.data = data;\n _this8.pageResult = {\n page: response.page,\n pageSize: response.pageSize,\n total: response.total\n };\n }, function (error) {\n reject(error);\n }).finally(function () {\n return cb();\n });\n },\n // 计算列表合同金额合计金额\n calculationTotal: function calculationTotal(data, key) {\n var total = new BigNumber(0);\n if (key && data && data.length !== 0) {\n data.forEach(function (item) {\n if (item[key]) {\n total = total.plus(item[key]);\n } else {\n total = total.plus(0);\n }\n });\n }\n return this.moneyFormatter(total);\n },\n cellClassNameFn: function cellClassNameFn(row) {\n // 列表项目名称为【合计】隐藏复选框\n if (row.row.projectInfo.projectName === '合计') {\n return 'table-column-hidden';\n }\n }\n }\n};",null]}