| | |
| | | <template> |
| | | <el-card class="card-container"> |
| | | <div class="flex justify-between mb-4"> |
| | | <div class="flex-container mb-4"> |
| | | <el-tabs v-model="currentTab" @tab-click="handleClick"> |
| | | <el-tab-pane |
| | | v-for="item in TABS_DATA" |
| | |
| | | :label="item.label" |
| | | :name="item.value" |
| | | > |
| | | <template slot="label"> |
| | | <div class="text-sm">{{ item.label }}</div> |
| | | <template slot-scope="item"> |
| | | <div class="tab-label">{{ item.label }}</div> |
| | | </template> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | <component :is="componentName" ref="childRef" :disabled="disabled" class="w-full h-[calc(100%-55px)]" /> |
| | | <div v-if="!disabled" class="mt-[3%] ml-[3%] flex"> |
| | | <el-button class="w-[72px]" type="primary" @click="submit">保存</el-button> |
| | | <el-button class="w-[72px]" @click="reset">重置</el-button> |
| | | <!-- <el-button v-else class="w-[72px]" @click="cancel">取消</el-button> --> |
| | | <component |
| | | :is="componentName" |
| | | ref="childRef" |
| | | :disabled="disabled" |
| | | class="full-width custom-height" |
| | | /> |
| | | <div v-if="!disabled" class="button-container"> |
| | | <el-button class="save-button" type="primary" @click="submit">保存</el-button> |
| | | <el-button class="reset-button" @click="reset">重置</el-button> |
| | | <!-- <el-button v-else class="cancel-button" @click="cancel">取消</el-button> --> |
| | | </div> |
| | | </el-card> |
| | | </template> |
| | | |
| | | <script> |
| | | import BasicInfo from '@/views/projectEngineering/projectLibrary/component/BasicInfo'; |
| | | // import InvestInfo from '@/components/InvestInfo.vue'; |
| | | // import InvestmentFunds from '@/components/investmentFunds.vue'; |
| | | // import LegalPerson from '@/components/legalPerson.vue'; |
| | | import InvestInfo from '@/views/projectEngineering/projectLibrary/component/InvestInfo'; |
| | | import InvestmentFunds from '@/views/projectEngineering/projectLibrary/component/investmentFunds'; |
| | | import LegalPerson from '@/views/projectEngineering/projectLibrary/component//legalPerson'; |
| | | // import PolicyInfo from '@/components/PolicyInfo.vue'; |
| | | // import DocumentsInfo from '@/components/DocumentsInfo.vue'; |
| | | import { addProject, getProject, updateProject, getProjectCode } from '@/api/projectInfo'; |
| | |
| | | currentTab: '项目管理基础信息', |
| | | id: this.$route.query.id || '', |
| | | disabled: false, |
| | | componentName: 'BasicInfo', |
| | | componentName: BasicInfo, |
| | | TABS_DATA: [ |
| | | { |
| | | label: '项目管理基础信息', |
| | |
| | | { |
| | | label: '投资管理基础信息', |
| | | value: '任务下发', |
| | | componentName: 'InvestInfo' |
| | | componentName: InvestInfo |
| | | }, |
| | | { |
| | | label: ' 项目投资及资金来源', |
| | | value: '项目投资及资金来源', |
| | | componentName: 'InvestmentFunds' |
| | | componentName: InvestmentFunds |
| | | }, |
| | | { |
| | | label: '项目(法人)单位登记信息', |
| | | value: '项目(法人)单位登记信息', |
| | | componentName: 'LegalPerson' |
| | | componentName: LegalPerson |
| | | }, |
| | | { |
| | | label: '投资项目产业政策符合情况', |
| | |
| | | this.getProjectInfo(this.id); |
| | | } else { |
| | | this.getProjectCodeApi(); |
| | | // 假设 resetPlanLibrary 是一个方法,用于重置状态 |
| | | this.resetPlanLibrary(); |
| | | this.fileList = []; |
| | | this.fileIdList = []; |
| | |
| | | </script> |
| | | |
| | | <style scoped> |
| | | /* 你的样式 */ |
| | | |
| | | ::v-deep .el-tabs__nav-wrap::after { |
| | | background-color: rgba(0, 0, 0, 0) !important; |
| | | } |
| | | .flex-container { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | margin-bottom: 16px; |
| | | } |
| | | |
| | | .tab-label { |
| | | font-size: 14px; |
| | | } |
| | | |
| | | .full-width { |
| | | width: 100%; |
| | | } |
| | | |
| | | .custom-height { |
| | | height: calc(100% - 55px); |
| | | } |
| | | |
| | | .button-container { |
| | | margin-top: 3%; |
| | | margin-left: 3%; |
| | | display: flex; |
| | | } |
| | | |
| | | .save-button, |
| | | .reset-button { |
| | | width: 72px; |
| | | } |
| | | </style> |