{"remainingRequest":"D:\\jenkins\\workspace\\yhxt-web\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\yhxt-web\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\yhxt-web\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\jenkins\\workspace\\yhxt-web\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\yhxt-web\\src\\views\\specialProjectManagement\\CtInfo.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\yhxt-web\\src\\views\\specialProjectManagement\\CtInfo.vue","mtime":1724436823385},{"path":"D:\\jenkins\\workspace\\yhxt-web\\babel.config.js","mtime":1667326389982},{"path":"D:\\jenkins\\workspace\\yhxt-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\yhxt-web\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\yhxt-web\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\yhxt-web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\yhxt-web\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":["import \"core-js/modules/es7.object.get-own-property-descriptors\";\nimport \"core-js/modules/es6.object.keys\";\nimport \"core-js/modules/es6.regexp.split\";\nimport \"core-js/modules/es6.regexp.constructor\";\nimport _typeof from \"D:/jenkins/workspace/yhxt-web/node_modules/@babel/runtime/helpers/esm/typeof.js\";\nimport \"core-js/modules/es6.string.iterator\";\nimport \"core-js/modules/es6.map\";\nimport \"core-js/modules/es6.reflect.delete-property\";\nimport _defineProperty from \"D:/jenkins/workspace/yhxt-web/node_modules/@babel/runtime/helpers/esm/defineProperty.js\";\nimport \"core-js/modules/es6.function.name\";\nimport \"core-js/modules/web.dom.iterable\";\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\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 { mapState } from 'vuex';\nimport req from '@/request.js';\nimport basicData from '@/api/basicData.js';\nimport eipOrgSelector from '@/components/eipControl/selector/EipOrgSelector.vue';\nimport ProjectInfoDialog from '@/components/dialog/ProjectInfoDialog.vue';\nimport eipUserSelector from '@/components/eipControl/selector/EipUserSelector.vue';\nimport projectInfoSelector from '@/components/selector/projectInfoSelector.vue';\nimport companyInfoSelector from '@/components/selector/companyInfoSelector.vue';\nimport fileUpload from '@/components/upload/fileUploadProject.vue';\nimport CascaderCompany from '@/components/selector/CascaderCompany.vue';\nimport projectDialog from '@/components/dialog/projectDialog.vue';\nexport default {\n name: 'ContractInfo',\n components: {\n // eipOrgSelector,\n ProjectInfoDialog: ProjectInfoDialog,\n eipUserSelector: eipUserSelector,\n // projectInfoSelector,\n companyInfoSelector: companyInfoSelector,\n fileUpload: fileUpload,\n CascaderCompany: CascaderCompany,\n projectDialog: projectDialog\n },\n data: function data() {\n return {\n roadData: [],\n accessories: [],\n dadToSon: {\n bizPath: 'specialproject',\n fileList: []\n },\n optionYears: [],\n searchForm: {\n contractDate: ''\n },\n companyOptions: [],\n company: [],\n dataBaseOptions: {\n dataBaseId: '',\n tableName: 'biz_project_contract',\n // 必填\n tableSchema: ''\n },\n originAPIOptions: {\n url: '/bizProjectContract/v1/getJson',\n // 列表请求接口地址\n method: 'post',\n // 列表请求方法\n moduleRoot: 'yhxt' // 微服务根路径\n },\n\n exportQuery: {},\n data: [],\n pageResult: {\n page: 1,\n pageSize: 50,\n total: 0\n },\n dialogVisible: false,\n dialogVisibleEnclosure: false,\n //判断是否是添加还是修改\n type: '',\n form: {\n bizProjectContract: {\n contractType: 1,\n //合同类型\n projectName: '',\n accessories: [],\n projectId: '',\n contractAmount: 0\n },\n detailList: []\n },\n disabledSave: false,\n options: [],\n cbkm: [],\n selecdVlue: '',\n permission: 'b',\n detailList: [],\n key: '',\n //附件数据\n enclosureData: [],\n //附件管理所需id\n sourceId: '',\n //删除附件管理ids\n ids: [],\n loading: false,\n //上传附件加载控制\n disabled: false,\n //按钮禁用控制\n downLoading: false,\n //文件导出加载控制\n accept: '.jpg,.jpeg,.png,.bmp,.pdf,.JPG,.JPEG,.PBG,.BMP,.PDF,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.rtf,.txt,.zip,.rar,.vsd,.dwg,',\n files: [],\n fullscreenLoading: false,\n //全屏加载控件\n roadOptions: [],\n //选取路段\n projectOptions: [],\n //选取项目\n projectParams: {\n pageBean: {\n page: -1,\n showTotal: true\n },\n querys: [{\n group: 'main',\n operation: 'EQUAL',\n parentGroup: '',\n property: 'roadSegmentId',\n relation: 'AND',\n value: ''\n }]\n },\n rules: {\n roadSegmentId: {\n required: true,\n message: '请选择路段名称',\n trigger: 'change'\n },\n projectId: {\n required: true,\n message: '请选择项目名称',\n trigger: 'change'\n },\n projectName: {\n required: true,\n message: '请选择项目名称',\n trigger: 'blur'\n },\n contractNumber: {\n required: true,\n message: '请输入合同编号',\n trigger: 'blur'\n },\n contractName: {\n required: true,\n message: '请输入合同名称',\n trigger: 'blur'\n },\n contractAmount: {\n required: true,\n message: '请输入合同金额',\n trigger: 'blur'\n },\n firstParty: {\n required: true,\n message: '请输入甲方(立项单位)',\n trigger: 'blur'\n },\n secondParty: {\n required: true,\n message: '请输入乙方(施工单位)',\n trigger: 'blur'\n },\n // contractInitiator: {\n // required: true,\n // message: '请选择甲方负责人',\n // trigger: 'blur',\n // },\n secondPartyHead: {\n required: true,\n message: '请输入乙方负责人',\n trigger: 'blur'\n },\n contractDate: {\n required: true,\n message: '请选择签约日期',\n trigger: 'blur'\n },\n beCompletedDate: {\n required: true,\n message: '请选择签约日期',\n trigger: 'blur'\n },\n subjectName: {\n required: true,\n message: '请选择科目名称',\n trigger: 'blur'\n },\n subSubjectName: {\n required: true,\n trigger: 'blur',\n message: '请选择细科目名称'\n }\n // accessories: {\n // required: true,\n // message: '请上传附件',\n // trigger: 'change',\n // },\n },\n\n readyForDefaultParams: false\n };\n },\n beforeDestroy: function beforeDestroy() {\n this.$EventBus.$off('route');\n },\n mounted: function mounted() {\n // ht-table 组件会在created时默认执行一次查询\n // 为了添加上级页面携带的查询参数,这里在参数获取到以后再渲染ht-table组件\n if (this.$route.params) {\n this.searchForm.projectName = this.$route.params.projectName || '';\n this.searchForm.projectId = this.$route.params.id || '';\n }\n this.readyForDefaultParams = true;\n },\n computed: mapState({\n // submitUrl: function () {\n // return `${window.context.portal}/portal/commonBasic/v1/`\n // },\n downLoad: function downLoad() {\n return \"\".concat(window.context.portal, \"/bizEngineeringAccessories/v1/minioDrawingUpload?sourceId=\").concat(this.sourceId);\n },\n deleteUrl: function deleteUrl() {\n return window.context.yhxt + '/bizProjectContract/v1/updateContract';\n },\n headers: function headers(state) {\n return {\n Authorization: \"Bearer \".concat(state.login.currentUser.token)\n };\n }\n }),\n created: function created() {\n this.getYear();\n this.company = this.getCompany();\n this.getRoadInfo();\n this.roadData = this.getroad();\n this.searchForm.contractDate = new Date().getFullYear();\n },\n methods: {\n formartExportQuery: function formartExportQuery(query) {\n var data = {\n pageBean: {\n pageSize: -1\n },\n querys: query,\n sorter: [{\n direction: 'DESC',\n property: 'id_'\n }]\n };\n return data;\n },\n //获取顶部搜索的年份区间\n getYear: function getYear() {\n var myDate = new Date();\n var startYear = 2006; //起始年份\n var endYear = myDate.getFullYear() + 3; //结束年份\n for (var i = endYear; i >= startYear; i--) {\n this.optionYears.push({\n label: i + '年',\n value: i\n });\n }\n },\n tableRowClassName: function tableRowClassName(_ref) {\n var row = _ref.row;\n if (row.beCompleted == 1) {\n return 'error-row';\n }\n return '';\n },\n getroad: function getroad() {\n var arr = [];\n basicData.getRoadManagement().then(function (res) {\n res.rows.forEach(function (item) {\n arr.push({\n value: item.name,\n key: item.id\n });\n });\n console.log(arr, '12');\n });\n return arr;\n },\n getProjectInfo: function getProjectInfo(roadSegmentId) {\n var _this = this;\n this.projectParams.querys[0].value = roadSegmentId;\n this.$http.post('${yhxt}/bizEngineeringProject/v1/getJson', this.projectParams).then(function (res) {\n _this.projectOptions = res.data.rows;\n });\n },\n handleProjectChanged: function handleProjectChanged(id) {\n var _this2 = this;\n this.projectOptions.forEach(function (item) {\n if (item.id === id) {\n _this2.form.bizProjectContract.projectName = item.projectName;\n }\n });\n },\n changed: function changed(id) {\n var _this3 = this;\n this.roadOptions.forEach(function (item) {\n if (item.id == id) {\n _this3.form.bizProjectContract = _objectSpread(_objectSpread({}, _this3.form.bizProjectContract), {}, {\n companyName: item.companyName,\n companyId: item.companyId,\n roadSegmentName: item.name,\n roadSegmentId: id\n });\n _this3.projectOptions = [];\n _this3.getProjectInfo(id);\n }\n });\n },\n getRoadInfo: function getRoadInfo() {\n var _this4 = this;\n basicData.getRoadManagement().then(function (res) {\n if (res.rows.length !== 0) {\n _this4.roadOptions = res.rows;\n }\n });\n },\n sonToDad: function sonToDad(data) {\n console.log(data);\n var arr = [];\n data.forEach(function (item) {\n arr.push({\n isDele: item.isDele,\n attachmentName: item.name,\n attachmentPath: item.url,\n attachmentSuffix: item.suffix,\n attachmentType: item.type,\n type: 0\n });\n });\n this.accessories = arr;\n this.form.bizProjectContract.accessories = arr;\n // 防止用户打开了文件选择框之后不选择文件而出现效验失败\n if (this.form.bizProjectContract.accessories) {\n this.$refs.form.clearValidate('accessories');\n }\n },\n afterDelete: function afterDelete() {\n this.$refs.htTable.load();\n },\n //新增\n handleAdd: function handleAdd() {\n var _this5 = this;\n this.projectOptions = [];\n this.disabledSave = false;\n this.dialogVisible = true;\n this.type = 'add';\n if (this.options.length == 0) {\n var _data = 'CBKM';\n basicData.getCostAccountManagement(_data).then(function (res) {\n res.data.forEach(function (item) {\n _this5.options.push({\n label: item.subjectName,\n value: item.subjectCode\n });\n });\n });\n }\n\n /* 添加时默认填写项目管理选中数据的第一条 */\n // let obj = JSON.parse(sessionStorage.getItem('projectRow'))\n // if (!obj) return\n var data = this.$route.params;\n var obj = {};\n if (data.id) {\n obj = {\n roadSegmentId: data.roadSegmentId,\n roadSegmentName: data.roadSegmentName,\n projectId: data.id,\n projectName: data.projectName\n };\n }\n this.form.bizProjectContract = _objectSpread(_objectSpread({}, this.form.bizProjectContract), obj);\n this.changed(this.form.bizProjectContract.roadSegmentId);\n },\n //修改\n handleEdit: function handleEdit(data) {\n var _this6 = this;\n this.getProjectInfo(data.roadSegmentId);\n this.type = 'edit';\n this.$http.get('${form}/bizProjectContract/v1/get/' + data.id).then(function (res) {\n // console.log(res)\n _this6.dialogVisible = true;\n _this6.form.bizProjectContract = _objectSpread(_objectSpread({}, res.data.bizProjectContract), {}, {\n accessories: res.data.bizEngineeringAccessoriesList || []\n });\n _this6.form.detailList = res.data.detailList;\n res.data.bizEngineeringAccessoriesList.forEach(function (item) {\n item.url = item.attachmentPath;\n item.name = item.attachmentName;\n });\n _this6.dadToSon.fileList = res.data.bizEngineeringAccessoriesList;\n });\n this.disabledSave = false;\n var form = {\n contractType: 1,\n //合同类型\n projectName: '',\n projectId: ''\n };\n // this.type = 'edit'\n // this.sourceId = data.id\n // this.dialogVisible = true\n basicData.getByIdContractInfoData(data.id).then(function (res) {\n //循环数组添加key值\n var index = 0;\n res.detailList.forEach(function (item) {\n item.key = index++;\n item.subOption = [];\n });\n // console.log(res)\n res.bizProjectContract = _objectSpread(_objectSpread({}, form), res.bizProjectContract);\n _this6.form = res;\n //获取每一列细科目数据\n _this6.form.detailList.forEach(function (item) {\n // console.log(item)\n _this6.changesele(item.subjectNumber, item.key);\n });\n });\n if (this.options.length == 0) {\n var _data2 = 'CBKM';\n basicData.getCostAccountManagement(_data2).then(function (res) {\n res.data.forEach(function (item) {\n _this6.options.push({\n label: item.subjectName,\n value: item.subjectCode\n });\n });\n });\n }\n // data.bizProjectContract = {...form, ...data.bizProjectContract}\n // this.form = {...data}\n console.log(this.form);\n },\n handleClose: function handleClose(done) {\n //清空表单\n this.form = {\n bizProjectContract: {\n contractType: 1,\n //合同类型\n projectName: '',\n projectId: ''\n },\n detailList: []\n };\n this.dadToSon = {\n fileList: []\n };\n done();\n },\n //取消弹窗\n handleCancel: function handleCancel() {\n //清空表单\n this.form = {\n bizProjectContract: {\n contractType: 1,\n //合同类型\n projectName: '',\n projectId: ''\n },\n detailList: []\n };\n this.dadToSon = {\n fileList: []\n };\n this.options = [];\n this.cbkm = [];\n this.dialogVisible = false;\n },\n //提交保存或者修改\n handleSubmit: function handleSubmit() {\n var _this7 = this;\n // let validate\n // //验证子表单\n // this.$refs.detailForm.validate(bool => {\n // validate = bool\n // })\n // console.log(this.form, 'dhjjadskadkasdoiadoiasd')\n //验证表单是否填写完\n this.$refs.form.validate(function (bool) {\n if (bool) {\n _this7.fullscreenLoading = true;\n _this7.disabledSave = true;\n // this.dialogVisible = false\n //请求保存提交\n Reflect.deleteProperty(_this7.form.bizProjectContract, 'accessories');\n var data = {\n bizEngineeringAccessoriesList: _this7.accessories,\n bizProjectContract: _this7.form.bizProjectContract,\n detailList: _this7.form.detailList\n };\n basicData.addContractInfo(data).then(function (res) {\n if (res.state) {\n _this7.$message.success(res.message);\n _this7.dialogVisible = false;\n _this7.fullscreenLoading = false;\n _this7.$refs.htTable.load();\n } else {\n _this7.$message.error(res.message);\n }\n // this.$message.success(res.message)\n // if (res.message === '添加成功') {\n // this.dialogVisible = true\n // this.type = 'edit'\n // } else {\n // this.dialogVisible = false\n // this.fullscreenLoading = false\n // this.form = {\n // bizProjectContract: {\n // contractType: 1, //合同类型\n // projectName: '',\n // projectId: ''\n // },\n // detailList: []\n // } //清空表单\n // }\n\n // if (this.type === 'add') {\n // this.dialogVisible = true\n // this.handleEdit(res.value)\n // } else {\n // this.dialogVisible = false\n // }\n _this7.options = [];\n _this7.cbkm = [];\n // this.$refs.htTable.load() //重新获取数据\n });\n }\n });\n },\n uniqueFunc: function uniqueFunc(arr, uniId) {\n var res = new Map();\n return arr.filter(function (item) {\n return !res.has(item[uniId]) && res.set(item[uniId], 1);\n });\n },\n handleReset: function handleReset() {\n this.searchForm = _objectSpread(_objectSpread({}, this.searchForm), {}, {\n companyId: ['1419863231459102720'],\n companyIds: '',\n contractType: '',\n contractName: '',\n projectName: '',\n roadSegmentId: '',\n secondParty: ''\n });\n this.findinfo();\n },\n findinfo: function findinfo() {\n var _this8 = this;\n typeof this.$refs.filterTable !== 'undefined' && this.$refs.filterTable.clearFilter();\n var query = [];\n var search = {\n companyId: this.searchForm.companyIds,\n contractType: this.searchForm.contractType,\n contractName: this.searchForm.contractName,\n projectName: this.searchForm.projectName,\n // roadSegmentId: this.searchForm.roadSegmentId,\n road_segment_id_: this.searchForm.roadSegmentId,\n contractDate: this.searchForm.contractDate,\n secondParty: this.searchForm.secondParty\n };\n for (var i in search) {\n if (search[i]) {\n if (i == 'companyId') {\n query.push({\n group: 'advance',\n operation: 'IN',\n parentGroup: '',\n property: 'companyId',\n relation: 'AND',\n value: search[i]\n });\n } else if (i == 'contractDate') {\n query.push({\n group: 'advance',\n operation: 'LIKE',\n parentGroup: '',\n property: 'CONTRACT_DATE_',\n relation: 'AND',\n value: search[i]\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 query = this.uniqueFunc(query, 'property');\n this.exportQuery = this.formartExportQuery(query);\n var data = {\n pageBean: {\n page: 1,\n pageSize: 20,\n showTotal: true\n },\n querys: query\n };\n this.topQuery = query;\n basicData.getContractInfo(data).then(function (response) {\n // console.log(res, '11')\n _this8.data = response.rows;\n _this8.pageResult = {\n page: response.page,\n pageSize: response.pageSize,\n total: response.total\n };\n });\n },\n getCompany: function getCompany() {\n var _this9 = this;\n this.$http.post('${yhxt}/Company/v1/getCompany').then(function (res) {\n res.data.forEach(function (item) {\n _this9.companyOptions.push({\n id: item.id,\n name: item.name\n });\n });\n });\n },\n //深层拷贝回去公司名称\n deepClone: function deepClone(obj) {\n var objClone = Array.isArray(obj) ? [] : {};\n if (obj && _typeof(obj) === 'object') {\n for (var key in obj) {\n if (obj.hasOwnProperty(key)) {\n //判断ojb子元素是否为对象,如果是,递归复制\n if (obj[key] && _typeof(obj[key]) === 'object') {\n objClone[key] = this.deepClone(obj[key]);\n } else {\n if (obj[key] == obj.name) {\n this.companyOptions.push({\n id: obj.id,\n name: obj.name\n });\n } //如果不是,简单复制\n objClone[key] = obj[key];\n }\n }\n }\n }\n },\n loadData: function loadData(param, cb) {\n var _this10 = this;\n if (typeof this.topQuery !== 'undefined' && this.topQuery.length !== 0) {\n param.querys = typeof param.querys !== 'undefined' ? param.querys : [];\n this.topQuery.forEach(function (item) {\n param.querys.push(item);\n });\n param.querys = this.uniqueFunc(param.querys, 'property');\n }\n if (this.searchForm.projectId) {\n param.querys = [{\n group: 'defaultQuerys',\n operation: 'EQUAL',\n parentGroup: '',\n property: 'projectId',\n relation: 'AND',\n value: this.searchForm.projectId\n }];\n } else {\n param.querys = [{\n group: 'defaultQuerys',\n operation: 'LIKE',\n property: 'CONTRACT_DATE_',\n relation: 'AND',\n value: this.searchForm.contractDate\n }];\n }\n this.exportQuery = param;\n basicData.getContractInfo(param).then(function (response) {\n _this10.data = response.rows;\n _this10.pageResult = {\n page: response.page,\n pageSize: response.pageSize,\n total: response.total\n };\n }).finally(function () {\n if (cb) {\n cb();\n }\n });\n },\n //添加表格数据\n addTableData: function addTableData() {\n this.form.detailList.push({\n key: this.form.detailList.length + 1,\n subOption: [],\n subSubjectName: '',\n subSubjectNumber: '',\n subjectNumber: '',\n subjectName: '',\n paidMoney: '',\n subjectMoney: ''\n });\n },\n //删除表格数据\n delTableData: function delTableData(key, id) {\n //判断是否存在key值\n //删除时调用保存接口\n this.form.detailList = this.form.detailList.filter(function (item) {\n return item.key !== key;\n });\n //调用接口\n basicData.deleteContractDetailInfo(id).then(function (res) {\n // this.$message.success('删除成功')\n });\n },\n //细科目改变事件,赋值细科目名称\n subSubChange: function subSubChange(val, obj) {\n var _this11 = this;\n // console.log(val, obj)\n if (obj.subOption) {\n obj.subOption.forEach(function (item) {\n if (item.value == val) {\n _this11.form.detailList.forEach(function (item1) {\n if (item1.key == obj.key) {\n item1.subSubjectName = item.label;\n }\n });\n }\n });\n }\n },\n changesele: function changesele(value, key) {\n var _this12 = this;\n var arr = [];\n basicData.getCostAccountManagement(value).then(function (res) {\n if (res.data.length > 0) {\n res.data.forEach(function (item) {\n if (item.pcode == value) {\n arr.push({\n label: item.subjectName,\n value: item.subjectCode\n });\n }\n });\n //默然赋值细科目的第一条数据\n _this12.form.detailList.forEach(function (item) {\n if (item.key == key) {\n item.subOption = arr;\n item.subSubjectNumber = item.subOption[0].value;\n item.subSubjectName = item.subOption[0].label;\n }\n });\n //赋值科目名称\n _this12.options.forEach(function (item) {\n if (item.value == value) {\n _this12.form.detailList.forEach(function (item1) {\n if (item1.key == key) {\n item1.subjectName = item.label;\n }\n });\n }\n });\n } else {\n _this12.form.detailList.forEach(function (item) {\n if (item.key == key) {\n item.subOption = [];\n item.subSubjectName = '';\n }\n });\n }\n });\n },\n //根据单价和数量计算金额\n calculation: function calculation(row) {\n // 完成已计量金额 = 完成已计量数量 * 单价\n var sun_paidMoney = row.completeAmount * row.subjectPrice;\n var sun_subjectMoney = row.subjectPrice * row.subjectAmount;\n this.form.detailList.forEach(function (item) {\n if (item.key == row.key) {\n //判断计算结果是否是数字,是则返回false,否则返回true\n if (isNaN(sun_paidMoney)) {\n item.paidMoney = 0;\n } else {\n item.paidMoney = sun_paidMoney;\n }\n if (isNaN(sun_subjectMoney)) {\n item.subjectMoney = 0;\n } else {\n item.subjectMoney = sun_subjectMoney;\n }\n }\n });\n },\n //限制输入数值是只能输入正整数\n BlurText: function BlurText(e) {\n if (e.target.value) {\n var boolean = new RegExp('^[1-9][0-9]*$').test(e.target.value);\n if (!boolean) {\n this.$message.warning('请输入正整数');\n e.target.value = ' ';\n }\n }\n },\n //附件管理\n handleEnclosure: function handleEnclosure() {\n var _this13 = this;\n this.$refs.form.validate(function (bool) {\n // this.dialogVisibleEnclosure = true\n if (bool) {\n if (_this13.type === 'edit') {\n _this13.dialogVisibleEnclosure = true;\n _this13.getEnclosureData(_this13.sourceId);\n } else {\n _this13.$message.error('请先保存该表单才能进入附件管理');\n }\n } else {\n _this13.$message.error('请先保存该表单才能进入附件管理');\n }\n });\n },\n getEnclosureData: function getEnclosureData(id) {\n var _this14 = this;\n var params = {\n pageBean: {\n page: 1,\n pageSize: 20,\n showTotal: true\n },\n params: {},\n querys: [{\n group: 'main',\n operation: 'EQUAL',\n parentGroup: '',\n property: 'sourceId',\n relation: 'AND',\n value: id\n }],\n sorter: []\n };\n basicData.getSpecialProjectManagement(2, params).then(function (res) {\n _this14.enclosureData = res.rows;\n });\n },\n handleCloseEnclosure: function handleCloseEnclosure(done) {\n this.enclosureData = [];\n done();\n },\n //文件上传时的钩子\n progress: function progress(event, file, fileList) {\n //将图标改成加载图标\n this.loading = true;\n //将按钮禁用\n this.disabled = true;\n },\n success: function success(response, file, fileList) {\n this.$message.success('文件上传成功');\n //重新加载数据\n this.getEnclosureData(this.sourceId);\n //将图标改成上传图标\n this.loading = false;\n //将按钮解禁\n this.disabled = false;\n },\n error: function error(response, file, fileList) {\n this.$message.error('文件上传失败');\n delete this.uploadingFiles[Base64.encode(file.name)];\n },\n // //附件导出\n downLoadImg: function downLoadImg() {\n var _this15 = this;\n this.downLoading = true;\n var ids = this.unique(this.ids);\n var strs = ids.join(',');\n req.download(window.context.portal + '/bizAccessory/v1/minioDrawingdownFile?ids=' + strs).then(function (res) {\n _this15.downLoading = false;\n _this15.$refs.multipleTable.clearSelection();\n _this15.ids = [];\n });\n },\n //附件管理删除\n handleEnclosureDel: function handleEnclosureDel() {\n var _this16 = this;\n this.downLoading = true;\n var ids = this.unique(this.ids);\n // console.log(ids.join(','))\n var strs = ids.join(',');\n basicData.deleteSpecialProjectManagement(strs).then(function (res) {\n if (res.state) {\n _this16.$message.success('附件删除成功');\n _this16.downLoading = false;\n } else {\n _this16.$message.error('附件删除失败');\n _this16.downLoading = false;\n }\n _this16.getEnclosureData(_this16.sourceId);\n //清空ids\n _this16.ids = [];\n });\n },\n handleSelectionChangeEnclosure: function handleSelectionChangeEnclosure(rows) {\n var _this17 = this;\n rows.forEach(function (item) {\n _this17.ids.push(item.id);\n });\n },\n //去重\n unique: function unique(arr) {\n for (var i = 0; i < arr.length; i++) {\n for (var j = i + 1; j < arr.length; j++) {\n if (arr[i] == arr[j]) {\n //第一个等同于第二个,splice方法删除第二个\n arr.splice(j, 1);\n j--;\n }\n }\n }\n return arr;\n },\n //所属项目\n handleFocusProject: function handleFocusProject() {\n this.$refs.project.open();\n },\n openProject: function openProject() {\n this.$refs.project.open();\n },\n handleSelectProject: function handleSelectProject(data) {\n console.log(data);\n this.form.bizProjectContract.projectName = data.projectName;\n this.form.bizProjectContract.projectId = data.projectId;\n this.$refs.projectName.focus();\n this.$refs.projectName.blur();\n },\n //信息赋值\n changedProject: function changedProject(obj) {\n this.form.bizProjectContract.projectName = obj.projectName;\n this.form.bizProjectContract.projectId = obj.id;\n },\n valueProject: function valueProject(obj) {\n console.log(obj);\n this.form.bizProjectContract.projectName = obj.projectName;\n this.form.bizProjectContract.projectId = obj.id;\n },\n //公司赋值\n handleChangedA: function handleChangedA(obj) {\n // console.log(obj.valueInfo.join(','))\n this.form.bizProjectContract.firstPartyIds = JSON.stringify(obj.valueInfo);\n this.form.bizProjectContract.firstParty = obj.name;\n this.form.bizProjectContract.firstPartyId = obj.id;\n },\n companyValueA: function companyValueA(obj) {\n // console.log(obj)\n this.form.bizProjectContract.firstParty = obj.name;\n this.form.bizProjectContract.firstPartyId = obj.id;\n this.form.bizProjectContract.firstPartyIds = JSON.stringify(obj.id.split(' ')); //必须是空格\n this.form.bizProjectContract = _objectSpread({}, this.form.bizProjectContract);\n },\n //公司赋值\n handleChangedB: function handleChangedB(obj) {\n // console.log(obj.valueInfo.join(','))\n this.form.bizProjectContract.secondPartyIds = JSON.stringify(obj.valueInfo);\n this.form.bizProjectContract.secondParty = obj.name;\n this.form.bizProjectContract.secondPartyId = obj.id;\n },\n companyValueB: function companyValueB(obj) {\n // console.log(obj)\n this.form.bizProjectContract.secondParty = obj.name;\n this.form.bizProjectContract.secondPartyId = obj.id;\n this.form.bizProjectContract.secondPartyIds = JSON.stringify(obj.id.split(' ')); //必须是空格\n },\n //公司赋值\n handleChangedC: function handleChangedC(obj) {\n // console.log(obj.valueInfo.join(','))\n this.form.bizProjectContract.thirdPartyIds = JSON.stringify(obj.valueInfo);\n this.form.bizProjectContract.thirdParty = obj.name;\n this.form.bizProjectContract.thirdPartyId = obj.id;\n },\n companyValueC: function companyValueC(obj) {\n // console.log(obj)\n this.form.bizProjectContract.thirdParty = obj.name;\n this.form.bizProjectContract.thirdPartyId = obj.id;\n this.form.bizProjectContract.thirdPartyIds = JSON.stringify(obj.id.split(' ')); //必须是空格\n },\n openProjectName: function openProjectName(val) {\n this.$refs.reference.open(val);\n },\n backData: function backData(data) {\n console.log(data, 'data');\n this.form.bizProjectContract.projectId = data[0].id;\n this.form.bizProjectContract.projectName = data[0].projectName;\n this.$forceUpdate();\n var field = 'projectName'; // 替换为要清除校验的字段名\n var rules = this.$refs.form.rules;\n if (rules && rules[field]) {\n this.$refs.form.clearValidate(field);\n }\n },\n // 返回上一页面\n clickBack: function clickBack() {\n var form = this.$route.params;\n this.$EventBus.$emit('route', JSON.stringify(form));\n this.$router.go(-1);\n }\n }\n};",null]}