From 76fb875dc5aa7ded6d5737c3223951cd11ded366 Mon Sep 17 00:00:00 2001 From: fuliqi <fuliqi@qq.com> Date: 星期四, 28 十一月 2024 02:48:00 +0800 Subject: [PATCH] 投资金额 --- src/views/projectEngineering/projectLibrary/component/investmentFunds.vue | 138 +++++++++++++++++----- src/api/projectEngineering/projectInvestmentPolicyCompliance.js | 30 ++-- src/views/projectEngineering/projectLibrary/component/BasicInfo.vue | 88 ++++++++------ src/api/projectEngineering/projectInvestmentFunding.js | 30 ++-- src/views/projectEngineering/projectLibrary/component/InvestInfo.vue | 21 +- src/api/projectEngineering/projectUnitRegistrationInfo.js | 30 ++-- 6 files changed, 210 insertions(+), 127 deletions(-) diff --git a/src/api/projectEngineering/projectInvestmentFunding.js b/src/api/projectEngineering/projectInvestmentFunding.js index 2f77325..4343779 100644 --- a/src/api/projectEngineering/projectInvestmentFunding.js +++ b/src/api/projectEngineering/projectInvestmentFunding.js @@ -1,9 +1,9 @@ -import axios from "./request"; +import request from '@/utils/request' // 鑾峰彇椤圭洰鎶曡祫鍙婅祫閲戞潵婧愭儏鍐佃〃鍒嗛〉 export const getProjectInvestmentFundings = (params) => { - return axios({ - url: "/api/project-investment-funding/page", + return request({ + url: "/project/investmentFunding/page", method: "GET", params: params }) @@ -11,32 +11,32 @@ // 鑾峰彇椤圭洰鎶曡祫鍙婅祫閲戞潵婧愭儏鍐佃〃鍒楄〃 export const getProjectInvestmentFundingList = () => { - return axios({ - url: "/api/project-investment-funding/list", + return request({ + url: "/project/investmentFunding/list", method: "GET" }) } // 閫氳繃id鑾峰彇椤圭洰鎶曡祫鍙婅祫閲戞潵婧愭儏鍐佃〃 export const getProjectInvestmentFundingById = (params) => { - return axios({ - url: "/api/project-investment-funding/" + params, + return request({ + url: "/project/investmentFunding/" + params, method: "GET" }) } // 閫氳繃id鍒犻櫎椤圭洰鎶曡祫鍙婅祫閲戞潵婧愭儏鍐佃〃 export const deleteProjectInvestmentFundingById = (params) => { - return axios({ - url: "/api/project-investment-funding/" + params, + return request({ + url: "/project/investmentFunding/" + params, method: "DELETE" }) } // 鎵归噺鍒犻櫎椤圭洰鎶曡祫鍙婅祫閲戞潵婧愭儏鍐佃〃 export const deleteProjectInvestmentFundingByIds = (params) => { - return axios({ - url: "/api/project-investment-funding/batch", + return request({ + url: "project/investmentFunding/batch", method: "DELETE", data: params }) @@ -44,8 +44,8 @@ // 淇敼椤圭洰鎶曡祫鍙婅祫閲戞潵婧愭儏鍐佃〃 export const editProjectInvestmentFunding = (params) => { - return axios({ - url: "/api/project-investment-funding/", + return request({ + url: "/project/investmentFunding/", method: "PUT", data: params }) @@ -53,8 +53,8 @@ // 娣诲姞椤圭洰鎶曡祫鍙婅祫閲戞潵婧愭儏鍐佃〃 export const addProjectInvestmentFunding = (params) => { - return axios({ - url: "/api/project-investment-funding/", + return request({ + url: "/project/investmentFunding/", method: "POST", data: params }) diff --git a/src/api/projectEngineering/projectInvestmentPolicyCompliance.js b/src/api/projectEngineering/projectInvestmentPolicyCompliance.js index c83b8ee..d0b9b9c 100644 --- a/src/api/projectEngineering/projectInvestmentPolicyCompliance.js +++ b/src/api/projectEngineering/projectInvestmentPolicyCompliance.js @@ -1,9 +1,9 @@ -import axios from "./request"; +import request from '@/utils/request' // 鑾峰彇鎶曡祫椤圭洰浜т笟鏀跨瓥绗﹀悎鎯呭喌琛ㄥ垎椤� export const getProjectInvestmentPolicyCompliances = (params) => { - return axios({ - url: "/api/project-investment-policy-compliance/page", + return request({ + url: "/project/investmentPolicyCompliance/page", method: "GET", params: params }) @@ -11,32 +11,32 @@ // 鑾峰彇鎶曡祫椤圭洰浜т笟鏀跨瓥绗﹀悎鎯呭喌琛ㄥ垪琛� export const getProjectInvestmentPolicyComplianceList = () => { - return axios({ - url: "/api/project-investment-policy-compliance/list", + return request({ + url: "project/investmentPolicyCompliance/list", method: "GET" }) } // 閫氳繃id鑾峰彇鎶曡祫椤圭洰浜т笟鏀跨瓥绗﹀悎鎯呭喌琛� export const getProjectInvestmentPolicyComplianceById = (params) => { - return axios({ - url: "/api/project-investment-policy-compliance/" + params, + return request({ + url: "/project/investmentPolicyCompliance/" + params, method: "GET" }) } // 閫氳繃id鍒犻櫎鎶曡祫椤圭洰浜т笟鏀跨瓥绗﹀悎鎯呭喌琛� export const deleteProjectInvestmentPolicyComplianceById = (params) => { - return axios({ - url: "/api/project-investment-policy-compliance/" + params, + return request({ + url: "/project/investmentPolicyCompliance/" + params, method: "DELETE" }) } // 鎵归噺鍒犻櫎鎶曡祫椤圭洰浜т笟鏀跨瓥绗﹀悎鎯呭喌琛� export const deleteProjectInvestmentPolicyComplianceByIds = (params) => { - return axios({ - url: "/api/project-investment-policy-compliance/batch", + return request({ + url: "/project/investmentPolicyCompliance/batch", method: "DELETE", data: params }) @@ -44,8 +44,8 @@ // 淇敼鎶曡祫椤圭洰浜т笟鏀跨瓥绗﹀悎鎯呭喌琛� export const editProjectInvestmentPolicyCompliance = (params) => { - return axios({ - url: "/api/project-investment-policy-compliance/", + return request({ + url: "/project/investmentPolicyCompliance/", method: "PUT", data: params }) @@ -53,8 +53,8 @@ // 娣诲姞鎶曡祫椤圭洰浜т笟鏀跨瓥绗﹀悎鎯呭喌琛� export const addProjectInvestmentPolicyCompliance = (params) => { - return axios({ - url: "/api/project-investment-policy-compliance/", + return request({ + url: "/project/investmentPolicyCompliance/", method: "POST", data: params }) diff --git a/src/api/projectEngineering/projectUnitRegistrationInfo.js b/src/api/projectEngineering/projectUnitRegistrationInfo.js index 15c118b..2be1ab0 100644 --- a/src/api/projectEngineering/projectUnitRegistrationInfo.js +++ b/src/api/projectEngineering/projectUnitRegistrationInfo.js @@ -1,9 +1,9 @@ -import axios from "./request"; +import request from '@/utils/request' // 鑾峰彇椤圭洰锛堟硶浜猴級鍗曚綅鐧昏淇℃伅琛ㄥ垎椤� export const getProjectUnitRegistrationInfos = (params) => { - return axios({ - url: "/api/project-unit-registration-info/page", + return request({ + url: "/project/unitRegistrationInfo/page", method: "GET", params: params }) @@ -11,32 +11,32 @@ // 鑾峰彇椤圭洰锛堟硶浜猴級鍗曚綅鐧昏淇℃伅琛ㄥ垪琛� export const getProjectUnitRegistrationInfoList = () => { - return axios({ - url: "/api/project-unit-registration-info/list", + return request({ + url: "/project/unitRegistrationInfo/list", method: "GET" }) } // 閫氳繃id鑾峰彇椤圭洰锛堟硶浜猴級鍗曚綅鐧昏淇℃伅琛� export const getProjectUnitRegistrationInfoById = (params) => { - return axios({ - url: "/api/project-unit-registration-info/" + params, + return request({ + url: "/project/unitRegistrationInfo/" + params, method: "GET" }) } // 閫氳繃id鍒犻櫎椤圭洰锛堟硶浜猴級鍗曚綅鐧昏淇℃伅琛� export const deleteProjectUnitRegistrationInfoById = (params) => { - return axios({ - url: "/api/project-unit-registration-info/" + params, + return request({ + url: "/project/unitRegistrationInfo/" + params, method: "DELETE" }) } // 鎵归噺鍒犻櫎椤圭洰锛堟硶浜猴級鍗曚綅鐧昏淇℃伅琛� export const deleteProjectUnitRegistrationInfoByIds = (params) => { - return axios({ - url: "/api/project-unit-registration-info/batch", + return request({ + url: "/project/unitRegistrationInfo/batch", method: "DELETE", data: params }) @@ -44,8 +44,8 @@ // 淇敼椤圭洰锛堟硶浜猴級鍗曚綅鐧昏淇℃伅琛� export const editProjectUnitRegistrationInfo = (params) => { - return axios({ - url: "/api/project-unit-registration-info/", + return request({ + url: "/project/unitRegistrationInfo/", method: "PUT", data: params }) @@ -53,8 +53,8 @@ // 娣诲姞椤圭洰锛堟硶浜猴級鍗曚綅鐧昏淇℃伅琛� export const addProjectUnitRegistrationInfo = (params) => { - return axios({ - url: "/api/project-unit-registration-info/", + return request({ + url: "/project/unitRegistrationInfo/", method: "POST", data: params }) diff --git a/src/views/projectEngineering/projectLibrary/component/BasicInfo.vue b/src/views/projectEngineering/projectLibrary/component/BasicInfo.vue index cd4835a..11e6cbf 100644 --- a/src/views/projectEngineering/projectLibrary/component/BasicInfo.vue +++ b/src/views/projectEngineering/projectLibrary/component/BasicInfo.vue @@ -4,22 +4,24 @@ <el-row :gutter="20"> <el-col :span="6"> <el-form-item class="item" label="椤圭洰鍚嶇О" label-width="100px" prop="projectName"> - <el-input v-model.trim="projectForm.projectName" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="projectForm.projectName" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <el-form-item class="item" label="椤圭洰浠g爜" label-width="100px" prop="projectCode"> - <el-input v-model.trim="projectForm.projectCode" class="item" clearable disabled maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="projectForm.projectCode" class="item" clearable disabled maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="12" style="position: relative"> - <div style="width: 150px; position: absolute;"><img alt="" src="../../../../assets/images/s.png" /></div> + <div style="width: 150px; position: absolute;"><img alt="" src="../../../../assets/images/s.png"/></div> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="12"> <el-form-item class="item" label="寤鸿鍐呭" label-width="100px" prop="content"> - <el-input v-model.trim="projectForm.content" style="width: 100%;" clearable maxlength="255" placeholder="璇疯緭鍏�" type="textarea" /> + <el-input v-model.trim="projectForm.content" style="width: 100%;" clearable maxlength="255" + placeholder="璇疯緭鍏�" type="textarea"/> </el-form-item> </el-col> </el-row> @@ -42,14 +44,15 @@ </el-col> <el-col :span="6"> <el-form-item label="椤圭洰闃舵" label-width="100px" prop="fundsType" style="width: 100%"> - <el-input v-model.trim="projectForm.projectPhase" class="item" clearable disabled maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="projectForm.projectPhase" class="item" clearable disabled maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="6"> <el-form-item label="椤圭洰绫诲瀷" label-width="100px" prop="projectType" style="width: 100%"> - <el-select v-model="projectForm.projectType" clearable placeholder="璇烽�夋嫨" style="width: 100%" > + <el-select v-model="projectForm.projectType" clearable placeholder="璇烽�夋嫨" style="width: 100%"> <el-option v-for="item in dict.type.sys_project_type" :key="item.value" :label="item.label" :value="item.value"/> </el-select> @@ -57,7 +60,7 @@ </el-col> <el-col :span="6"> <el-form-item label="椤圭洰鐘舵��" label-width="100px" prop="projectstatus" style="width: 100%"> - <el-select v-model="projectForm.projectStatus"clearable placeholder="璇烽�夋嫨" style="width: 100%"> + <el-select v-model="projectForm.projectStatus" clearable placeholder="璇烽�夋嫨" style="width: 100%"> <el-option v-for="item in dict.type.sys_project_status" :key="item.value" :label="item.label" :value="item.value"/> </el-select> @@ -65,28 +68,31 @@ </el-col> <el-col :span="6"> <el-form-item label="椤圭洰涓氫富鍗曚綅" label-width="100px" prop="projectOwnerUnit" style="width: 100%"> - <el-input v-model.trim="projectForm.projectOwnerUnit" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="projectForm.projectOwnerUnit" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="6"> - <el-form-item label="椤圭洰鑱旂郴浜�" label-width="100px" prop="projectContactPerson" style="width: 100%"> - <el-input v-model.trim="projectForm.projectContactPerson" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-form-item label="椤圭洰鑱旂郴浜�" label-width="100px" prop="projectContactPerson" style="width: 100%"> + <el-input v-model.trim="projectForm.projectContactPerson" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="鑱旂郴鏂瑰紡" label-width="100px" prop="contact" style="width: 100%"> - <el-input v-model.trim="projectForm.contact" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="projectForm.contact" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <!-- TODO锛氭殏鏃朵笉鍋� --> <el-form-item label="鍏宠仈宸ョ▼" label-width="100px" prop="engineering" style="width: 100%"> <!-- <el-input v-model.trim="getEngineeringName" class="item" clearable disabled maxlength="255" placeholder="璇峰湪宸ョ▼涓�夋嫨椤圭洰" />--> - <el-select v-model="projectForm.engineeringIdList" :multiple="true" collapse-tags placeholder="璇烽�夋嫨" style="width: 100%"> - <el-option v-for="item in selectOptions" :key="item.id" :label="item.engineeringName" :value="item.id" /> -<!-- <RemoteSelect v-if="selectOptions.length" :hasMore="hasMore" :loading="loading" :page="page" @loadMore="handleLoadMore" />--> + <el-select v-model="projectForm.engineeringIdList" :multiple="true" collapse-tags placeholder="璇烽�夋嫨" + style="width: 100%"> + <el-option v-for="item in selectOptions" :key="item.id" :label="item.engineeringName" :value="item.id"/> + <!-- <RemoteSelect v-if="selectOptions.length" :hasMore="hasMore" :loading="loading" :page="page" @loadMore="handleLoadMore" />--> </el-select> </el-form-item> </el-col> @@ -103,10 +109,10 @@ collapse-tags @change="changeDepartment"> <el-option - v-for ="item in approvalList" - :key="item.id" - :value="item.id" - :label="item.value" + v-for="item in approvalList" + :key="item.id" + :value="item.id" + :label="item.value" /> </el-select> </el-form-item> @@ -118,7 +124,7 @@ clearable placeholder="璇烽�夋嫨" style="width: 100%" - > + > <el-option v-for="item in dict.type.sys_administrative_divisions" :key="item.value" :label="item.label" :value="item.value"/> </el-select> @@ -157,8 +163,8 @@ </el-col> <el-col :span="6"> <el-form-item label="鎶曡祫绫诲埆" label-width="100px" style="width: 100%"> - <el-input v-model="largeCategory" clearable disabled placeholder="璇烽�夋嫨澶х被" style="width: 49%" /> - <el-input v-model="subclass" clearable disabled placeholder="璇烽�夋嫨灏忕被" style="width: 49%;margin-left: 2%" /> + <el-input v-model="largeCategory" clearable disabled placeholder="璇烽�夋嫨澶х被" style="width: 49%"/> + <el-input v-model="subclass" clearable disabled placeholder="璇烽�夋嫨灏忕被" style="width: 49%;margin-left: 2%"/> </el-form-item> </el-col> <el-col :span="6"> @@ -191,7 +197,6 @@ placeholder="閫夋嫨鏃堕棿" style="width: 100%" type="date" - @change="chaneStartWork" value-format="yyyy-MM-dd HH:mm:ss"/> </el-form-item> </el-col> @@ -208,12 +213,13 @@ <el-row :gutter="20"> <el-col :span="6"> <el-form-item label="涓爣鍗曚綅" label-width="100px" prop="setTime" style="width: 100%"> - <el-input v-model.trim="projectForm.winUnit" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="projectForm.winUnit" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="涓爣閲戦" label-width="100px" style="width: 100%"> - <el-input v-model.trim="projectForm.winAmount" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" type="number" /> + <el-input v-model.trim="projectForm.winAmount" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" + type="number"/> </el-form-item> </el-col> <el-col :span="6"> @@ -242,7 +248,8 @@ </el-col> <el-col :span="6"> <el-form-item label="骞村害鎶曡祫閲戦" label-width="100px" prop="company" style="width: 100%; min-width: 260px"> - <el-input v-model.trim="projectForm.yearInvestAmount" clearable maxlength="255" placeholder="璇疯緭鍏�" style="width: 90%" type="number" /> + <el-input v-model.trim="projectForm.yearInvestAmount" clearable maxlength="255" placeholder="璇疯緭鍏�" + style="width: 90%" type="number"/> <span style="margin-left: 2px">鍏�</span> </el-form-item> </el-col> @@ -251,9 +258,10 @@ <el-col :span="18"> <el-form-item label="椤圭洰鍦板潃:" label-width="100px" prop="medicalAddr" style="width: 100%"> <div class="input-row"> - <el-input v-model.trim="projectForm.projectAddress" class="input-item" disabled maxlength="255" placeholder="璇疯緭鍏�"></el-input> + <el-input v-model.trim="projectForm.projectAddress" class="input-item" disabled maxlength="255" + placeholder="璇疯緭鍏�"></el-input> <div v-if="!disabled" class="map-btn" @click="dialogMap = true"> - <img alt="" src="@/assets/images/positionl.png" /> + <img alt="" src="@/assets/images/positionl.png"/> </div> </div> </el-form-item> @@ -293,12 +301,12 @@ // import { getList } from '@/api/engineeringLibrary/index'; // import RemoteSelect from '@/components/RemoteSelect/index.vue'; import Cookies from "js-cookie"; -import { addProject, getProject, updateProject, getProjectCode } from '@/api/projectEngineering/projectInfo'; +import {addProject, getProject, updateProject, getProjectCode} from '@/api/projectEngineering/projectInfo'; import {approvalList} from "@/api/system/dept"; export default { - dicts: ['sys_funding_type', 'sys_investment_type', 'sys_project_type', 'sys_project_status','sys_competent_department' - ,'sys_administrative_divisions','sys_centralized_management','sys_approval_type','sys_key_categories','sys_annual_plan'], + dicts: ['sys_funding_type', 'sys_investment_type', 'sys_project_type', 'sys_project_status', 'sys_competent_department' + , 'sys_administrative_divisions', 'sys_centralized_management', 'sys_approval_type', 'sys_key_categories', 'sys_annual_plan'], components: { Map, // UploadStandard, @@ -364,18 +372,18 @@ loading: false, hasMore: true, selectOptions: [], - accept: ['pdf', 'docx', 'xlsx', 'jpg','jpeg'], + accept: ['pdf', 'docx', 'xlsx', 'jpg', 'jpeg'], largeCategory: '', subclass: '', mapCreateInfo: {}, demoFormRef: null, rules: { - projectName: [{ required: true, message: '璇疯緭鍏ラ」鐩悕绉�', trigger: 'blur' }] + projectName: [{required: true, message: '璇疯緭鍏ラ」鐩悕绉�', trigger: 'blur'}] } }; }, computed: { - dialogMapList () { + dialogMapList() { return [{ addr: this.projectForm.projectAddress, name: '鍒涘缓' @@ -383,15 +391,13 @@ }, }, created() { + this.projectForm.id = this.$route.query.projectId; const projectForm = Cookies.get("projectForm"); if (projectForm) { - this.projectForm = JSON.parse(projectForm); + this.projectForm = JSON.parse(projectForm); } else { //鍒濆鍖栦富绠¢儴闂ㄤ笅鎷夋 this.getApprovalList(); - if(this.$route.query.projectId) { - this.projectForm.id = this.$route.query.projectId; - } // 鍦ㄧ粍浠跺垱寤烘椂鑾峰彇椤圭洰淇℃伅锛屽鏋� projectId 瀛樺湪 if (this.projectForm.id) { this.getProjectInfo(this.projectForm.id); @@ -402,7 +408,7 @@ } }, beforeDestroy() { - Cookies.set("projectForm",JSON.stringify(this.projectForm)); + Cookies.set("projectForm", JSON.stringify(this.projectForm)); }, methods: { getProjectInfo(id) { @@ -459,7 +465,7 @@ async loadDataList(newPage) { try { this.loading = true; - const res = await getList({ pageNum: newPage, pageSize: 10000 }); + const res = await getList({pageNum: newPage, pageSize: 10000}); const list = res.rows || []; if (newPage === 1) { this.selectOptions = []; @@ -486,7 +492,7 @@ }, mapCreateClick() { console.log("鍒涘缓") - const { lon, lat, addr } = this.mapCreateInfo; + const {lon, lat, addr} = this.mapCreateInfo; if (lon && lat && addr) { this.projectForm.longitude = lon; this.projectForm.latitude = lat; @@ -524,10 +530,12 @@ .item { width: 100%; } + .map_div { width: 100%; height: 643px; } + .input-row { display: flex; width: 100%; diff --git a/src/views/projectEngineering/projectLibrary/component/InvestInfo.vue b/src/views/projectEngineering/projectLibrary/component/InvestInfo.vue index d792807..0e7abec 100644 --- a/src/views/projectEngineering/projectLibrary/component/InvestInfo.vue +++ b/src/views/projectEngineering/projectLibrary/component/InvestInfo.vue @@ -11,7 +11,7 @@ style="width: 100%" > <el-option v-for="item in dict.type.sys_cross_domain" :key="item.value" :label="item.label" - :value="item.value"/> + :value="parseInt(item.value)"/> </el-select> </el-form-item> </el-col> @@ -46,7 +46,7 @@ style="width: 100%" > <el-option v-for="item in dict.type.sys_whether_project" :key="item.value" :label="item.label" - :value="item.value"/> + :value="parseInt(item.value)"/> </el-select> </el-form-item> </el-col> @@ -137,7 +137,7 @@ style="width: 100%" > <el-option v-for="item in dict.type.sys_whether_project" :key="item.value" :label="item.label" - :value="item.value"/> + :value="parseInt(item.value)"/> </el-select> </el-form-item> </el-col> @@ -200,7 +200,7 @@ useEarth: '', contentScale: '', code: '', - projectId: '' + projectId: '', }, plannedStartDate: '', expectedCompletionDate: '', @@ -212,7 +212,8 @@ sys_administrative_divisions: [] }; }, - mounted() { + created() { + this.investmentForm.projectId = this.$route.query.projectId // 浠嶤ookies涓幏鍙栫紦瀛樻暟鎹� const investmentForm = Cookies.get("investmentForm"); const projectForm = Cookies.get("projectForm"); @@ -222,11 +223,11 @@ const parsedProjectForm = projectForm ? JSON.parse(projectForm) : null; // 璁剧疆investment鍜宲rojectForm瀵硅薄 - this.investmentForm = parsedInvestmentForm || {}; - this.projectForm = parsedProjectForm || {}; + if(parsedInvestmentForm) this.investmentForm = parsedInvestmentForm; + if(parsedProjectForm) this.projectForm = parsedProjectForm; - // 濡傛灉projectForm瀛樺湪id涓旀病鏈夌紦瀛橈紝鍒欒皟鐢╝pi - if (this.projectForm.id && !investmentForm) { + // 濡傛灉璺敱瀛樺湪id涓旀病鏈夌紦瀛橈紝瑙嗕负缂栬緫鎴栨煡鐪嬶紝璋冪敤api + if (this.investmentForm.projectId && !investmentForm) { this.getInvestment(); } this.investmentForm.constructionLocation = this.projectForm.area; @@ -239,7 +240,7 @@ }, methods: { getInvestment() { - getProjectInvestmentInfoById(this.investmentForm.id).then(res => { + getProjectInvestmentInfoById(this.investmentForm.projectId ).then(res => { this.investmentForm = res.data; }); }, diff --git a/src/views/projectEngineering/projectLibrary/component/investmentFunds.vue b/src/views/projectEngineering/projectLibrary/component/investmentFunds.vue index 071f4a2..f8caabf 100644 --- a/src/views/projectEngineering/projectLibrary/component/investmentFunds.vue +++ b/src/views/projectEngineering/projectLibrary/component/investmentFunds.vue @@ -1,161 +1,188 @@ <template> <div class="basic-info"> - <el-form ref="demoFormRef" :disabled="disabled" :model="investmentFunds" class="dialog_form"> + <el-form ref="demoFormRef" :disabled="disabled" :model="investmentFundsForm" class="dialog_form"> <!-- 淇濇寔鍘熸湁妯℃澘鍐呭涓嶅彉 --> <el-row :gutter="20"> <el-col :span="6"> <el-form-item label="椤圭洰鎬绘姇璧勯" label-width="130px" prop="fundsType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.totalInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.totalInvestment" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="椤圭洰鏈噾" label-width="130px" prop="investmentType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.principal" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.principal" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="涓�銆佹斂搴滄姇璧�" label-width="130px" prop="projectType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.governmentInvestmentTotal" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.governmentInvestmentTotal" class="item" clearable + maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="锛堜竴锛変腑澶姇璧�" label-width="130px" prop="projectType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.centralInvestmentTotal" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.centralInvestmentTotal" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="6"> <el-form-item label="1.涓ぎ棰勭畻鎶曡祫" label-width="130px" prop="fundsType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.centralBudgetInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.centralBudgetInvestment" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="2.涓ぎ璐㈡斂" label-width="130px" prop="investmentType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.centralFiscalInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.centralFiscalInvestment" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> - <el-form-item class="items" label="3.涓ぎ涓撻」鍊哄埜绛归泦鐨勪笓椤瑰缓璁捐祫閲�" label-width="130px" prop="investmentType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.centralSpecialBondInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-form-item class="items" label="3.涓ぎ涓撻」鍊哄埜绛归泦鐨勪笓椤瑰缓璁捐祫閲�" label-width="130px" prop="investmentType" + style="width: 100%"> + <el-input v-model.trim="investmentFundsForm.centralSpecialBondInvestment" class="item" clearable + maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="4.涓ぎ涓撻」寤鸿鍩洪噾" label-width="130px" prop="engineering" style="width: 100%"> - <el-input v-model.trim="investmentFunds.centralSpecialFundInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.centralSpecialFundInvestment" class="item" clearable + maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="锛堜簩锛夌渷绾ф姇璧�" label-width="130px" prop="engineering" style="width: 100%"> - <el-input v-model.trim="investmentFunds.provincialInvestmentTotal" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.provincialInvestmentTotal" class="item" clearable + maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="6"> <el-form-item label="1.鐪侀绠楀唴鎶曡祫" label-width="130px" prop="fundsType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.provincialBudgetInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.provincialBudgetInvestment" class="item" clearable + maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="2.鐪佽储鏀挎�у缓璁炬姇璧�" label-width="130px" prop="investmentType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.provincialFiscalInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.provincialFiscalInvestment" class="item" clearable + maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="3.鐪佷笓椤瑰缓璁捐祫閲�" label-width="130px" prop="investmentType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.provincialSpecialFundInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.provincialSpecialFundInvestment" class="item" clearable + maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="锛堜笁锛夊競(宸�)鎶曡祫" label-width="130px" prop="engineering" style="width: 100%"> - <el-input v-model.trim="investmentFunds.cityInvestmentTotal" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.cityInvestmentTotal" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="6"> <el-form-item label="1.甯�(宸�)棰勭畻鍐呮姇璧�" label-width="130px" prop="fundsType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.cityBudgetInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.cityBudgetInvestment" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="2.甯�(宸�)璐㈡斂鎬ф姇璧�" label-width="130px" prop="investmentType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.cityFiscalInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.cityFiscalInvestment" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="3.甯�(宸�)涓撻」璧勯噾" label-width="130px" prop="investmentType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.citySpecialFundInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.citySpecialFundInvestment" class="item" clearable + maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="锛堝洓锛夊幙(甯傘�佸尯)鎶曡祫" label-width="130px" prop="engineering" style="width: 100%"> - <el-input v-model.trim="investmentFunds.countyInvestmentTotal" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.countyInvestmentTotal" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="6"> <el-form-item label="1.鍖�(鍘�)棰勭畻鍐呮姇璧�" label-width="130px" prop="fundsType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.countyBudgetInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.countyBudgetInvestment" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> - <el-form-item class="items" label="2.鍖猴紙鍘匡級璐㈡斂鎬у缓璁捐祫閲�" label-width="130px" prop="investmentType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.countyFiscalInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-form-item class="items" label="2.鍖猴紙鍘匡級璐㈡斂鎬у缓璁捐祫閲�" label-width="130px" prop="investmentType" + style="width: 100%"> + <el-input v-model.trim="investmentFundsForm.countyFiscalInvestment" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="3.鍖�(鍘�)涓撻」璧勯噾" label-width="130px" prop="investmentType" style="width: 100%"> - <el-input v-model.trim="investmentFunds.countySpecialFundInvestment" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.countySpecialFundInvestment" class="item" clearable + maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="浜屻�佸浗鍐呰捶娆�" label-width="130px" prop="engineering" style="width: 100%"> - <el-input v-model.trim="investmentFunds.domesticLoanTotal" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.domesticLoanTotal" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="閾惰璐锋" label-width="130px" prop="engineering" style="width: 100%"> - <el-input v-model.trim="investmentFunds.bankLoan" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.bankLoan" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="涓夈�佸鍟嗘姇璧�" label-width="130px" prop="engineering" style="width: 100%"> - <el-input v-model.trim="investmentFunds.foreignInvestmentTotal" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.foreignInvestmentTotal" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="鍥涖�佷紒涓氳嚜绛�" label-width="130px" prop="engineering" style="width: 100%"> - <el-input v-model.trim="investmentFunds.enterpriseSelfRaisedTotal" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.enterpriseSelfRaisedTotal" class="item" clearable + maxlength="255" placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="18"> <el-form-item label="浜斻�佸叾浠栨姇璧�" label-width="130px" prop="engineering" style="width: 100%"> - <el-input v-model.trim="investmentFunds.otherInvestmentTotal" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + <el-input v-model.trim="investmentFundsForm.otherInvestmentTotal" class="item" clearable maxlength="255" + placeholder="璇疯緭鍏�"/> </el-form-item> </el-col> </el-row> @@ -164,6 +191,13 @@ </template> <script> +import Cookies from "js-cookie"; +import { + addProjectInvestmentFunding, + editProjectInvestmentFunding, + getProjectInvestmentFundingById +} from "@/api/projectEngineering/projectInvestmentFunding"; + export default { name: 'InvestmentFundsForm', props: { @@ -175,7 +209,10 @@ }, data() { return { - investmentFunds: { + projectForm: {}, + investmentFundsForm: { + id: '', + projectId: '', totalInvestment: '', principal: '', governmentInvestmentTotal: '', @@ -205,14 +242,51 @@ }; }, methods: { + getInvestmentFunds() { + getProjectInvestmentFundingById(this.investmentForm.projectId ).then(res => { + this.investmentFundsForm = res.data; + }); + }, submit() { - console.log("椤圭洰璧勯噾submit") + if (!this.projectForm.id) { + this.$message.error("璇峰厛淇濆瓨鎶曡祫绠$悊鍩烘湰淇℃伅") + } else { + this.investmentFundsForm.projectId = this.projectForm.id; + if (this.investmentFundsForm.id != null) { + editProjectInvestmentFunding(this.investmentFundsForm).then(response => { + this.$modal.msgSuccess("淇敼鎴愬姛"); + //璺宠浆鍒颁笅涓粍浠� + this.$emit('toNext', 3); + }); + } else { + addProjectInvestmentFunding(this.investmentFundsForm).then(response => { + this.$modal.msgSuccess("鏂板鎴愬姛"); + this.investmentFundsForm.id = response.data + //璺宠浆鍒颁笅涓粍浠� + this.$emit('toNext', 3); + }); + } + } }, }, created() { + this.investmentFundsForm.id = this.$route.query.projectId; + const investmentFundsForm = Cookies.get("investmentFundsForm"); + const projectForm = Cookies.get("projectForm"); + const parsedInvestmentForm = investmentFundsForm ? JSON.parse(investmentFundsForm) : null; + const parsedProjectForm = projectForm ? JSON.parse(projectForm) : null; + + this.investmentFundsForm = parsedInvestmentForm || {}; + this.projectForm = parsedProjectForm || {}; + // 濡傛灉璺敱瀛樺湪id涓旀病鏈夌紦瀛�,瑙嗕负缂栬緫鎴栨煡鐪嬶紝璋冪敤api + if (this.investmentFundsForm.projectId && !parsedInvestmentForm) { + this.getInvestmentFunds(); + } }, - + beforeDestroy() { + Cookies.set("investmentFundsForm", JSON.stringify(this.investmentFundsForm)); + }, } </script> @@ -246,7 +320,7 @@ } .items { - ::v-deep .el-form-item__label { + ::v-deep .el-form-item__label { line-height: 16px; text-align: right; } -- Gitblit v1.8.0