Browse Source

优化

master
陈裕财 4 years ago
parent
commit
caffe8ecfe
  1. 44
      src/views/xm/core/xmProject/XmProjectForLinkComplex.vue

44
src/views/xm/core/xmProject/XmProjectForLinkComplex.vue

@ -26,6 +26,21 @@
<el-tab-pane label="项目概览" name="projectOverview" v-if="selProject&&selProject.id"> <el-tab-pane label="项目概览" name="projectOverview" v-if="selProject&&selProject.id">
<xm-project-overview v-if="selProject && showPanel=='projectOverview'" :xm-product="xmProduct" :xm-iteration="xmIteration" :sel-project="selProject"></xm-project-overview> <xm-project-overview v-if="selProject && showPanel=='projectOverview'" :xm-product="xmProduct" :xm-iteration="xmIteration" :sel-project="selProject"></xm-project-overview>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="执行统计" name="projectCalc" v-if="selProject&&selProject.id">
<div v-if="showPanel=='projectCalc'">
<el-row>
<el-button type="primary" @click="loadTasksToXmProjectState" v-loading="load.calcProject">计算项目预算数据</el-button>
<br>
<font color="blue" style="font-size:10px;">将从项目任务中汇总进度预算工作量实际工作量预算金额实际金额缺陷数需求数等数据到项目统计表</font>
</el-row>
<el-row>
<el-button type="primary" @click="loadTasksSettleToXmProjectState" v-loading="load.calcSettle">计算项目结算数据</el-button>
<br>
<font color="blue" style="font-size:10px;">将从项目任务汇总结算数据项目统计表</font>
</el-row>
</div>
</el-tab-pane>
<el-tab-pane label="项目详情" name="detail" v-if="selProject&&selProject.id"> <el-tab-pane label="项目详情" name="detail" v-if="selProject&&selProject.id">
<xm-project-detail v-if="showPanel=='detail'" :sel-project="selProject" @submit="afterEditSubmit"></xm-project-detail> <xm-project-detail v-if="showPanel=='detail'" :sel-project="selProject" @submit="afterEditSubmit"></xm-project-detail>
</el-tab-pane> </el-tab-pane>
@ -85,6 +100,8 @@ import XmProjectOverview from "./XmProjectOverview";
import XmProductProjectLinkMng from '../xmProductProjectLink/XmProductProjectLinkMng.vue'; import XmProductProjectLinkMng from '../xmProductProjectLink/XmProductProjectLinkMng.vue';
import XmIterationLinkForProject from '../xmIterationLink/XmIterationLinkForProject.vue'; import XmIterationLinkForProject from '../xmIterationLink/XmIterationLinkForProject.vue';
import XmPlan from '../xmTask/XmPlan.vue'; import XmPlan from '../xmTask/XmPlan.vue';
import { loadTasksToXmProjectState , loadTasksSettleToXmProjectState} from '@/api/xm/core/xmProjectState';
export default { export default {
computed: { computed: {
...mapGetters([ ...mapGetters([
@ -100,6 +117,9 @@ import XmPlan from '../xmTask/XmPlan.vue';
}, },
data() { data() {
return{ return{
load:{
calcProject:false,
},
selProject:null, selProject:null,
showPanel:'projectOverview',//menus,tasks,bugs,iterationStateShow showPanel:'projectOverview',//menus,tasks,bugs,iterationStateShow
projectAddVisible:false, projectAddVisible:false,
@ -126,7 +146,29 @@ import XmPlan from '../xmTask/XmPlan.vue';
this.$refs.xmProjectSelect.xmProjects.push(project) this.$refs.xmProjectSelect.xmProjects.push(project)
this.$refs.xmProjectSelect.rowClick(project); this.$refs.xmProjectSelect.rowClick(project);
} }
}
},
loadTasksToXmProjectState(){
var row=this.selProject;
var params={projectId:row.id}
loadTasksToXmProjectState(params).then((res) => {
this.load.calcProject=false;
var tips=res.data.tips;
if(this.$refs['xmProjectSelect']){
this.$refs['xmProjectSelect'].reloadOne();
}
this.$notify({position:'bottom-left',showClose:true,message: tips.msg, type: tips.isOk?'success':'error'});
}).catch( err => this.load.calcProject=false );
},
loadTasksSettleToXmProjectState(){
var row=this.selProject;
var params={projectId:row.id}
loadTasksSettleToXmProjectState(params).then((res) => {
this.load.calcProject=false;
var tips=res.data.tips;
this.$notify({position:'bottom-left',showClose:true,message: tips.msg, type: tips.isOk?'success':'error'});
}).catch( err => this.load.calcProject=false );
},
},//end methods },//end methods
components: { components: {
// //

Loading…
Cancel
Save