Răsfoiți Sursa

切换判断

gangyj 3 ani în urmă
părinte
comite
0bd0dac109

+ 40 - 24
src/views/manager/contractinfo/detail.vue

@@ -382,33 +382,49 @@
         this.setHeaders(); 
       },
       beforeLeave(activeName, oldActiveName){
-        if(oldActiveName == '1' && !this.contractForm.id){
-          this.$message({
-            type: "warning",
-            message: "请先保存合同段后,再进行合同段的分配"
-          });
-          return false;
-        }
+        return new Promise((resolve,reject)=>{
+          if(oldActiveName == '1' && !this.contractForm.id){
+            this.$message({
+              type: "warning",
+              message: "请先保存合同段后,再进行合同段的分配"
+            });
+            reject();
+          }
 
-       if(this.typeChang[oldActiveName]){
-         this.$confirm('检测到新编辑内容, 是否保存?', '提示', {
-          confirmButtonText: '确定',
-          cancelButtonText: '不用',
-          type: 'warning'
-        }).then(() => {
-          switch (oldActiveName) {
-            case '1':
-              this.savecontract().then((res)=>{
-                this.contractForm.id = res.data.data.id;
-                this.$message({
-                  type: "success",
-                  message: "保存成功!"
-                });
-              });
-              break;
+          if(this.typeChang[oldActiveName]){
+            this.$confirm('检测到新编辑内容, 是否保存?', '提示', {
+              confirmButtonText: '确定',
+              cancelButtonText: '不用',
+              type: 'warning'
+            }).then(() => {
+              switch (oldActiveName) {
+                case '1':
+                  this.savecontract().then((res)=>{
+                    this.contractForm.id = res.data.data.id;
+                    resolve();
+                    this.$message({
+                      type: "success",
+                      message: "保存成功!"
+                    });
+                  });
+                  break;
+                case '2':
+                  this.saveWbsTree().then(()=>{
+                    resolve();
+                    this.$message({
+                      type: "success",
+                      message: "保存成功!"
+                    });
+                  })
+                  break;
+              }
+            }).catch(()=>{
+              reject();
+            })
+          }else{
+            resolve();
           }
         })
-       }
       },
 
       getProjectDeatil(){

+ 42 - 26
src/views/manager/projectinfo/detail.vue

@@ -99,7 +99,7 @@
             <el-divider></el-divider>
             <div class="flex jc-al-c mg-b-10">
               <span>维护人员角色</span>
-              <avue-input-tree :check-strictly="true" v-model="rId" placeholder="请选择" type="tree" :dic="roleList" :props="treeProps"></avue-input-tree>
+              <avue-input-tree :check-strictly="true" v-model="rId" placeholder="请选择" type="tree" :dic="roleList" :props="treeProps" @change="getUserByCondition"></avue-input-tree>
               <!-- <el-select v-model="rId" clearable placeholder="请选择" @change="getUserByCondition">
                 <el-option v-for="item in roleList" :key="item.id" :label="item.title"  :value="item.id"></el-option>
               </el-select> -->
@@ -120,7 +120,7 @@
               </el-table>
             </div>
             <div class="flex jc-al-c mg-t-20">
-              <span>添加系内部人员</span>
+              <span>添加系内部人员</span>
               <el-select v-model="userId" filterable placeholder="请输入搜索">
                 <el-option v-for="item in userList" :key="item.id" :label="item.name"  :value="item.id"></el-option>
               </el-select>
@@ -261,33 +261,49 @@
        }
      },
       beforeLeave(activeName, oldActiveName){
-        if(oldActiveName == '1' && !this.projectForm.id){
-          this.$message({
-            type: "warning",
-            message: "请先保存项目后,再进行项目的分配"
-          });
-          return false;
-        }
+        return new Promise((resolve,reject)=>{
+          if(oldActiveName == '1' && !this.projectForm.id){
+            this.$message({
+              type: "warning",
+              message: "请先保存项目后,再进行项目的分配"
+            });
+            reject();
+          }
 
-       if(this.typeChang[oldActiveName]){
-         this.$confirm('检测到新编辑内容, 是否保存?', '提示', {
-          confirmButtonText: '确定',
-          cancelButtonText: '不用',
-          type: 'warning'
-        }).then(() => {
-          switch (oldActiveName) {
-            case '1':
-              this.saveProject().then((res)=>{
-                this.projectForm.id = res.data.data.id;
-                this.$message({
-                  type: "success",
-                  message: "保存成功!"
-                });
-              });
-              break;
+          if(this.typeChang[oldActiveName]){
+            this.$confirm('检测到新编辑内容, 是否保存?', '提示', {
+              confirmButtonText: '确定',
+              cancelButtonText: '不用',
+              type: 'warning'
+            }).then(() => {
+              switch (oldActiveName) {
+                case '1':
+                  this.saveProject().then((res)=>{
+                    this.projectForm.id = res.data.data.id;
+                    resolve();
+                    this.$message({
+                      type: "success",
+                      message: "保存成功!"
+                    });
+                  });
+                  break;
+                case '2':
+                  this.saveWbsTree().then(()=>{
+                    resolve();
+                    this.$message({
+                      type: "success",
+                      message: "保存成功!"
+                    });
+                  })
+                  break;
+              }
+            }).catch(()=>{
+              reject();
+            })
+          }else{
+              resolve();
           }
         })
-       }
      },
 
      getProjectDeatil(){