{"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\\StatisticalReport\\InvestmentProgressAccount.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\xypm-web-prod\\src\\views\\StatisticalReport\\InvestmentProgressAccount.vue","mtime":1681934953616},{"path":"D:\\jenkins\\workspace\\xypm-web-prod\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"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//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\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\nimport req from '@/request.js'\r\nconst monthOptions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]\r\nexport default {\r\n name: 'investmentProgressAccount',\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 justShowSearch: this.isShow,\r\n loading: false,\r\n searchForm: {\r\n projectName: '',\r\n type: '',\r\n createTime: new Date().getFullYear(), //当前年份\r\n },\r\n optionYears: [], //顶部搜索年份选择数组\r\n details: {},\r\n data: [],\r\n year: 2023,\r\n pageResult: {\r\n page: 1,\r\n pageSize: 20,\r\n total: 0,\r\n },\r\n form: {},\r\n dialogVisible: false,\r\n landManagerDialog: {\r\n show: false,\r\n form: {\r\n landUnit: 1,\r\n },\r\n loading: false,\r\n },\r\n checkAll: false,\r\n checkedMonths: [new Date().getMonth(), new Date().getMonth() + 1],\r\n months: monthOptions,\r\n isIndeterminate: true,\r\n checkedMonthsList: [new Date().getMonth(), new Date().getMonth() + 1],\r\n payTotal: 0,\r\n investTotal: 0,\r\n }\r\n },\r\n computed: {\r\n deleteUrl: function () {\r\n return (\r\n window.context.cqxy + '/biz/projectApproval/decisionBasis/v1/delete'\r\n )\r\n },\r\n },\r\n created() {\r\n this.year = 2023\r\n this.getYear()\r\n this.getYearTotal()\r\n },\r\n methods: {\r\n getYearTotal() {\r\n if (this.searchForm.createTime && this.searchForm.createTime != '') {\r\n let formData = new FormData()\r\n formData.append('year', this.searchForm.createTime)\r\n this.$http\r\n .post('${cqxy}/biz/ledger/investment/v1/totalInvestByYear', formData)\r\n .then((res) => {\r\n let data = res.data.value\r\n this.payTotal = res.data.value\r\n this.investTotal = data.investTotal\r\n })\r\n } else {\r\n let formData = new FormData()\r\n formData.append('year', 0)\r\n this.$http\r\n .post('${cqxy}/biz/ledger/investment/v1/totalInvestByYear', formData)\r\n .then((res) => {\r\n console.log(res, 'wwwww')\r\n let data = res.data.value\r\n this.payTotal = res.data.value\r\n this.investTotal = data.investTotal\r\n })\r\n this.investTotal = 0\r\n this.currentYear = null\r\n }\r\n },\r\n //获取顶部搜索的年份区间\r\n getYear() {\r\n const myDate = new Date()\r\n this.currentYear = myDate.getFullYear()\r\n this.beforeYear = this.currentYear - 1\r\n const startYear = 2006 //起始年份\r\n const endYear = myDate.getFullYear() //结束年份\r\n for (let i = endYear; i >= startYear; i--) {\r\n this.optionYears.push({\r\n label: i + '年',\r\n value: i,\r\n })\r\n }\r\n },\r\n handleReset() {\r\n this.searchForm.projectName = ''\r\n this.searchForm.projectType = ''\r\n this.searchForm.createTime = ''\r\n this.searchForm.yearMonth = ''\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 //导出\r\n handleExport() {\r\n this.loading = true\r\n let query = []\r\n let search = {\r\n projectName: this.searchForm.projectName,\r\n project_type_: this.searchForm.projectType,\r\n CREATE_TIME_: this.searchForm.createTime,\r\n year_month_: this.searchForm.yearMonth,\r\n }\r\n if (!this.isShow) {\r\n // search.projectName = this.pid\r\n delete search.CREATE_TIME_\r\n }\r\n for (let i in search) {\r\n if (search[i]) {\r\n if (i == 'CREATE_TIME_') {\r\n query.push(\r\n {\r\n group: 'createTimeGroup',\r\n operation: 'BETWEEN',\r\n parentGroup: '',\r\n property: 'commencement_time_',\r\n relation: 'OR',\r\n value: [\r\n `${search[i]}-01-01 00:00:00`,\r\n `${search[i]}-12-31 23:59:59`,\r\n ],\r\n }\r\n // {\r\n // group: 'createTimeSubGroup',\r\n // operation: 'LESS_EQUAL',\r\n // parentGroup: 'createTimeGroup',\r\n // property: 'commencement_time_',\r\n // relation: 'AND',\r\n // value: `${search[i]}-12-31 23:59:59`,\r\n // },\r\n // {\r\n // group: 'createTimeSubGroup',\r\n // operation: 'LESS',\r\n // parentGroup: 'createTimeGroup',\r\n // property: 'PROJECT_STATUS_',\r\n // relation: 'AND',\r\n // value: '12',\r\n // }\r\n )\r\n } else if (i == 'year_month_') {\r\n let lastDate = search[i][1]\r\n let str = lastDate.split('-')\r\n let year = parseInt(str[0])\r\n let month = parseInt(str[1])\r\n let date = new Date(year, month, 0).getDate()\r\n let arr = [\r\n `${search[i][0]}-01 00:00:00`,\r\n `${search[i][1]}-${date} 23:59:59`,\r\n ]\r\n query.push(\r\n {\r\n group: 'createTimeGroup',\r\n operation: 'BETWEEN',\r\n parentGroup: '',\r\n property: 'commencement_time_',\r\n relation: 'OR',\r\n value: arr,\r\n },\r\n {\r\n group: 'createTimeSubGroup',\r\n operation: 'LESS_EQUAL',\r\n parentGroup: 'createTimeGroup',\r\n property: 'commencement_time_',\r\n relation: 'AND',\r\n value: arr[1],\r\n },\r\n {\r\n group: 'createTimeSubGroup',\r\n operation: 'LESS',\r\n parentGroup: 'createTimeGroup',\r\n property: 'PROJECT_STATUS_',\r\n relation: 'AND',\r\n value: '12',\r\n }\r\n )\r\n } else if (i == 'projectName') {\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 } else {\r\n query.push({\r\n group: 'advance',\r\n operation: 'EQUAL',\r\n property: i,\r\n relation: 'AND',\r\n value: search[i],\r\n })\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 querys: query,\r\n }\r\n req\r\n .downloadPostCopy(\r\n '${cqxy}/biz/ledger/investment/v1/exportDataToExcel',\r\n param\r\n )\r\n .then((res) => {\r\n if (res.status == 200) {\r\n this.loading = false\r\n this.$message.success('导出成功')\r\n } else {\r\n this.loading = false\r\n this.$message.error('导出失败')\r\n }\r\n })\r\n },\r\n //查询\r\n handleSearch() {\r\n this.$refs.AtTable.load()\r\n },\r\n handleRowDBClick(data) {\r\n this.dialogVisible = true\r\n this.details = data\r\n },\r\n\r\n handleSelect(selection) {},\r\n loadData(param, cb) {\r\n if (this.isShow) {\r\n // this.$refs.projectInfo.getProjectData(this.searchForm.createTime)\r\n }\r\n let query = []\r\n let search = {\r\n projectName: this.searchForm.projectName,\r\n project_type_: this.searchForm.projectType,\r\n CREATE_TIME_: this.searchForm.createTime,\r\n year_month_: this.searchForm.yearMonth,\r\n }\r\n if (!this.isShow) {\r\n search.ID_ = this.pid\r\n delete search.CREATE_TIME_\r\n }\r\n for (let i in search) {\r\n if (search[i]) {\r\n if (i == 'CREATE_TIME_') {\r\n this.currentYear = this.searchForm.createTime\r\n this.beforeYear = this.currentYear - 1\r\n query.push(\r\n {\r\n group: 'createTimeGroup',\r\n operation: 'BETWEEN',\r\n parentGroup: '',\r\n property: 'commencement_time_',\r\n relation: 'OR',\r\n value: [\r\n `${search[i]}-01-01 00:00:00`,\r\n `${search[i]}-12-31 23:59:59`,\r\n ],\r\n }\r\n // {\r\n // group: 'createTimeSubGroup',\r\n // operation: 'LESS_EQUAL',\r\n // parentGroup: 'createTimeGroup',\r\n // property: 'commencement_time_',\r\n // relation: 'AND',\r\n // value: `${search[i]}-12-31 23:59:59`,\r\n // },\r\n // {\r\n // group: 'createTimeSubGroup',\r\n // operation: 'LESS',\r\n // parentGroup: 'createTimeGroup',\r\n // property: 'PROJECT_STATUS_',\r\n // relation: 'AND',\r\n // value: '12',\r\n // }\r\n )\r\n } else if (i == 'year_month_') {\r\n let lastDate = search[i][1]\r\n let str = lastDate.split('-')\r\n let year = parseInt(str[0])\r\n let month = parseInt(str[1])\r\n let date = new Date(year, month, 0).getDate()\r\n let arr = [\r\n `${search[i][0]}-01 00:00:00`,\r\n `${search[i][1]}-${date} 23:59:59`,\r\n ]\r\n query.push(\r\n {\r\n group: 'createTimeGroup',\r\n operation: 'BETWEEN',\r\n parentGroup: '',\r\n property: 'commencement_time_',\r\n relation: 'OR',\r\n value: arr,\r\n },\r\n {\r\n group: 'createTimeSubGroup',\r\n operation: 'LESS_EQUAL',\r\n parentGroup: 'createTimeGroup',\r\n property: 'commencement_time_',\r\n relation: 'AND',\r\n value: arr[1],\r\n },\r\n {\r\n group: 'createTimeSubGroup',\r\n operation: 'LESS',\r\n parentGroup: 'createTimeGroup',\r\n property: 'PROJECT_STATUS_',\r\n relation: 'AND',\r\n value: '12',\r\n }\r\n )\r\n } else if (i == 'projectName') {\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 } else {\r\n query.push({\r\n group: 'advance',\r\n operation: 'EQUAL',\r\n property: i,\r\n relation: 'AND',\r\n value: search[i],\r\n })\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/ledger/investment/v1/page', param)\r\n .then(\r\n (resp) => {\r\n // \r\n let response = resp.data.value\r\n // response.data.forEach(item => {\r\n // if(item.engineeringCost && item.engineeringCost!=='0'){\r\n // item.engineeringCost= FormMath.tofixed(\r\n // FormMath.toNumber(item.engineeringCost) / 10000,\r\n // 2\r\n // )\r\n // }\r\n // // if(item.twoTypePrice && item.twoTypePrice!=='0'){\r\n // // item.twoTypePrice= FormMath.tofixed(\r\n // // FormMath.toNumber(item.twoTypePrice) / 10000,\r\n // // 2\r\n // // )\r\n // // }\r\n // if(item.landPrice!==0){\r\n // item.landPrice= FormMath.tofixed(\r\n // FormMath.toNumber(item.landPrice) / 10000,\r\n // 2\r\n // )\r\n // }\r\n // item.monthCount.forEach(item1 => {\r\n // item1.currentInvestment = FormMath.tofixed(\r\n // FormMath.toNumber(item1.currentInvestment) / 10000,\r\n // 2\r\n // )\r\n // item1.totalInvestment = FormMath.tofixed(\r\n // FormMath.toNumber(item1.totalInvestment) / 10000,\r\n // 2\r\n // )\r\n // })\r\n // })\r\n this.data = response.data\r\n this.pageResult = {\r\n page: response.page,\r\n pageSize: response.pageSize,\r\n total: response.total,\r\n }\r\n this.getYearTotal()\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 landManager(id) {\r\n this.landManagerDialog.form = {\r\n landUnit: 1,\r\n }\r\n this.landManagerDialog.form.id = id\r\n this.landManagerDialog.show = true\r\n },\r\n handleLandManagerSubmit() {\r\n this.landManagerDialog.loading = true\r\n let params = this.landManagerDialog.form\r\n this.$http\r\n .post('${cqxy}/biz/projectManagement/pm/v1/updateLandCostById', params)\r\n .then((res) => {\r\n if (res.data.state) {\r\n this.$message.success(res.data.message)\r\n this.landManagerDialog.show = false\r\n this.$refs.AtTable.load()\r\n } else {\r\n this.$message.error(res.data.message)\r\n }\r\n this.landManagerDialog.loading = false\r\n })\r\n .catch((err) => {\r\n this.landManagerDialog.loading = false\r\n this.$message.error(err.data.message)\r\n })\r\n },\r\n // handleCheckAllChange(val) {\r\n // this.checkedMonthsList = val ? monthOptions : []\r\n // this.checkedMonths = val ? monthOptions : []\r\n // this.isIndeterminate = false\r\n // this.$refs.AtTable.load()\r\n // this.$nextTick(() => {\r\n // this.$refs.AtTable.doLayout()\r\n // })\r\n // },\r\n // handleCheckedMonthsChange(value) {\r\n // value = value && value.sort(this.sortNumber)\r\n // this.checkedMonthsList = value\r\n // let checkedCount = value.length\r\n // this.checkAll = checkedCount === this.months.length\r\n // this.isIndeterminate =\r\n // checkedCount > 0 && checkedCount < this.months.length\r\n // this.$refs.AtTable.load()\r\n // this.$nextTick(() => {\r\n // this.$refs.AtTable.doLayout()\r\n // })\r\n // },\r\n sortNumber(a, b) {\r\n return a - b\r\n },\r\n // getIsShowMonth(arr) {\r\n // let arr_ = [new Date().getMonth(), new Date().getMonth() + 1]\r\n // return arr.length !== 0 ? arr : this.isIndeterminate ? arr_ : []\r\n // }\r\n },\r\n}\r\n",null]}