From abedc0c7a1a5b4b47d65d43a3d27fd8cb30c6848 Mon Sep 17 00:00:00 2001 From: luohairen <3399054449@qq.com> Date: 星期三, 27 十一月 2024 00:10:34 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/views/projectEngineering/projectLibrary/component/InvestInfo.vue | 294 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 294 insertions(+), 0 deletions(-) diff --git a/src/views/projectEngineering/projectLibrary/component/InvestInfo.vue b/src/views/projectEngineering/projectLibrary/component/InvestInfo.vue new file mode 100644 index 0000000..7b22b12 --- /dev/null +++ b/src/views/projectEngineering/projectLibrary/component/InvestInfo.vue @@ -0,0 +1,294 @@ +<template> + <div class="basic-info"> + <el-form ref="demoFormRef" :disabled="disabled" :model="investment" class="dialog_form"> + <el-row :gutter="20"> + <el-col :span="6"> + <el-form-item label="寤鸿鍦扮偣鏄惁璺ㄥ煙" label-width="120px" prop="fundsType" style="width: 100%"> + <el-select + v-model="investment.beCrossRegion" + clearable + placeholder="璇烽�夋嫨" + style="width: 100%" + > + <el-option v-for="item in dict.type.sys_cross_domain" :key="item.value" :label="item.label" + :value="item.value"/> + </el-select> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="椤圭洰寤鸿鍦扮偣" label-width="120px" prop="investmentType" style="width: 100%"> + <el-select + v-model="investment.constructionLocation" + 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> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="寤鸿璇︾粏鍦板潃" label-width="120px" prop="fundsType" style="width: 100%"> + <el-input v-model.trim="investment.detailedAddress" 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="120px" prop="projectType" style="width: 100%"> + <el-select + v-model="investment.beCompensationProject" + clearable + placeholder="璇烽�夋嫨" + style="width: 100%" + > + <el-option v-for="item in dict.type.sys_whether_project" :key="item.value" :label="item.label" + :value="item.value"/> + </el-select> + </el-form-item> + </el-col> + <el-col :span="12"> + <el-form-item label="琛ョ爜鍘熷洜" label-width="120px" prop="projectstatus" style="width: 100%"> + <el-input v-model.trim="investment.compensationReason" 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="120px" prop="plannedStartDate" style="width: 100%"> + <!-- <el-date-picker v-model="plannedStartDate" placeholder="閫夋嫨鏃堕棿" style="width: 100%" type="date" @change="chaneStartWork" />--> + <el-input v-model.trim="plannedStartDate" class="item" clearable disabled maxlength="255" placeholder="璇疯緭鍏�" /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="鎷熷缓鎴愭椂闂�" label-width="120px" prop="expectedCompletionDate" style="width: 100%"> + <!-- <el-date-picker v-model="expectedCompletionDate" placeholder="閫夋嫨鏃堕棿" style="width: 100%" type="date" @change="chaneCompleted" />--> + <el-input v-model.trim="expectedCompletionDate" class="item" clearable disabled maxlength="255" placeholder="璇疯緭鍏�" /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="鍥介檯琛屼笟鍒嗙被" label-width="120px" prop="engineering" style="width: 100%"> + <el-select + v-model="investment.nationalIndustryClassification" + clearable + placeholder="璇烽�夋嫨" + style="width: 100%" + > + <el-option v-for="item in dict.type.sys_whether_project" :key="item.value" :label="item.label" + :value="item.value"/> + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="6"> + <el-form-item label="鎵�灞炶涓氬垎绫�" label-width="120px" prop="department" style="width: 100%"> + <el-input v-model.trim="investment.industryClassification" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="椤圭洰寤烘垚鎬ц川" label-width="120px" prop="design" style="width: 100%"> + <el-select + v-model="investment.projectNature" + clearable + placeholder="璇烽�夋嫨" + style="width: 100%" + > + <el-option v-for="item in dict.type.sys_industry_belong" :key="item.value" :label="item.label" + :value="item.value"/> + </el-select> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="椤圭洰灞炴��" label-width="120px" prop="putUnder" style="width: 100%"> + <el-select + v-model="investment.projectAttribute" + clearable + placeholder="璇烽�夋嫨" + style="width: 100%" + > + <el-option v-for="item in dict.type.sys_project_attributes" :key="item.value" :label="item.label" + :value="item.value"/> + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="18"> + <el-form-item label="鏄惁浣跨敤鍦熷湴" label-width="120px" prop="approvalType" style="width: 100%"> + <el-select + v-model="investment.useEarth" + clearable + placeholder="璇烽�夋嫨" + style="width: 100%" + > + <el-option v-for="item in dict.type.sys_whether_project" :key="item.value" :label="item.label" + :value="item.value"/> + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="18"> + <el-form-item class="item" label="涓昏寤鸿鍐呭鍙婅妯�" label-width="120px" prop="content"> + <el-input v-model.trim="investment.contentScale" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" type="textarea" /> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="18"> + <el-form-item class="item" label="寤虹骞冲彴浠g爜" label-width="120px" prop="content"> + <el-input v-model.trim="investment.code" class="item" clearable maxlength="255" placeholder="璇疯緭鍏�" type="textarea" /> + </el-form-item> + </el-col> + </el-row> + </el-form> + </div> +</template> + +<script> +import { formatDate } from '@/utils'; + +export default { + dicts: ['sys_cross_domain','sys_administrative_divisions','sys_whether_project','sys_industry_belong','sys_project_attributes'], + name: 'InvestmentForm', + props: { + disabled: { + type: Boolean, + default: false, + required: true + } + }, + data() { + return { + investment: { + beCrossRegion: '', + constructionLocation: '', + detailedAddress: '', + beCompensationProject: '', + compensationReason: '', + plannedStartDate: '', + expectedCompletionDate: '', + nationalIndustryClassification: '', + industryClassification: '', + projectNature: '', + projectAttribute: '', + useEarth: '', + contentScale: '', + code: '', + projectId: '' + }, + projectForm: { + projectName: '', + projectCode: '', + projectType: '', + projectStatus: '1', + fundType: '', + investType: '', + importanceType: '', + projectPhase: '鍌ㄥ瑙勫垝闃舵', + tag: '', + competentDepartment: '', + projectLocation: '', + longitude: '', + latitude: '', + managementCentralization: '', + projectApplicationPhase: '', + projectApprovalType: '', + investmentCatalogue: '', + approvalPlan: '', + isSetProject: '', + setTime: '', + assignmentStatus: '', + area: '', + winTime: '', + winUnit: '', + winAmount: '', + address: '', + engineeringIdList: [], + content: '', + contact: '', + projectOwnerUnit: '', + planStartTime: '', + planCompleteTime: '', + projectContactPerson: '', + fileIdList: [], + sysOssVos: [], + engineeringInfos: [], + year: '', + yearInvestAmount: '', + competentDepartmentList: [], + managementCentralizationList: [] + }, + plannedStartDate: '', + expectedCompletionDate: '', + sys_cross_domain: [], + sys_industry_classification: [], + sys_industry_belong: [], + sys_project_attributes: [], + sys_whether_project: [], + sys_administrative_divisions: [] + }; + }, + mounted() { + this.updateFormData(); + }, + methods: { + chaneCompleted(val) { + if (!val) return; + this.investment.expectedCompletionDate = formatDate(val); + }, + chaneStartWork(val) { + if (!val) return; + this.investment.plannedStartDate = formatDate(val); + }, + updateFormData() { + if(this.projectForm) { + this.plannedStartDate = this.projectForm.planStartTime.slice(0, 10); + this.expectedCompletionDate = this.projectForm.planCompleteTime.slice(0, 10); + this.investment.constructionLocation = this.projectForm.area; + this.investment.detailedAddress = this.projectForm.address; + } + } + }, + watch: { + projectForm: { + deep: true, + handler() { + this.updateFormData(); + } + } + } +}; +</script> + +<style lang="scss" scoped> +.item { + width: 100%; +} + +.input-row { + display: flex; + width: 100%; + + .input-item { + width: 100%; + } +} + +.map-btn { + width: 32px; + height: 32px; + background: #c6d6ff; + border: 1px solid #3369ff; + display: flex; + justify-content: center; + align-items: center; + cursor: pointer; + + img { + width: 20px; + } +} +</style> -- Gitblit v1.8.0