Commit a5b80ac0 authored by tianhongyang's avatar tianhongyang

merge

parent 61c79e19
...@@ -173,13 +173,12 @@ export function projectVolume(data) { ...@@ -173,13 +173,12 @@ export function projectVolume(data) {
} }
//措施费-获取实际成本月份列表 //措施费-获取实际成本月份列表
export function actualMonths(params) { export const getActualMonthsApi = (params = {}) => request({
return request({ url: '/cb/cost/measures/actual/months',
url: '/cb/cost/measures/actual/months', method: 'get',
method: 'GET', params
params });
});
}
// 工料汇总 // 工料汇总
......
...@@ -69,17 +69,15 @@ export default { ...@@ -69,17 +69,15 @@ export default {
watch: { watch: {
projectDetailInfo: { projectDetailInfo: {
handler(newValue) { handler(newValue) {
this.comProjectDetailInfo = newValue ? newValue : {}; this.comProjectDetailInfo = newValue ? cloneDeep(newValue) : {};
this.init(this.comProjectDetailInfo); this.init(this.comProjectDetailInfo);
}, },
deep: true, deep: true,
immediate: true
}, },
projectId: { projectId: {
handler(newValue) { handler(newValue) {
this.comProjectId = newValue; this.comProjectId = newValue;
}, }
immediate: true
} }
}, },
components: { components: {
...@@ -94,8 +92,8 @@ export default { ...@@ -94,8 +92,8 @@ export default {
nodeName: "name", nodeName: "name",
nodeValue: "name", nodeValue: "name",
}, },
comProjectDetailInfo: {}, comProjectDetailInfo: this.projectDetailInfo ? cloneDeep(this.projectDetailInfo) : {},
comProjectId: "", comProjectId: this.projectId,
menuTreeList: [], menuTreeList: [],
// 加载数据列表 // 加载数据列表
tableLoading: false, tableLoading: false,
...@@ -122,7 +120,7 @@ export default { ...@@ -122,7 +120,7 @@ export default {
}, },
//可访问data属性 //可访问data属性
created() { created() {
this.init(this.comProjectDetailInfo);
}, },
//计算集 //计算集
computed: { computed: {
......
...@@ -2,7 +2,8 @@ ...@@ -2,7 +2,8 @@
<div class="feed-summary-container"> <div class="feed-summary-container">
<div class="feed-summary-inner"> <div class="feed-summary-inner">
<div class="left-side-menu"> <div class="left-side-menu">
<project-side-menu ref="profitloss" :menuTree="menuTreeList" :menuOptions="menuOptions" :unique-opened="false" :default-active="defaultActive" @select="select"> <project-side-menu ref="profitloss" :menuTree="menuTreeList" :menuOptions="menuOptions" :unique-opened="false" :default-active="defaultActive"
@select="select">
<template slot="措施费-1"> <template slot="措施费-1">
<img src="@/assets/images/projectCostLedger/icon_cost_detail_4.svg" alt=""> <img src="@/assets/images/projectCostLedger/icon_cost_detail_4.svg" alt="">
<div class="project-sub-menu-title-text">措施费</div> <div class="project-sub-menu-title-text">措施费</div>
...@@ -12,34 +13,22 @@ ...@@ -12,34 +13,22 @@
<div class="profitloss"> <div class="profitloss">
<div class="search"> <div class="search">
<!--<el-date-picker size="small" style="width: 140px"--> <!--<el-date-picker size="small" style="width: 140px"-->
<!--v-model="expenseDate"--> <!--v-model="expenseDate"-->
<!--type="month"--> <!--type="month"-->
<!--placeholder="选择月" @change="changetime"--> <!--placeholder="选择月" @change="changetime"-->
<!--value-format="yyyy-MM"--> <!--value-format="yyyy-MM"-->
<!--:picker-options="pickerOptions">--> <!--:picker-options="pickerOptions">-->
<!--</el-date-picker>--> <!--</el-date-picker>-->
<el-select v-model="expenseDate"> <el-select v-model="expenseDate">
<el-option <el-option v-for="item in dateoptions" :key="item.value" :label="item.label" :value="item.value">
v-for="item in dateoptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option> </el-option>
</el-select> </el-select>
<el-button v-if="!isall" type="primary" size="small" @click="addcost">添加实际成本</el-button> <el-button v-if="!isall" type="primary" size="small" @click="addcost">添加实际成本</el-button>
</div> </div>
<!--汇总--> <!--汇总-->
<div class="table-item" v-if="isall"> <div class="table-item" v-if="isall">
<el-table <el-table element-loading-text="Loading" :data="tableData" row-key="id" v-horizontal-scroll="'hover'" default-expand-all
element-loading-text="Loading" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" border highlight-current-row>
:data="tableData"
row-key="id"
v-horizontal-scroll="'hover'"
default-expand-all
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
border
highlight-current-row
>
<el-table-column label="序号" width="60" align="left" type="index"></el-table-column> <el-table-column label="序号" width="60" align="left" type="index"></el-table-column>
<el-table-column label="名称" width="220" prop="expenseName"> <el-table-column label="名称" width="220" prop="expenseName">
<template slot-scope="scope">{{scope.row.expenseName || '--'}}</template> <template slot-scope="scope">{{scope.row.expenseName || '--'}}</template>
...@@ -57,16 +46,8 @@ ...@@ -57,16 +46,8 @@
</div> </div>
<!--单条--> <!--单条-->
<div class="table-item" v-else> <div class="table-item" v-else>
<el-table <el-table element-loading-text="Loading" :data="tableData" row-key="id" v-horizontal-scroll="'hover'" default-expand-all
element-loading-text="Loading" :tree-props="{children: 'children', hasChildren: 'hasChildren'}" border highlight-current-row>
:data="tableData"
row-key="id"
v-horizontal-scroll="'hover'"
default-expand-all
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
border
highlight-current-row
>
<el-table-column label="序号" width="60" align="left" type="index" fixed="left"></el-table-column> <el-table-column label="序号" width="60" align="left" type="index" fixed="left"></el-table-column>
<el-table-column label="清单内容" width="130" prop="itemContent" fixed="left"> <el-table-column label="清单内容" width="130" prop="itemContent" fixed="left">
<template slot-scope="scope">{{scope.row.itemContent || '--'}}</template> <template slot-scope="scope">{{scope.row.itemContent || '--'}}</template>
...@@ -114,7 +95,6 @@ ...@@ -114,7 +95,6 @@
<template slot-scope="scope">{{scope.row.taxType || '--'}}</template> <template slot-scope="scope">{{scope.row.taxType || '--'}}</template>
</el-table-column> </el-table-column>
<el-table-column label="本月发生成本比例" width="150" prop="monthCostRate"> <el-table-column label="本月发生成本比例" width="150" prop="monthCostRate">
<template slot-scope="scope">{{scope.row.monthCostRate || '--'}}</template> <template slot-scope="scope">{{scope.row.monthCostRate || '--'}}</template>
</el-table-column> </el-table-column>
...@@ -131,7 +111,6 @@ ...@@ -131,7 +111,6 @@
<template slot-scope="scope">{{scope.row.submitProjectVolume || '--'}}</template> <template slot-scope="scope">{{scope.row.submitProjectVolume || '--'}}</template>
</el-table-column> </el-table-column>
<el-table-column label="备注" width="130" prop="remarks"> <el-table-column label="备注" width="130" prop="remarks">
<template slot-scope="scope">{{scope.row.remarks || '--'}}</template> <template slot-scope="scope">{{scope.row.remarks || '--'}}</template>
</el-table-column> </el-table-column>
...@@ -140,7 +119,7 @@ ...@@ -140,7 +119,7 @@
</el-table-column> </el-table-column>
<el-table-column label="操作" width="130" fixed="right"> <el-table-column label="操作" width="130" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<span class="wordprimary" @click="pushwork(scope.row)">推送工程量</span> <span class="wordprimary" @click="pushwork(scope.row)">推送工程量</span>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
...@@ -148,10 +127,7 @@ ...@@ -148,10 +127,7 @@
</div> </div>
<!--推送工程量--> <!--推送工程量-->
<el-dialog <el-dialog class="pro-news" :visible.sync="dialogVisible" width="480px">
class="pro-news"
:visible.sync="dialogVisible"
width="480px">
<div class="poptitle"> <div class="poptitle">
<span>推送工程量</span> <span>推送工程量</span>
</div> </div>
...@@ -164,7 +140,9 @@ ...@@ -164,7 +140,9 @@
</el-form-item> </el-form-item>
<el-form-item label="需推送工程量" class="row"> <el-form-item label="需推送工程量" class="row">
<el-input type="text" placeholder="请输入需推送工程量" v-model="queryParam.submitProjectVolume"></el-input> <el-input type="text" placeholder="请输入需推送工程量" v-model="queryParam.submitProjectVolume"></el-input>
<span class="msgs" v-if="queryParam.submitProjectVolume>queryParam.currentProjectVolume"><font color="#FF3C3C">注:推送工程量不得大于实际产生的总工程量</font></span> <span class="msgs" v-if="queryParam.submitProjectVolume>queryParam.currentProjectVolume">
<font color="#FF3C3C">注:推送工程量不得大于实际产生的总工程量</font>
</span>
</el-form-item> </el-form-item>
<el-form-item label="IPM项目编码" class="row"> <el-form-item label="IPM项目编码" class="row">
<el-input type="text" placeholder="请输入IPM项目编码" v-model="queryParam.ipmProjectCode"></el-input> <el-input type="text" placeholder="请输入IPM项目编码" v-model="queryParam.ipmProjectCode"></el-input>
...@@ -175,7 +153,7 @@ ...@@ -175,7 +153,7 @@
<el-form-item label="IPM作业编码" class="row"> <el-form-item label="IPM作业编码" class="row">
<el-input type="text" placeholder="请输入IPM作业编码" v-model="queryParam.ipmBizCode"></el-input> <el-input type="text" placeholder="请输入IPM作业编码" v-model="queryParam.ipmBizCode"></el-input>
</el-form-item> </el-form-item>
</el-form > </el-form>
<div class="popbot"> <div class="popbot">
<div class="btn btn_cancel h32" @click="dialogVisible = false">取消</div> <div class="btn btn_cancel h32" @click="dialogVisible = false">取消</div>
<div class="btn btn_primary h32" @click="savepro">确定推送</div> <div class="btn btn_primary h32" @click="savepro">确定推送</div>
...@@ -186,371 +164,370 @@ ...@@ -186,371 +164,370 @@
</div> </div>
</template> </template>
<script> <script>
import ProjectSideMenu from '@/views/projectCostLedger/detail/components/ProjectSideMenu' import ProjectSideMenu from '@/views/projectCostLedger/detail/components/ProjectSideMenu';
import { import {
getCostMeasureslist, getCostMeasureslist,
getMeasureslist, getMeasureslist,
getSummarydata, getSummarydata,
projectVolume, projectVolume,
pushProjectvolume,actualMonths pushProjectvolume,
} from '@/api/projectCostLedger' getActualMonthsApi
} from '@/api/projectCostLedger';
import { cloneDeep } from "lodash-es";
export default { export default {
name: "MeasureItems", name: "MeasureItems",
props: { props: {
// 项目ID // 项目ID
projectId: { projectId: {
type: String, type: String,
required: true, required: true,
default: "" default: ""
},
// 详情信息
projectDetailInfo: {
type: Object,
default: () => ({})
}
},
watch: {
projectDetailInfo: {
handler(newValue) {
this.comProjectDetailInfo = newValue ? cloneDeep(newValue) : {};
this.init(newValue.projectId);
}, },
// 详情信息 deep: true
projectDetailInfo: {
type: Object,
default: () => ({})
}
}, },
watch: { projectId: {
projectDetailInfo: { handler(newValue) {
handler(newValue) { this.comProjectId = newValue;
this.comProjectDetailInfo = newValue ? newValue : {}; }
this.init(this.projectId); }
},
components: {
ProjectSideMenu
},
data() {
return {
pickerOptions: {
disabledDate(time) {
let istrue = true;
let month = new Date().getMonth() + 1;
let year = new Date().getFullYear();
let times = (year + 5) + '-' + month + '-01 ' + '00:00:00';
istrue = new Date().getTime() < time.getTime() && time.getTime() < new Date(times).getTime();
return !istrue;
}, },
deep: true,
immediate: true
}, },
projectId: { menuOptions: {
handler(newValue) { nodeName: "itemContent",
this.comProjectId = newValue; nodeValue: "id",
}, },
immediate: true comProjectDetailInfo: this.projectDetailInfo ? cloneDeep(this.projectDetailInfo) : {},
comProjectId: this.projectId,
defaultActive: "",
menuTreeList: [
],
id: 0,
expenseDate: '',
tableData: [],
isall: true,//是否汇总
dialogVisible: false,
queryParam: {},//推送工程量数据
dateoptions: [],
};
},
//可访问data属性
created() {
// let month = new Date().getMonth() +1
// let year = new Date().getFullYear()
// this.expenseDate = year + (month>= 9? month:'0'+ month)
this.init(this.comProjectId);
},
//计算集
computed: {
},
//方法集
methods: {
async getactualMonths() {
try {
const formData = new FormData();
formData.append("projectId", this.comProjectId);
formData.append("id", this.id);
let data = await getActualMonthsApi(formData);
data.forEach(item => {
item.value = item;
item.label = item.substring(1, 4) + '-' + item.substring(5, 6);
});
if (data && data.length > 0) {
this.expenseDate = data[0].value;
}
} catch (error) {
console.log(error);
} }
}, },
components: { async select(menuPath) {
ProjectSideMenu this.id = menuPath;
}, // let month = this.expenseDate.replace('-', "");
data() { let param = {
return { projectId: this.projectId,
pickerOptions: { id: this.id,
disabledDate(time) { month: this.expenseDate
let istrue = true
let month = new Date().getMonth()+1
let year = new Date().getFullYear()
let times = (year+5)+'-'+ month + '-01 ' + '00:00:00'
istrue = new Date().getTime() < time.getTime() && time.getTime() < new Date(times).getTime()
return !istrue
},
},
menuOptions: {
nodeName: "itemContent",
nodeValue: "id",
},
comProjectDetailInfo: {},
comProjectId: "",
defaultActive: "",
menuTreeList: [
],
id: 0,
expenseDate:'',
tableData:[],
isall:true,//是否汇总
dialogVisible:false,
queryParam:{},//推送工程量数据
dateoptions:[],
}; };
if (menuPath == 0) {//费用汇总
this.isall = true;
const formData = new FormData();
formData.append("projectId", this.projectId);
const res = await getSummarydata(formData);
this.tableData = res.data;
} else {//各个子项
this.isall = false;
const res = await getCostMeasureslist(param);
this.tableData = res.data;
}
this.getactualMonths();
}, },
//可访问data属性 async init(detail = '') {
created() { try {
// let month = new Date().getMonth() +1 const projectId = detail;
// let year = new Date().getFullYear() if (!projectId) return;
// this.expenseDate = year + (month>= 9? month:'0'+ month) await this.getFeedSummaryMenuTree(projectId);
this.getactualMonths() } catch (error) {
},
//计算集
computed: {
}
}, },
//方法集 async getFeedSummaryMenuTree(params) {
methods: { try {
getactualMonths(){ const result = await getMeasureslist(params);
const formDatas = new FormData(); if (result.code == 200) {
formDatas.append("projectId", this.projectId); let arr = {};
formDatas.append("id", this.id); arr.itemContent = '措施费';
console.log(formDatas.get('projectId')) arr.id = 0;
console.log(formDatas.get('id')) let child = result.data;
actualMonths(formDatas).then(res=>{ let li = {};
let data = res.data li.itemContent = '费用汇总';
data.forEach(item=>{ li.id = 0;
item.value = item child.unshift(li);
item.label = item.substring(1,4)+'-'+item.substring(5,6) arr.children = child;
}) const _tempArray = [arr];
if(data&&data.length>0) this.menuTreeList = _tempArray;
this.expenseDate = data[0].value await this.$nextTick();
}) this.$refs['profitloss'].$refs['customElMenu'].open(_tempArray[0].id);
}, this.defaultActive = child[0].id;
select(menuPath){ this.select(child[0].id);
this.id = menuPath
// let month = this.expenseDate.replace('-', "");
let param = {
projectId:this.projectId,
id:this.id,
month:this.expenseDate
}
if(menuPath == 0){//费用汇总
this.isall = true
const formData = new FormData();
formData.append("projectId", this.projectId);
getSummarydata(formData).then(res=>{
this.tableData = res.data
})
} else {//各个子项
this.isall = false
getCostMeasureslist(param).then(res => {
this.tableData = res.data
})
} }
this.getactualMonths() } catch (error) {
}, console.log(error);
async init(detail = '') { }
try { },
const projectId = detail; changetime(val) {
if (!projectId) return; this.select(this.id);
await this.getFeedSummaryMenuTree(projectId); },
} catch (error) { //推送工作量
pushwork(row) {
} this.queryParam = {
}, id: row.id,
async getFeedSummaryMenuTree(params) { projectName: '',
try { submitProjectVolume: '',
const result = await getMeasureslist(params); ipmProjectCode: '',
if (result.code == 200) { ipmContractCode: '',
let arr = {} ipmBizCode: '',
arr.itemContent = '措施费' };
arr.id = 0 projectVolume(row.id).then(res => {
let child = result.data if (res.data) {
let li = {} let datas = res.data;
li.itemContent = '费用汇总' this.queryParam.currentProjectVolume = datas.currentProjectVolume;
li.id = 0 this.queryParam.ipmProjectCode = datas.ipmProjectCode;
child.unshift(li) this.queryParam.ipmContractCode = datas.ipmContractCode;
arr.children = child this.queryParam.ipmBizCode = datas.ipmBizCode;
const _tempArray = [arr];
this.menuTreeList = _tempArray;
await this.$nextTick()
this.$refs['profitloss'].$refs['customElMenu'].open(_tempArray[0].id)
this.defaultActive = child[0].id
this.select(child[0].id)
}
} catch (error) {
console.log(error)
} }
}, });
changetime(val){ this.dialogVisible = true;
this.select(this.id) },
}, //确认推送
//推送工作量 savepro() {
pushwork(row){ pushProjectvolume(this.queryParam).then(res => {
this.queryParam = { if (res.code == 200) {
id:row.id, this.$message.success(res.msg);
projectName:'', this.dialogVisible = false;
submitProjectVolume:'', this.select(this.id);
ipmProjectCode:'', } else {
ipmContractCode:'', this.$message.error(res.msg);
ipmBizCode:'',
} }
projectVolume(row.id).then(res=>{ });
if(res.data){
let datas = res.data
this.queryParam.currentProjectVolume = datas.currentProjectVolume
this.queryParam.ipmProjectCode = datas.ipmProjectCode
this.queryParam.ipmContractCode = datas.ipmContractCode
this.queryParam.ipmBizCode = datas.ipmBizCode
}
})
this.dialogVisible = true
},
//确认推送
savepro(){
pushProjectvolume(this.queryParam).then(res=>{
if(res.code == 200){
this.$message.success(res.msg)
this.dialogVisible = false
this.select(this.id)
}else{
this.$message.error(res.msg)
}
})
}, },
addcost(){ addcost() {
},
}, },
} },
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.feed-summary-container { .feed-summary-container {
width: 100%;
height: 100%;
.feed-summary-inner {
width: 100%; width: 100%;
height: 100%; height: 100%;
display: flex;
align-items: center;
.feed-summary-inner { .left-side-menu {
width: 100%; width: 220px;
min-width: 220px;
height: 100%; height: 100%;
display: flex;
align-items: center;
.left-side-menu {
width: 220px;
min-width: 220px;
height: 100%;
}
.profitloss{
width: calc(100% - 220px);
height: 100%;
background: #fff;
padding: 16px;
.table-item{
margin-top: 16px;
}
}
} }
.search{ .profitloss {
display: flex; width: calc(100% - 220px);
justify-content: space-between; height: 100%;
} background: #fff;
::v-deep .pro-news { padding: 16px;
.el-dialog__body { .table-item {
padding: 24px 0 0; margin-top: 16px;
} }
}
}
.search {
display: flex;
justify-content: space-between;
}
::v-deep .pro-news {
.el-dialog__body {
padding: 24px 0 0;
}
.el-dialog__headerbtn { .el-dialog__headerbtn {
top: 20px; top: 20px;
right: 20px; right: 20px;
z-index: 3; z-index: 3;
} }
.poptitle { .poptitle {
line-height: 56px; line-height: 56px;
border-bottom: 1px solid #eee; border-bottom: 1px solid #eee;
height: 56px; height: 56px;
position: absolute; position: absolute;
top: 0; top: 0;
left: 0; left: 0;
width: 100%; width: 100%;
> span { > span {
padding-left: 20px; padding-left: 20px;
font-weight: bold; font-weight: bold;
font-size: 16px; font-size: 16px;
color: #232323; color: #232323;
font-family: Microsoft YaHei-Bold, Microsoft YaHei; font-family: Microsoft YaHei-Bold, Microsoft YaHei;
width: 385px; width: 385px;
display: block; display: block;
overflow: hidden; overflow: hidden;
white-space: nowrap; white-space: nowrap;
text-overflow: ellipsis; text-overflow: ellipsis;
}
} }
}
.popform { .popform {
padding: 24px 20px 0; padding: 24px 20px 0;
.row {
margin-bottom: 16px;
position: relative;
.checkcb{
position: absolute;
left: -100px;
}
.el-form-item__label {
font-weight: 400;
opacity: 0.8;
padding: 0;
font-size: 14px;
color: #232323;
padding-right: 16px;
}
.el-input, .row {
.el-textarea, margin-bottom: 16px;
.el-select { position: relative;
display: inline-block; .checkcb {
width: 320px; position: absolute;
left: -100px;
}
.el-form-item__label {
font-weight: 400;
opacity: 0.8;
padding: 0;
font-size: 14px;
color: #232323;
padding-right: 16px;
}
.el-input__inner, .el-input,
.el-textarea__inner { .el-textarea,
width: 100%; .el-select {
height: 32px; display: inline-block;
border-radius: 0px; width: 320px;
&:hover { .el-input__inner,
border-color: #0081ff; .el-textarea__inner {
} width: 100%;
} height: 32px;
border-radius: 0px;
.el-textarea__inner { &:hover {
height: 90px; border-color: #0081ff;
font-family: inherit;
color: #000;
} }
}
.el-input__suffix { .el-textarea__inner {
height: 32px; height: 90px;
} font-family: inherit;
color: #000;
}
.el-input__icon { .el-input__suffix {
line-height: 32px; height: 32px;
}
} }
.el-form-item__error { .el-input__icon {
padding-top: 2px; line-height: 32px;
} }
} }
.el-input-group--append{
position: relative; .el-form-item__error {
.el-input-group__append{ padding-top: 2px;
position: absolute; }
right: 0; }
width: 76px; .el-input-group--append {
top: 0; position: relative;
border: 0; .el-input-group__append {
background: none; position: absolute;
&:hover{ right: 0;
background: none !important; width: 76px;
} top: 0;
.pro-getbtn{ border: 0;
border-left: 1px solid #DCDFE6; background: none;
height: 32px; &:hover {
color: #0081FF; background: none !important;
line-height: 32px; }
text-align: center; .pro-getbtn {
} border-left: 1px solid #dcdfe6;
height: 32px;
color: #0081ff;
line-height: 32px;
text-align: center;
} }
} }
} }
}
.popbot { .popbot {
border-top: 1px solid #EEEEEE; border-top: 1px solid #eeeeee;
text-align: right; text-align: right;
margin-top: 24px; margin-top: 24px;
padding: 16px 20px; padding: 16px 20px;
.btn { .btn {
border-radius: 2px; border-radius: 2px;
margin-left: 12px; margin-left: 12px;
padding: 0 24px; padding: 0 24px;
&.btn_disabled{ &.btn_disabled {
background: #8BD1FF; background: #8bd1ff;
}
} }
} }
.msgs{ }
font-size: 12px; .msgs {
line-height: 17px; font-size: 12px;
height: 17px; line-height: 17px;
display: block; height: 17px;
margin: 0 0 -4px; display: block;
} margin: 0 0 -4px;
} }
} }
}
</style> </style>
...@@ -15,16 +15,16 @@ ...@@ -15,16 +15,16 @@
<direct-cost v-if="current == 'directCost'"></direct-cost> <direct-cost v-if="current == 'directCost'"></direct-cost>
<!-- 工料汇总 --> <!-- 工料汇总 -->
<feed-summary v-if="current == 'feedSummary'" :project-id="projectID" :project-detail-info="detailInfo"></feed-summary> <feed-summary v-if="current == 'feedSummary'" :project-id="projectId" :project-detail-info="detailInfo"></feed-summary>
<!--措施项目--> <!--措施项目-->
<measure-items v-if="current == 'measureItem'" :project-id="projectID" :project-detail-info="detailInfo"></measure-items> <measure-items v-if="current == 'measureItem'" :project-id="projectId" :project-detail-info="detailInfo"></measure-items>
<!-- 其他项目 --> <!-- 其他项目 -->
<other-projects v-if="current == 'otherItems'"></other-projects> <other-projects v-if="current == 'otherItems'"></other-projects>
<!-- 盈亏分析对比 --> <!-- 盈亏分析对比 -->
<profit-Loss v-if="current == 'profitAndLoss'" :project-id="projectID" :project-detail-info="detailInfo"></profit-Loss> <profit-Loss v-if="current == 'profitAndLoss'" :project-id="projectId" :project-detail-info="detailInfo"></profit-Loss>
</div> </div>
</div> </div>
...@@ -62,13 +62,13 @@ export default { ...@@ -62,13 +62,13 @@ export default {
}, },
data() { data() {
return { return {
projectID: "", projectId: "",
current: "", current: "",
// 详情信息变量 // 详情信息变量
detailInfo: { detailInfo: {
projectId: "1754425038355890177", projectId: "1754425038355890177",
cbStage: 0, cbStage: 0,
cbType:1 cbType: 1
}, },
toggleTabs: [ toggleTabs: [
{ {
...@@ -162,20 +162,21 @@ export default { ...@@ -162,20 +162,21 @@ export default {
async getProjectQuery() { async getProjectQuery() {
try { try {
const { query } = this.$route; const { query } = this.$route;
// if (!query.projectID) return this.$message.error("缺少项目id"); // if (!query.projectId) return this.$message.error("缺少项目id");
this.projectID = query.projectID; this.projectId = query.projectId;
// 获取详情 保证详情获取完毕 再执行tab命中 进行生命周期
await this.getProjectDetail(query.projectId);
if (query.current) { if (query.current) {
this.current = query.current; this.current = query.current;
} else { } else {
// 默认命中工程项目信息 // 默认命中工程项目信息
this.current = "basicEngineeringInformation"; this.current = "basicEngineeringInformation";
}; };
await this.getProjectDetail(query.projectID);
} catch (error) { } catch (error) {
console.log(error); console.log(error);
} }
}, },
async getProjectDetail(projectID) { async getProjectDetail(projectId) {
try { try {
} catch (error) { } catch (error) {
......
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