| | |
| | | <div class="project-container"> |
| | | <div class="header"> |
| | | <el-button type="success" icon="Plus" @click="toProcess('add',{})">新增</el-button> |
| | | <el-button type="warning" >导出</el-button> |
| | | <vue3-json-excel |
| | | :json-data="dataList" |
| | | :fields="fields" |
| | | name="项目信息表.xlsx" |
| | | style="margin-right: 5px;margin-left: 5px" |
| | | > |
| | | <el-button type="warning">导出</el-button> |
| | | </vue3-json-excel> |
| | | <el-button type="primary" icon="Filter" @click="showDrawer = true">筛选</el-button> |
| | | </div> |
| | | <div class="middle"> |
| | | <div class="card-box"> |
| | | <div class="box-left" @click="choose('')"> |
| | | <class class="font-left"> |
| | | <div class="font-left"> |
| | | <div>项目</div> |
| | | <div>总数</div> |
| | | </class> |
| | | <class class="font-right">{{search.num.projectTotal}}</class> |
| | | </div> |
| | | <div class="font-right">{{search.num.projectTotal}}</div> |
| | | </div> |
| | | <div class="box-right"> |
| | | <div class="inbox" @click="choose(1)" style="box-shadow: rgba(132, 122, 253, 0.2) 0 3px 5px 0;" :class="{btn1: chooseType === 1}"> |
| | |
| | | <el-table-column label="委托单位" prop="client" align="center" :show-overflow-tooltip="true" width="180"/> |
| | | <el-table-column label="所属地市" align="center" width="250"> |
| | | <template #default="scope"> |
| | | {{scope.row.province}}/{{scope.row.city}} |
| | | {{scope.row.area}} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="评价类型" prop="estimateTypeName" align="center" width="150"/> |
| | |
| | | <el-table-column label="项目变更" prop="" align="center" width="120"/> |
| | | <el-table-column label="预估金额(万元)" prop="" align="center" width="130"/> |
| | | <el-table-column label="归档金额(万元)" prop="" align="center" width="130"/> |
| | | <el-table-column label="缺失要件" prop="" align="center" width="150"/> |
| | | <el-table-column label="缺失要件" align="center" width="150"> |
| | | <template #default="scope"> |
| | | <div style="cursor:pointer;color: #3b82f6;" > |
| | | <span>{{scope.row.materialCnt}}</span> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="归档确认" prop="" align="center" width="150"/> |
| | | <el-table-column fixed="right" label="操作" align="center" class-name="small-padding fixed-width" width="180"> |
| | | <template #default="scope"> |
| | |
| | | </div> |
| | | </template> |
| | | </el-drawer> |
| | | |
| | | </div> |
| | | |
| | | </template> |
| | |
| | | import {onMounted, reactive, ref} from "vue"; |
| | | import {delProject, getProjectList, getProjectStatistics} from "@/api/projectManage/project"; |
| | | import {ElMessage, ElMessageBox} from "element-plus"; |
| | | import {delMonitor} from "@/api/sysUsers"; |
| | | import {getRegionTree} from "@/api/area"; |
| | | import {getDict} from "@/api/login"; |
| | | import {getDictList} from "@/api/backManage/evaluate"; |
| | |
| | | dataList.value = res.data.list.map(item => { |
| | | return { |
| | | ...item, |
| | | process: item.reportProgress <=4 ? 1 : item.reportProgress >4 && item.reportProgress <=6 ? 2 : item.reportProgress >6 && item.reportProgress <=9 ? 3 :item.reportProgress >9 && item.reportProgress <=11 ? 4:5, |
| | | leaderName: item.leader ? item.leader.name : '' |
| | | process: item.reportProgress <= 4 ? 1 : item.reportProgress > 4 && item.reportProgress <= 6 ? 2 : item.reportProgress > 6 && item.reportProgress <= 9 ? 3 : item.reportProgress > 9 && item.reportProgress <= 11 ? 4 : 5, |
| | | leaderName: item.leader ? item.leader.name : '', |
| | | area: item.district ? item.province + '/' + item.city + '/' + item.district : item.city?item.province + '/' + item.city:item.province , |
| | | } |
| | | }) |
| | | console.log('data',dataList.value) |
| | |
| | | search.queryParams.district = value[2]?value[2]:'' |
| | | // } |
| | | } |
| | | // 导出表格 |
| | | const fields = ref({ |
| | | '项目名称':'name', |
| | | '委托单位':'client', |
| | | '所属地市': 'area', |
| | | '评价类型': 'estimateTypeName', |
| | | '业务范围': 'businessName', |
| | | '项目负责人': 'leaderName', |
| | | '项目阶段': { |
| | | field: 'process', |
| | | callback: (value) => { |
| | | if (value === 1) { |
| | | return '风险分析及计划评价' |
| | | } else if(value === 2){ |
| | | return '现场勘验' |
| | | }else if(value === 3){ |
| | | return '项目审核' |
| | | }else if(value === 4){ |
| | | return '出具报告' |
| | | }else if(value === 5){ |
| | | return '项目归档' |
| | | } |
| | | } |
| | | }, |
| | | '项目实施天数': '', |
| | | '项目变更': '', |
| | | '预估金额(万元)': '', |
| | | '归档金额(万元)': '', |
| | | '缺失要件': 'materialCnt', |
| | | '归档确认': '' |
| | | }); |
| | | |
| | | </script> |
| | | |
| | | <style scoped lang="scss"> |