@@ -272,10 +293,12 @@ import util from "@/common/js/util"; // 全局公共库
import { mapGetters } from "vuex";
import { initSimpleDicts } from '@/api/mdp/meta/item';//下拉框数据查询
import { getDefOptions} from '@/api/xm/core/xmProject';
-
+ import { listXmProject} from '@/api/xm/core/xmProject';
+ import { loadTasksToXmProjectState , loadTasksSettleToXmProjectState} from '@/api/xm/core/xmProjectState';
+ import store from '@/store'
export default {
computed: {
- ...mapGetters(["userInfo"]),
+ ...mapGetters(["userInfo",'projectInfo']),
competeTasks: function (){
return this.selProject.taskCnt-this.selProject.taskUnstartCnt-this.selProject.taskExecCnt;
},
@@ -361,6 +384,7 @@ export default {
},
data() {
return {
+ load:{list:false,add:false,calcProject:false,calcSettle:false},
isActive: true,
maxTableHeight:300,
dicts: getDefOptions(),//下拉选择框的所有静态数据 params=[{categoryId:'0001',itemCode:'sex'}] 返回结果 {'sex':[{optionValue:'1',optionName:'男',seqOrder:'1',fp:'',isDefault:'0'},{optionValue:'2',optionName:'女',seqOrder:'2',fp:'',isDefault:'0'}]}
@@ -912,6 +936,40 @@ export default {
// 绘制图表
iterationAndProduct.setOption(option);
},
+
+
+ loadTasksToXmProjectState(){
+ var row=this.selProject;
+ var params={projectId:row.id}
+ this.load.calcProject=true;
+ loadTasksToXmProjectState(params).then((res1) => {
+ this.load.calcProject=false;
+ this.load.list=true;
+ listXmProject({id:row.id}).then(res=>{
+ this.load.list=false;
+ var tips = res.data.tips;
+ if(tips.isOk){
+ var selProject=res.data.data[0]
+ if(this.projectInfo && this.projectInfo.id){
+ store.dispatch('setProjectInfo',selProject)
+ }
+ Object.assign(this.selProject,selProject)
+ this.$emit("edit-fields",selProject);
+ }
+ 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 );
+ },
},
mounted() {