明树Git Lab

Commit 754ee983 authored by chenron's avatar chenron

.common-container

parents eef91c57 cd2cfd16
...@@ -522,7 +522,7 @@ const handleNextClick = (val) => { ...@@ -522,7 +522,7 @@ const handleNextClick = (val) => {
:deep(.el-table) { :deep(.el-table) {
thead { thead {
color: var(--el-table-header-text-color); color: #000;
} }
.el-table__cell { .el-table__cell {
padding: 0; padding: 0;
......
...@@ -50,7 +50,6 @@ export function $post ({ url, data = {}, callback }) { ...@@ -50,7 +50,6 @@ export function $post ({ url, data = {}, callback }) {
console.log(err); console.log(err);
ElMessage.error(err.msg || "操作失败"); ElMessage.error(err.msg || "操作失败");
if (err && err.response && err.response.status === 401) { if (err && err.response && err.response.status === 401) {
store.commit("clearUserInfo");
router.replace("/login"); router.replace("/login");
} }
}); });
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<el-button type="primary" @click="commitClick">提交</el-button> <el-button type="primary" @click="commitClick">提交</el-button>
</div> </div>
</div> </div>
<div class="add-project-content"> <div class="add-project-content" v-loading="loading">
<el-tabs v-model="tabActiveName"> <el-tabs v-model="tabActiveName">
<el-tab-pane label="项目基本信息" name="项目基本信息"> <el-tab-pane label="项目基本信息" name="项目基本信息">
<div class="tab-content"> <div class="tab-content">
...@@ -29,8 +29,8 @@ ...@@ -29,8 +29,8 @@
<el-col :span="6"> <el-col :span="6">
<el-form-item label="是否再决策"> <el-form-item label="是否再决策">
<el-radio-group v-model="formData.sfzjc"> <el-radio-group v-model="formData.sfzjc">
<el-radio value="1"></el-radio> <el-radio :value="1"></el-radio>
<el-radio value="2"></el-radio> <el-radio :value="2"></el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -42,8 +42,8 @@ ...@@ -42,8 +42,8 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="是否能建联合体项目"> <el-form-item label="是否能建联合体项目">
<el-radio-group v-model="formData.sfnjlhtxm"> <el-radio-group v-model="formData.sfnjlhtxm">
<el-radio value="1"></el-radio> <el-radio :value="1"></el-radio>
<el-radio value="2"></el-radio> <el-radio :value="2"></el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="主业/非主业"> <el-form-item label="主业/非主业">
<el-select v-model="formData.financialStatementType" placeholder="请选择"> <el-select v-model="formData.zyfzy" placeholder="请选择">
<el-option v-for="item in zyList" :key="item.value" <el-option v-for="item in zyList" :key="item.value"
:label="item.value" :value="item.key" :label="item.value" :value="item.key"
></el-option> ></el-option>
...@@ -69,22 +69,22 @@ ...@@ -69,22 +69,22 @@
<el-col :span="6"> <el-col :span="6">
<el-form-item label="是否能建重大或重要投资"> <el-form-item label="是否能建重大或重要投资">
<el-radio-group v-model="formData.sfnjzdhzytz"> <el-radio-group v-model="formData.sfnjzdhzytz">
<el-radio value="1"></el-radio> <el-radio :value="1"></el-radio>
<el-radio value="2"></el-radio> <el-radio :value="2"></el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="是否自主决策"> <el-form-item label="是否自主决策">
<el-radio-group v-model="formData.sfzzjc"> <el-radio-group v-model="formData.sfzzjc">
<el-radio value="1"></el-radio> <el-radio :value="1"></el-radio>
<el-radio value="2"></el-radio> <el-radio :value="2"></el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="财务报表类型"> <el-form-item label="财务报表类型">
<el-select v-model="formData.financialStatementType" placeholder="请选择"> <el-select v-model="formData.cwbblx" placeholder="请选择">
<el-option v-for="item in cwbblxList" :key="item.value" <el-option v-for="item in cwbblxList" :key="item.value"
:label="item.value" :value="item.key" :label="item.value" :value="item.key"
></el-option> ></el-option>
...@@ -103,8 +103,8 @@ ...@@ -103,8 +103,8 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item label="是否履行标前预审程序"> <el-form-item label="是否履行标前预审程序">
<el-radio-group v-model="formData.sflxbqyscx"> <el-radio-group v-model="formData.sflxbqyscx">
<el-radio value="1"></el-radio> <el-radio :value="1"></el-radio>
<el-radio value="2"></el-radio> <el-radio :value="2"></el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -114,7 +114,7 @@ ...@@ -114,7 +114,7 @@
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="6"> <el-col :span="6">
<el-form-item label="境内/外"> <el-form-item label="境内/外">
<el-select v-model="formData.domesticOrOverseas" placeholder="请选择"> <el-select v-model="formData.jnw" placeholder="请选择">
<el-option v-for="item in jnwList" :key="item.value" <el-option v-for="item in jnwList" :key="item.value"
:label="item.value" :value="item.key" :label="item.value" :value="item.key"
></el-option> ></el-option>
...@@ -130,7 +130,7 @@ ...@@ -130,7 +130,7 @@
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-form-item label="地市(境内)/国家(境外)"> <el-form-item label="地市(境内)/国家(境外)">
<el-select v-model="formData.cityOrCountry" placeholder="请选择"> <el-select v-model="formData.dsjngjjw" placeholder="请选择">
<el-option label="1" value="1" /> <el-option label="1" value="1" />
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -349,99 +349,99 @@ ...@@ -349,99 +349,99 @@
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="项目公司落实批复信息" name="项目公司落实批复信息"> <el-tab-pane label="项目公司落实批复信息" name="项目公司落实批复信息">
<div class="tab-content"> <div class="tab-content">
<el-collapse v-model="activeCollapse"> <el-form :model="formData" :label-width="120" :disabled="isPreview">
<el-collapse-item title="建设规模(实物量指标)" name="建设规模(实物量指标)"> <el-collapse v-model="activeCollapse">
<div class="tab-handle"> <el-collapse-item title="建设规模(实物量指标)" name="建设规模(实物量指标)">
<el-button type="primary" size="small" @click="addSwlzb">新增</el-button> <div class="tab-handle">
</div> <el-button type="primary" size="small" @click="addSwlzb">新增</el-button>
<el-table :data="swlzbData" style="width: 100%" empty-text="暂无数据"> </div>
<el-table-column type="index" width="50" /> <el-table :data="swlzbData" style="width: 100%" empty-text="暂无数据" border>
<el-table-column prop="name" label="指标名称"> <el-table-column type="index" width="50" />
<template #default="scope"> <el-table-column prop="name" label="指标名称">
<el-input v-model="scope.row.name" /> <template #default="scope">
</template> <el-input v-model="scope.row.name" />
</el-table-column> </template>
<el-table-column prop="count" label="数量"> </el-table-column>
<template #default="scope"> <el-table-column prop="num" label="数量">
<el-input v-model="scope.row.count" type="number" /> <template #default="scope">
</template> <el-input v-model="scope.row.num" type="number" />
</el-table-column> </template>
<el-table-column prop="unit" label="单位"> </el-table-column>
<template #default="scope"> <el-table-column prop="unit" label="单位">
<el-input v-model="scope.row.unit" /> <template #default="scope">
</template> <el-input v-model="scope.row.unit" />
</el-table-column> </template>
<el-table-column prop="mark" label="补充说明"> </el-table-column>
<template #default="scope"> <el-table-column prop="bcsm" label="补充说明">
<el-input v-model="scope.row.mark" type="textarea" /> <template #default="scope">
</template> <el-input v-model="scope.row.bcsm" type="textarea" />
</el-table-column> </template>
<el-table-column label="操作" width="60"> </el-table-column>
<template #default="scope"> <el-table-column label="操作" width="60">
<el-button link type="danger" size="small" @click="deleteSwlzb(scope.$index)">删除</el-button> <template #default="scope">
</template> <el-button link type="danger" size="small" @click="deleteSwlzb(scope.$index)">删除</el-button>
</el-table-column> </template>
</el-table> </el-table-column>
</el-collapse-item> </el-table>
<el-collapse-item title="股东信息" name="股东信息"> </el-collapse-item>
<div class="tab-handle"> <el-collapse-item title="股东信息" name="股东信息">
<el-button type="primary" size="small" @click="addGdxx">新增</el-button> <div class="tab-handle">
</div> <el-button type="primary" size="small" @click="addGdxx">新增</el-button>
<el-table :data="gdxxData" style="width: 100%" empty-text="暂无数据"> </div>
<el-table-column type="index" width="50" /> <el-table :data="gdxxData" style="width: 100%" empty-text="暂无数据" border>
<el-table-column prop="type" label="股东类型"> <el-table-column type="index" width="50" />
<template #default="scope"> <el-table-column prop="gdlx" label="股东类型">
<el-select v-model="scope.row.type" placeholder="请选择"> <template #default="scope">
<el-option label="1" value="1"></el-option> <el-select v-model="scope.row.gdlx" placeholder="请选择">
</el-select> <el-option label="1" value="1"></el-option>
</template> </el-select>
</el-table-column> </template>
<el-table-column prop="name" label="股东名称"> </el-table-column>
<template #default="scope"> <el-table-column prop="gdmc" label="股东名称">
<el-select v-model="scope.row.name" placeholder="请选择"> <template #default="scope">
<el-option label="1" value="1"></el-option> <el-select v-model="scope.row.gdmc" placeholder="请选择">
</el-select> <el-option label="1" value="1"></el-option>
</template> </el-select>
</el-table-column> </template>
<el-table-column prop="percent" label="持股比例(%)"> </el-table-column>
<template #default="scope"> <el-table-column prop="cgbl" label="持股比例(%)">
<el-input v-model="scope.row.percent" type="number" /> <template #default="scope">
</template> <el-input v-model="scope.row.cgbl" type="number" />
</el-table-column> </template>
<el-table-column prop="cze" label="出资额(万元)"> </el-table-column>
<template #default="scope"> <el-table-column prop="cze" label="出资额(万元)">
<el-input v-model="scope.row.cze" type="number" /> <template #default="scope">
</template> <el-input v-model="scope.row.cze" type="number" />
</el-table-column> </template>
<el-table-column prop="yjzczb" label="应缴注册资本(万元)"> </el-table-column>
<template #default="scope"> <el-table-column prop="yjzczb" label="应缴注册资本(万元)">
<el-input v-model="scope.row.yjzczb" type="number" /> <template #default="scope">
</template> <el-input v-model="scope.row.yjzczb" type="number" />
</el-table-column> </template>
<el-table-column prop="ycxmzbj" label="应出项目资本金(万元)"> </el-table-column>
<template #default="scope"> <el-table-column prop="ycxmzbj" label="应出项目资本金(万元)">
<el-input v-model="scope.row.ycxmzbj" type="number" /> <template #default="scope">
</template> <el-input v-model="scope.row.ycxmzbj" type="number" />
</el-table-column> </template>
<el-table-column prop="hzfqk" label="合作方情况"> </el-table-column>
<template #default="scope"> <el-table-column prop="hzfqk" label="合作方情况">
<el-input v-model="scope.row.hzfqk" /> <template #default="scope">
</template> <el-input v-model="scope.row.hzfqk" />
</el-table-column> </template>
<el-table-column prop="mark" label="备注"> </el-table-column>
<template #default="scope"> <el-table-column prop="bz" label="备注">
<el-input v-model="scope.row.mark" /> <template #default="scope">
</template> <el-input v-model="scope.row.bz" />
</el-table-column> </template>
<el-table-column label="操作" width="60"> </el-table-column>
<template #default="scope"> <el-table-column label="操作" width="60">
<el-button link type="danger" size="small" @click="deleteGdxx(scope.$index)">删除</el-button> <template #default="scope">
</template> <el-button link type="danger" size="small" @click="deleteGdxx(scope.$index)">删除</el-button>
</el-table-column> </template>
</el-table> </el-table-column>
</el-collapse-item> </el-table>
<el-collapse-item title="项目必要性及可行性" name="项目必要性及可行性"> </el-collapse-item>
<el-form :model="formData" :label-width="150" :disabled="isPreview"> <el-collapse-item title="项目必要性及可行性" name="项目必要性及可行性">
<el-form-item label="建设内容及规模"> <el-form-item label="建设内容及规模">
<el-input v-model="formData.jsnrjgm" type="textarea" /> <el-input v-model="formData.jsnrjgm" type="textarea" />
</el-form-item> </el-form-item>
...@@ -454,16 +454,16 @@ ...@@ -454,16 +454,16 @@
<el-form-item label="其他说明"> <el-form-item label="其他说明">
<el-input v-model="formData.qtsm" type="textarea" /> <el-input v-model="formData.qtsm" type="textarea" />
</el-form-item> </el-form-item>
</el-form> </el-collapse-item>
</el-collapse-item> </el-collapse>
</el-collapse> </el-form>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="项目合法合规性附件" name="项目合法合规性附件"> <el-tab-pane label="项目合法合规性附件" name="项目合法合规性附件">
<div class="tab-content"> <div class="tab-content">
<el-collapse v-model="activeCollapse"> <el-form :model="formData" :label-width="150" :disabled="isPreview">
<el-collapse-item title="立项资料" name="立项资料"> <el-collapse v-model="activeCollapse">
<el-form :model="formData" :label-width="150" :disabled="isPreview"> <el-collapse-item title="立项资料" name="立项资料">
<el-form-item label="相关支撑材料"> <el-form-item label="相关支撑材料">
<el-upload <el-upload
v-model:file-list="zcclFileList" v-model:file-list="zcclFileList"
...@@ -475,162 +475,156 @@ ...@@ -475,162 +475,156 @@
</el-upload> </el-upload>
<el-button type="default">删除选中文件</el-button> <el-button type="default">删除选中文件</el-button>
</el-form-item> </el-form-item>
</el-form> <el-table :data="zcclData" style="width: 100%" empty-text="暂无数据" border>
<el-table :data="zcclData" style="width: 100%" empty-text="暂无数据"> <el-table-column type="selection" width="55" />
<el-table-column type="selection" width="55" /> <el-table-column prop="originalname" label="文件名" />
<el-table-column prop="fileName" label="文件名" /> <el-table-column prop="updatedAt" label="上传时间" />
<el-table-column prop="fileTime" label="上传时间" /> <el-table-column prop="size" label="大小" />
<el-table-column prop="fileSize" label="大小" /> <el-table-column fixed="right" label="操作" width="60">
<el-table-column fixed="right" label="操作" width="60">
<template #default="scope">
<el-button link type="danger" size="small">删除</el-button>
</template>
</el-table-column>
</el-table>
</el-collapse-item>
<el-collapse-item title="项目投资总额(全口径)" name="项目投资总额(全口径)">
<el-table :data="tzzeqkjData" style="width: 100%" empty-text="暂无数据">
<el-table-column prop="no" label="序号">
<template #default="scope">
<div v-html="scope.row.no"></div>
</template>
</el-table-column>
<el-table-column prop="name" label="指标" />
<el-table-column prop="unit" label="" width="70" />
<el-table-column prop="money" label="人民币计价">
<template #default="scope">
<el-input v-model="scope.row.money" type="number" />
</template>
</el-table-column>
</el-table>
</el-collapse-item>
<el-collapse-item title="财务评价指标" name="财务评价指标">
<el-table :data="cwpjzbData" style="width: 100%" empty-text="暂无数据">
<el-table-column prop="name" label="指标" />
<el-table-column prop="unit" label="" width="70" />
<el-table-column prop="count" label="投资评估阶段批复值">
<template #default="scope">
<el-input v-model="scope.row.count" type="number" />
</template>
</el-table-column>
</el-table>
</el-collapse-item>
</el-collapse>
</div>
</el-tab-pane>
<el-tab-pane label="全生命周期策划文件" name="全生命周期策划文件">
<div class="tab-content">
<el-collapse v-model="activeCollapse">
<el-collapse-item title="核心边界条件" name="核心边界条件">
<div class="tab-handle">
<el-button type="primary" size="small" @click="addHxbjtj">新增</el-button>
</div>
<el-table :data="hxbjtjData" style="width: 100%" empty-text="暂无数据">
<el-table-column type="index" width="50" />
<el-table-column prop="type" label="业务类型">
<template #default="scope">
<el-select v-model="scope.row.type" placeholder="请选择">
<el-option label="1" value="1"></el-option>
</el-select>
</template>
</el-table-column>
<el-table-column label="单位工程造价">
<el-table-column prop="gczjCount" label="数值">
<template #default="scope"> <template #default="scope">
<el-input v-model="scope.row.gczjCount" type="number" /> <el-button link type="danger" size="small">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="gczjUnit" label="单位"> </el-table>
</el-collapse-item>
<el-collapse-item title="项目投资总额(全口径)" name="项目投资总额(全口径)">
<el-table :data="tzzeqkjData" style="width: 100%" empty-text="暂无数据"
default-expand-all row-key="xh" border
>
<el-table-column prop="xh" label="序号" />
<el-table-column prop="zb" label="指标" />
<el-table-column prop="dw" label="" width="70" />
<el-table-column prop="rmbjj" label="人民币计价">
<template #default="scope"> <template #default="scope">
<el-select v-model="scope.row.gczjUnit" placeholder="请选择"> <el-input v-model="scope.row.rmbjj" type="number" />
<el-option label="1" value="1"></el-option>
</el-select>
</template> </template>
</el-table-column> </el-table-column>
</el-table-column> </el-table>
<el-table-column label="销售/服务能力"> </el-collapse-item>
<el-table-column prop="xsnlCount" label="数值"> <el-collapse-item title="财务评价指标" name="财务评价指标">
<el-table :data="cwpjzbData" style="width: 100%" empty-text="暂无数据" border>
<el-table-column prop="name" label="指标" />
<el-table-column prop="unit" label="" width="70" />
<el-table-column prop="num" label="投资评估阶段批复值">
<template #default="scope"> <template #default="scope">
<el-input v-model="scope.row.xsnlCount" type="number" /> <el-input v-model="scope.row.num" type="number" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="xsnlUnit" label="单位"> </el-table>
</el-collapse-item>
</el-collapse>
</el-form>
</div>
</el-tab-pane>
<el-tab-pane label="全生命周期策划文件" name="全生命周期策划文件">
<div class="tab-content">
<el-form :model="formData" :label-width="170" :disabled="isPreview">
<el-collapse v-model="activeCollapse">
<el-collapse-item title="核心边界条件" name="核心边界条件">
<div class="tab-handle">
<el-button type="primary" size="small" @click="addHxbjtj">新增</el-button>
</div>
<el-table :data="hxbjtjData" style="width: 100%" empty-text="暂无数据" border>
<el-table-column type="index" width="50" />
<el-table-column prop="type" label="业务类型">
<template #default="scope"> <template #default="scope">
<el-select v-model="scope.row.xsnlUnit" placeholder="请选择"> <el-select v-model="scope.row.type" placeholder="请选择">
<el-option label="1" value="1"></el-option> <el-option label="1" value="1"></el-option>
</el-select> </el-select>
</template> </template>
</el-table-column> </el-table-column>
</el-table-column> <el-table-column label="单位工程造价">
<el-table-column label="年均负荷率"> <el-table-column prop="dwgczjSz" label="数值">
<el-table-column prop="njfhCount" label="数值"> <template #default="scope">
<template #default="scope"> <el-input v-model="scope.row.dwgczjSz" type="number" />
<el-input v-model="scope.row.njfhCount" type="number" /> </template>
</template> </el-table-column>
<el-table-column prop="dwgczjDw" label="单位">
<template #default="scope">
<el-select v-model="scope.row.dwgczjDw" placeholder="请选择">
<el-option label="1" value="1"></el-option>
</el-select>
</template>
</el-table-column>
</el-table-column> </el-table-column>
<el-table-column prop="njfhUnit" label="单位" width="60"> <el-table-column label="销售/服务能力">
<template #default="scope">%</template> <el-table-column prop="xsfwnlSz" label="数值">
<template #default="scope">
<el-input v-model="scope.row.xsfwnlSz" type="number" />
</template>
</el-table-column>
<el-table-column prop="xsfwnlDw" label="单位">
<template #default="scope">
<el-select v-model="scope.row.xsfwnlDw" placeholder="请选择">
<el-option label="1" value="1"></el-option>
</el-select>
</template>
</el-table-column>
</el-table-column> </el-table-column>
</el-table-column> <el-table-column label="年均负荷率">
<el-table-column label="单位生产/服务总成本"> <el-table-column prop="njfhlSz" label="数值">
<el-table-column prop="zcbCount" label="数值"> <template #default="scope">
<template #default="scope"> <el-input v-model="scope.row.njfhlSz" type="number" />
<el-input v-model="scope.row.zcbCount" type="number" /> </template>
</template> </el-table-column>
<el-table-column prop="njfhlDw" label="单位" width="60" />
</el-table-column> </el-table-column>
<el-table-column prop="zcbUnit" label="单位"> <el-table-column label="单位生产/服务总成本">
<template #default="scope"> <el-table-column prop="dwscfwzcbSz" label="数值">
<el-select v-model="scope.row.zcbUnit" placeholder="请选择"> <template #default="scope">
<el-option label="1" value="1"></el-option> <el-input v-model="scope.row.dwscfwzcbSz" type="number" />
</el-select> </template>
</template> </el-table-column>
<el-table-column prop="dwscfwzcbDw" label="单位">
<template #default="scope">
<el-select v-model="scope.row.dwscfwzcbDw" placeholder="请选择">
<el-option label="1" value="1"></el-option>
</el-select>
</template>
</el-table-column>
</el-table-column> </el-table-column>
</el-table-column> <el-table-column label="单位售价(含税)">
<el-table-column label="单位售价(含税)"> <el-table-column prop="dwsjSz" label="数值">
<el-table-column prop="dwsjCount" label="数值"> <template #default="scope">
<template #default="scope"> <el-input v-model="scope.row.dwsjSz" type="number" />
<el-input v-model="scope.row.dwsjCount" type="number" /> </template>
</template> </el-table-column>
<el-table-column prop="dwsjDw" label="单位">
<template #default="scope">
<el-select v-model="scope.row.dwsjDw" placeholder="请选择">
<el-option label="1" value="1"></el-option>
</el-select>
</template>
</el-table-column>
</el-table-column> </el-table-column>
<el-table-column prop="dwsjUnit" label="单位"> <el-table-column label="盈亏平衡点">
<template #default="scope"> <el-table-column prop="ykphdlx" label="类型">
<el-select v-model="scope.row.dwsjUnit" placeholder="请选择"> <template #default="scope">
<el-option label="1" value="1"></el-option> <el-select v-model="scope.row.ykphdlx" placeholder="请选择">
</el-select> <el-option label="1" value="1"></el-option>
</template> </el-select>
</template>
</el-table-column>
<el-table-column prop="ykphdsz" label="数值">
<template #default="scope">
<el-input v-model="scope.row.ykphdsz" type="number" />
</template>
</el-table-column>
<el-table-column prop="ykphddw" label="单位" width="60" />
</el-table-column> </el-table-column>
</el-table-column> <el-table-column prop="bcsm" label="核心边界条件补充说明">
<el-table-column label="盈亏平衡点">
<el-table-column prop="ykphdType" label="类型">
<template #default="scope"> <template #default="scope">
<el-select v-model="scope.row.ykphdType" placeholder="请选择"> <el-input v-model="scope.row.bcsm" type="textarea" />
<el-option label="1" value="1"></el-option>
</el-select>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="ykphdCount" label="数值"> <el-table-column label="操作" width="60">
<template #default="scope"> <template #default="scope">
<el-input v-model="scope.row.ykphdCount" type="number" /> <el-button link type="danger" size="small" @click="deleteHxbjtj(scope.$index)">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="xsnlUnit" label="单位" width="60"> </el-table>
<template #default="scope">%</template> </el-collapse-item>
</el-table-column> <el-collapse-item title="项目立项信息" name="项目立项信息">
</el-table-column>
<el-table-column prop="remark" label="核心边界条件补充说明">
<template #default="scope">
<el-input v-model="scope.row.remark" type="textarea" />
</template>
</el-table-column>
<el-table-column label="操作" width="60">
<template #default="scope">
<el-button link type="danger" size="small" @click="deleteHxbjtj(scope.$index)">删除</el-button>
</template>
</el-table-column>
</el-table>
</el-collapse-item>
<el-collapse-item title="项目立项信息" name="项目立项信息">
<el-form :model="formData" :label-width="190" :disabled="isPreview">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="其他会议审议情况"> <el-form-item label="其他会议审议情况">
...@@ -677,11 +671,11 @@ ...@@ -677,11 +671,11 @@
</el-upload> </el-upload>
<el-button type="default">删除选中文件</el-button> <el-button type="default">删除选中文件</el-button>
</el-form-item> </el-form-item>
<el-table :data="lxpfwjData" style="width: 100%" empty-text="暂无数据"> <el-table :data="lxpfwjData" style="width: 100%" empty-text="暂无数据" border>
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column prop="fileName" label="文件名" /> <el-table-column prop="originalname" label="文件名" />
<el-table-column prop="fileTime" label="上传时间" /> <el-table-column prop="updatedAt" label="上传时间" />
<el-table-column prop="fileSize" label="大小" /> <el-table-column prop="size" label="大小" />
<el-table-column fixed="right" label="操作" width="60"> <el-table-column fixed="right" label="操作" width="60">
<template #default="scope"> <template #default="scope">
<el-button link type="danger" size="small">删除</el-button> <el-button link type="danger" size="small">删除</el-button>
...@@ -690,42 +684,40 @@ ...@@ -690,42 +684,40 @@
</el-table> </el-table>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-collapse-item>
</el-collapse-item> <el-collapse-item title="审批意见" name="审批意见">
<el-collapse-item title="审批意见" name="审批意见"> <div class="tab-handle">
<div class="tab-handle"> <el-button type="primary" size="small" @click="addSpyj">新增</el-button>
<el-button type="primary" size="small" @click="addSpyj">新增</el-button> </div>
</div> <el-table :data="spyjTableData" style="width: 100%" empty-text="暂无数据" border>
<el-table :data="spyjTableData" style="width: 100%" empty-text="暂无数据"> <el-table-column type="index" width="50" />
<el-table-column type="index" width="50" /> <el-table-column prop="lx" label="类型">
<el-table-column prop="type" label="类型"> <template #default="scope">
<template #default="scope"> <el-select v-model="scope.row.lx" placeholder="请选择">
<el-select v-model="scope.row.type" placeholder="请选择"> <el-option label="1" value="1"></el-option>
<el-option label="1" value="1"></el-option> </el-select>
</el-select> </template>
</template> </el-table-column>
</el-table-column> <el-table-column label="批复意见" prop="pfyj">
<el-table-column label="批复意见"> <template #default="scope">
<template #default="scope"> <el-input v-model="scope.row.pfyj" type="textarea" />
<el-input v-model="scope.row.pfyj" type="textarea" /> </template>
</template> </el-table-column>
</el-table-column> <el-table-column label="批复意见时间" prop="pfyjsj">
<el-table-column label="批复意见时间"> <template #default="scope">
<template #default="scope"> <el-date-picker
<el-date-picker v-model="scope.row.pfyjsj"
v-model="scope.row.pfyjsj" type="date"
type="date" placeholder="请选择"
placeholder="请选择" />
/> </template>
</template> </el-table-column>
</el-table-column> <el-table-column label="操作" width="60">
<el-table-column label="操作" width="60"> <template #default="scope">
<template #default="scope"> <el-button link type="danger" size="small" @click="deleteSpyj(scope.$index)">删除</el-button>
<el-button link type="danger" size="small" @click="deleteSpyj(scope.$index)">删除</el-button> </template>
</template> </el-table-column>
</el-table-column> </el-table>
</el-table>
<el-form :model="formData" :label-width="190" :disabled="isPreview">
<el-form-item label="相关上会材料"> <el-form-item label="相关上会材料">
<el-upload <el-upload
v-model:file-list="spyjFileList" v-model:file-list="spyjFileList"
...@@ -737,20 +729,20 @@ ...@@ -737,20 +729,20 @@
</el-upload> </el-upload>
<el-button type="default">删除选中文件</el-button> <el-button type="default">删除选中文件</el-button>
</el-form-item> </el-form-item>
<el-table :data="spyjData" style="width: 100%" empty-text="暂无数据"> <el-table :data="spyjData" style="width: 100%" empty-text="暂无数据" border>
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column prop="fileName" label="文件名" /> <el-table-column prop="originalname" label="文件名" />
<el-table-column prop="fileTime" label="上传时间" /> <el-table-column prop="updatedAt" label="上传时间" />
<el-table-column prop="fileSize" label="大小" /> <el-table-column prop="size" label="大小" />
<el-table-column fixed="right" label="操作" width="60"> <el-table-column fixed="right" label="操作" width="60">
<template #default="scope"> <template #default="scope">
<el-button link type="danger" size="small">删除</el-button> <el-button link type="danger" size="small">删除</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-form> </el-collapse-item>
</el-collapse-item> </el-collapse>
</el-collapse> </el-form>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="项目绩效评价" name="项目绩效评价">项目绩效评价</el-tab-pane> <el-tab-pane label="项目绩效评价" name="项目绩效评价">项目绩效评价</el-tab-pane>
...@@ -785,6 +777,7 @@ ...@@ -785,6 +777,7 @@
"财务评价指标", "核心边界条件", "项目立项信息", "审批意见" "财务评价指标", "核心边界条件", "项目立项信息", "审批意见"
]); ]);
let formData = reactive({}); let formData = reactive({});
let loading = ref(false);
// 建设规模(实物量指标) // 建设规模(实物量指标)
let swlzbData = reactive([]); let swlzbData = reactive([]);
const addSwlzb = () => { const addSwlzb = () => {
...@@ -809,44 +802,50 @@ ...@@ -809,44 +802,50 @@
// 项目投资总额全口径 // 项目投资总额全口径
let tzzeqkjData = reactive([ let tzzeqkjData = reactive([
{ {
no: "1", xh: "1",
name: "项目资本金", zb: "项目资本金",
unit: "万元" dw: "万元",
}, children: [
{ {
no: "&#x3000;1.1", xh: "1.1",
name: "能建方出资", zb: "能建方出资",
unit: "万元" dw: "万元"
}, },
{ {
no: "&#x3000;1.2", xh: "1.2",
name: "外部股东", zb: "外部股东",
unit: "万元" dw: "万元"
}, }
{ ]
no: "2",
name: "贷款",
unit: "万元"
},
{
no: "&#x3000;2.1",
name: "其中:并非表项目我方贷款/投保额",
unit: "万元"
}, },
{ {
no: "3", xh: "2",
name: "其他出资", zb: "贷款",
unit: "万元" dw: "万元",
children: [
{
xh: "2.1",
zb: "其中:并非表项目我方贷款/投保额",
dw: "万元"
}
]
}, },
{ {
no: "&#x3000;3.1", xh: "3",
name: "其中:能建方出资", zb: "其他出资",
unit: "万元" dw: "万元",
children: [
{
xh: "3.1",
zb: "其中:能建方出资",
dw: "万元"
}
]
}, },
{ {
no: "", xh: "",
name: "批复总出资", zb: "批复总出资",
unit: "万元" dw: "万元"
} }
]); ]);
...@@ -869,7 +868,10 @@ ...@@ -869,7 +868,10 @@
// 核心边界条件 // 核心边界条件
let hxbjtjData = reactive([]); let hxbjtjData = reactive([]);
const addHxbjtj = () => { const addHxbjtj = () => {
hxbjtjData.push({}); hxbjtjData.push({
njfhlDw: "%",
ykphddw: "%"
});
} }
const deleteHxbjtj = (index) => { const deleteHxbjtj = (index) => {
hxbjtjData.splice(index, 1); hxbjtjData.splice(index, 1);
...@@ -913,6 +915,7 @@ ...@@ -913,6 +915,7 @@
cwbblxList = data.cwbblx || []; cwbblxList = data.cwbblx || [];
zfspjbList = data.zfsphzbajb || []; zfspjbList = data.zfsphzbajb || [];
// 项目所在地 // 项目所在地
jnwList = data.jnw || [];
qxgjList = data.qxjngjjw || []; qxgjList = data.qxjngjjw || [];
xmqyList = data.xmqy || []; xmqyList = data.xmqy || [];
// 计量币种 // 计量币种
...@@ -925,12 +928,32 @@ ...@@ -925,12 +928,32 @@
}); });
}; };
let isPreview = !!route.query.isPreview; let isPreview = !!route.query.isPreview;
let projectId = route.query.projectId;
const getProjectInfo = () => {
loading.value = true;
proxy.$post({
url: "/api/project/getProjectInfo",
data: {
id: projectId
},
callback: (data) => {
loading.value = false;
Object.assign(formData, data);
Object.assign(swlzbData, data.projectJsgms);
Object.assign(gdxxData, data.projectGdxxs);
Object.assign(zcclData, data.lxzl);
Object.assign(tzzeqkjData, data.projectXmtzzes);
Object.assign(cwpjzbData, data.projectCwpjzbs);
Object.assign(hxbjtjData, data.projectBjtjs);
Object.assign(lxpfwjData, data.lxpfwj);
Object.assign(spyjTableData, data.projectSpyjs);
Object.assign(spyjData, data.xgshcl);
}
});
};
onMounted(() => { onMounted(() => {
getResourceData(); getResourceData();
let projectInfo = projectStore.params.projectInfo; projectId && getProjectInfo();
if (projectInfo) {
formData = { ...projectInfo };
}
}) })
// 返回列表页 // 返回列表页
...@@ -939,9 +962,21 @@ ...@@ -939,9 +962,21 @@
} }
// 保存数据 // 保存数据
const saveClick = () => { const saveClick = () => {
let url = formData.id ? "updateProject" : "createProject";
proxy.$post({ proxy.$post({
url: "/api/project/createProject", url: "/api/project/" + url,
data: formData, data: {
...formData,
projectJsgms: swlzbData,
projectGdxxs: gdxxData,
lxzl: zcclData,
projectXmtzzes: tzzeqkjData,
projectCwpjzbs: cwpjzbData,
projectBjtjs: hxbjtjData,
lxpfwj: lxpfwjData,
projectSpyjs: spyjTableData,
xgshcl: spyjData
},
callback: (data) => { callback: (data) => {
router.push("/projectManage"); router.push("/projectManage");
} }
...@@ -992,6 +1027,15 @@ ...@@ -992,6 +1027,15 @@
} }
.el-table{ .el-table{
margin-bottom: 10px; margin-bottom: 10px;
thead {
color: #000;
th{
background: #f5f7fa;
.cell{
text-align: center;
}
}
}
} }
} }
} }
......
...@@ -6,10 +6,30 @@ ...@@ -6,10 +6,30 @@
<el-button type="primary" @click="addProject">新增</el-button> <el-button type="primary" @click="addProject">新增</el-button>
</div> </div>
</div> </div>
<div class="project-manage-content"> <div class="project-manage-content" v-loading="loading">
<div class="table-wrap"> <common-table
:tableHeight="tableHeight"
:data="tableData"
:columns="tableColumns"
:total="total"
:current-page="currentPage"
:page-size="pageSize"
:index="true"
:indexLabel="'序号'"
title=""
:border="true"
@size-change="handleSizeChange"
@current-page-change="handleCurrentPageChange"
>
<template #operations="{ row, index }">
<el-button link type="primary" size="small" @click="previewProject(row)">查看</el-button>
<el-button link type="primary" size="small" @click="editProject(row)">编辑</el-button>
<el-button link type="danger" size="small" @click="deleteProject(row)">删除</el-button>
</template>
</common-table>
<!-- <div class="table-wrap">
<el-table :data="tableData" style="width: 100%" <el-table :data="tableData" style="width: 100%"
empty-text="暂无数据" height="100%" empty-text="暂无数据" height="100%" border
> >
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column prop="projectName" label="项目名称" /> <el-table-column prop="projectName" label="项目名称" />
...@@ -25,52 +45,100 @@ ...@@ -25,52 +45,100 @@
</div> </div>
<div class="page-wrap"> <div class="page-wrap">
<el-pagination background layout="prev, pager, next" :total="1000" /> <el-pagination background layout="prev, pager, next" :total="1000" />
</div> </div> -->
</div> </div>
</div> </div>
</template> </template>
<script setup> <script setup>
import { reactive, ref, onMounted, getCurrentInstance } from "vue"; import { reactive, ref, onMounted, computed, getCurrentInstance } from "vue";
import { useRouter } from "vue-router"; import { useRouter } from "vue-router";
import { useProjectStore } from "@/stores/project.js"; import { useProjectStore } from "@/stores/project.js";
import { ElMessage, ElMessageBox } from "element-plus"; import { ElMessage, ElMessageBox } from "element-plus";
import CommonTable from "@/components/common/commonTable.vue";
const projectStore = useProjectStore(); const projectStore = useProjectStore();
const router = useRouter(); const router = useRouter();
const { proxy } = getCurrentInstance(); const { proxy } = getCurrentInstance();
const tableData = ref([]);
// 计算表格高度
let tableData = ref([]);
const tableColumns = reactive([
{
prop: "projectName",
label: "项目名称",
showOverflowTooltip: true
},
{
prop: "projectCode",
label: "项目编号",
showOverflowTooltip: true
},
{
prop: "operations",
label: "操作",
width: 160,
slot: "operations",
fixed: "right",
align: "center",
}
]);
const tableHeight = computed(() => {
const headerHeight = 50;
const rowHeight = 45;
// 1.如果数据超过10条,固定显示10行的高度 + 滚动条;2.如果数据不超过10条,按实际行数计算高度
const maxRows = Math.min(tableData.value.length, 10);
const contentHeight = maxRows * rowHeight;
return `${headerHeight + contentHeight}px`;
});
let loading = ref(false);
let total = ref(0);
let currentPage = ref(1);
let pageSize = ref(10);
const getProjectData = () => { const getProjectData = () => {
loading.value = true;
proxy.$post({ proxy.$post({
url: "/api/project/listProject", url: "/api/project/getOwnProjects",
data: { data: {
page: 1, page: currentPage.value,
pagesize: 10, pagesize: pageSize.value,
attributes: [] attributes: []
}, },
callback: (data) => { callback: (data) => {
tableData.value = data.rows; tableData.value = data.rows;
total.value = data.count;
loading.value = false;
} }
}) })
}; };
// 分页
const handleSizeChange = (size) => {
pageSize.value = size;
currentPage.value = 1;
getProjectData();
}
const handleCurrentPageChange = (page) => {
currentPage.value = page;
getProjectData();
}
const addProject = () => { const addProject = () => {
router.push("/addProject"); router.push("/addProject");
}; };
const editProject = (item) => { const editProject = (item) => {
projectStore.setParams({ router.push({
projectInfo: { ...item } name: "addProject",
query: {
projectId: item.id
}
}); });
router.push("/addProject");
}; };
const previewProject = (item) => { const previewProject = (item) => {
projectStore.setParams({
projectInfo: { ...item }
});
router.push({ router.push({
name: "addProject", name: "addProject",
query: { query: {
isPreview: true isPreview: true,
projectId: item.id
} }
}) })
} }
...@@ -89,14 +157,11 @@ ...@@ -89,14 +157,11 @@
ElMessage.success("删除成功"); ElMessage.success("删除成功");
getProjectData(); getProjectData();
} }
}).catch(() => {}) })
}) }).catch(() => {})
} }
onMounted(() => { onMounted(() => {
getProjectData(); getProjectData();
projectStore.setParams({
projectInfo: undefined
});
}) })
</script> </script>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment