Browse Source

修复履职、安全检查缺陷

jiawuxian 1 year ago
parent
commit
9ec7c5318b

+ 2 - 2
src/views/resumption/plan/index.vue

@@ -460,7 +460,7 @@ export default {
     //   }
     //   }
     //   return false;
     //   return false;
     // },
     // },
-    showPublish(row) {
+    showPublish(row) {      
       //有父计划且父计划不是使用中状态,不能下发
       //有父计划且父计划不是使用中状态,不能下发
       if (row.parentStatus != 1 && row.parentId>0) {
       if (row.parentStatus != 1 && row.parentId>0) {
         return false;
         return false;
@@ -486,7 +486,7 @@ export default {
     },
     },
     showDelete(row) {
     showDelete(row) {
       //本机构创建的计划,才能删除
       //本机构创建的计划,才能删除
-      return row.planCreateOrgId == this.orgId;
+      return row.planCreateOrgId == this.orgId && row.planOfOrgId==this.orgId;
     },
     },
     showWithDraw(row) {
     showWithDraw(row) {
       //本机构创建是自己+状态为使用中
       //本机构创建是自己+状态为使用中

+ 25 - 5
src/views/safetycheck/plan/dialog.edit.vue

@@ -116,7 +116,7 @@
                   clearable
                   clearable
                 >
                 >
                   <el-option
                   <el-option
-                    v-for="item in dict.type.sys_org_type"
+                    v-for="item in orgTypeOptions"
                     :key="item.value"
                     :key="item.value"
                     :label="item.label"
                     :label="item.label"
                     :value="parseInt(item.value)"
                     :value="parseInt(item.value)"
@@ -135,6 +135,7 @@
                   placeholder="请选择检查人员"
                   placeholder="请选择检查人员"
                   multiple
                   multiple
                   filterable
                   filterable
+                  collapse-tags
                   @change="handleRolesChange"
                   @change="handleRolesChange"
                 >
                 >
                   <el-option
                   <el-option
@@ -158,6 +159,7 @@
                   placeholder="请选择受检机构类型"
                   placeholder="请选择受检机构类型"
                   clearable
                   clearable
                   multiple
                   multiple
+                  collapse-tags
                 >
                 >
                   <el-option
                   <el-option
                     v-for="item in orgTypeOptions"
                     v-for="item in orgTypeOptions"
@@ -172,6 +174,7 @@
             <el-col :span="6">
             <el-col :span="6">
               <el-form-item prop="count" label="任务次数:">
               <el-form-item prop="count" label="任务次数:">
                 <el-input-number
                 <el-input-number
+                  :disabled="cannotEdit()"
                   style="margin-left: 10px"
                   style="margin-left: 10px"
                   v-model="formData.count"
                   v-model="formData.count"
                   controls-position="right"
                   controls-position="right"
@@ -199,9 +202,15 @@
                 <org-tree-select
                 <org-tree-select
                   :disabled="cannotEdit()"
                   :disabled="cannotEdit()"
                   v-model="formData.checkOrgIds"
                   v-model="formData.checkOrgIds"
-                  :queryData="parseInt(formData.checkOrgType)"
                   ref="checkorgTreeSelect"
                   ref="checkorgTreeSelect"
-                  :enabledCheckOrgTypes="parseInt(formData.checkOrgType)"
+                  :queryData="
+                    (formData.checkOrgTypes==null || formData.checkOrgTypes.length > 1)
+                      ? null
+                      : parseInt(formData.checkOrgTypes[0])
+                  "
+                  :enabledCheckOrgTypes="
+                    formData.checkOrgTypes.map((t) => parseInt(t))
+                  "
                   :disable="true"
                   :disable="true"
                 >
                 >
                 </org-tree-select>
                 </org-tree-select>
@@ -320,8 +329,11 @@
           </el-table-column>
           </el-table-column>
         </el-table>
         </el-table>
       </div>
       </div>
-
-      <div slot="footer" class="dialog-footer">
+      <div v-if="formData.planCycle==6 && formData.taskHasCompleted==1" slot="footer" class="dialog-footer">    
+        <span>存在已完成任务,无周期任务如需修改,请删除后重新下发。</span>
+        <el-button @click="onHide">关闭</el-button>
+      </div>
+      <div v-else slot="footer" class="dialog-footer">        
         <el-button type="primary" @click="onSubmit">确定</el-button>
         <el-button type="primary" @click="onSubmit">确定</el-button>
         <el-button @click="onHide">取消</el-button>
         <el-button @click="onHide">取消</el-button>
       </div>
       </div>
@@ -561,6 +573,10 @@ export default {
         return false;
         return false;
       }
       }
 
 
+      if(this.formData.planCycle==6 && this.formData.taskHasCompleted==1){
+        return true;
+      }
+
       if (this.formData.planOfOrgId != this.orgId) {
       if (this.formData.planOfOrgId != this.orgId) {
         return true;
         return true;
       }
       }
@@ -575,6 +591,10 @@ export default {
         return false;
         return false;
       }
       }
 
 
+      if(this.formData.planCycle==6 && this.formData.taskHasCompleted==1){
+        return true;
+      }
+
       let r =
       let r =
         this.formData.planOfOrgId != this.orgId ||
         this.formData.planOfOrgId != this.orgId ||
         this.formData.planCreateOrgId != this.orgId;
         this.formData.planCreateOrgId != this.orgId;

+ 1 - 1
src/views/safetycheck/plan/distribute.vue

@@ -97,7 +97,7 @@ export default {
           this.info.orgAndStatus = r.data.map((d) => {
           this.info.orgAndStatus = r.data.map((d) => {
             return { orgId: d.id, orgName: d.shortName, status: "1" };
             return { orgId: d.id, orgName: d.shortName, status: "1" };
           });
           });
-          this.$emit("select", this.info);
+          this.$emit("select", this.info, plan);
         } else {
         } else {
           this.isShow = true;
           this.isShow = true;
           listByTypes({
           listByTypes({

+ 29 - 30
src/views/safetycheck/plan/index.vue

@@ -482,13 +482,15 @@ export default {
   computed: {
   computed: {
     ...mapState([]),
     ...mapState([]),
     ...mapGetters(["orgId", "orgName"]),
     ...mapGetters(["orgId", "orgName"]),
-    orgTypeOptions(){
-     if(!this.dict || !this.dict.type.sys_org_type==null)  {
-      return []
-     }
-     
-     return this.dict.type.sys_org_type.filter(t=>!["7","8"].includes(t.value))
-    }
+    orgTypeOptions() {
+      if (!this.dict || !this.dict.type.sys_org_type == null) {
+        return [];
+      }
+
+      return this.dict.type.sys_org_type.filter(
+        (t) => !["7", "8"].includes(t.value)
+      );
+    },
   },
   },
   methods: {
   methods: {
     ...mapMutations([]),
     ...mapMutations([]),
@@ -511,8 +513,8 @@ export default {
       //行社的计划,或检查机构类型是省联社、办事处,走单个下发
       //行社的计划,或检查机构类型是省联社、办事处,走单个下发
       if (
       if (
         row.planOfOrgType == 3 ||
         row.planOfOrgType == 3 ||
-        row.checkOrgType == 1 ||
-        row.checkOrgType == 2
+        row.execOrgType == 1 ||
+        row.execOrgType == 2
       ) {
       ) {
         this.onSinglePlanDistribute(row);
         this.onSinglePlanDistribute(row);
       } else {
       } else {
@@ -524,7 +526,7 @@ export default {
       if (row.planStatus == 0) {
       if (row.planStatus == 0) {
         if (row.planCycle == 6) {
         if (row.planCycle == 6) {
           //无周期任务,
           //无周期任务,
-          let msg = "无周期任务下发后将立即生成任务,确定下发?";
+          let msg = "确定下发任务并立即生成任务?";
           this.$modal.confirm(msg).then(() => {
           this.$modal.confirm(msg).then(() => {
             this.distributeSingle(row.id, true);
             this.distributeSingle(row.id, true);
           });
           });
@@ -609,7 +611,7 @@ export default {
     },
     },
     showDelete(row) {
     showDelete(row) {
       //本机构创建的计划,才能删除
       //本机构创建的计划,才能删除
-      return row.planCreateOrgId == this.orgId;
+      return row.planCreateOrgId == this.orgId && row.planOfOrgId == this.orgId;
     },
     },
     showWithDraw(row) {
     showWithDraw(row) {
       //本机构创建是自己+状态为使用中
       //本机构创建是自己+状态为使用中
@@ -641,7 +643,7 @@ export default {
       if (row.planStatus == 0) {
       if (row.planStatus == 0) {
         if (row.planCycle == 6) {
         if (row.planCycle == 6) {
           //无周期任务,
           //无周期任务,
-          let msg = "无周期任务下发后将立即生成任务,确定下发?";
+          let msg = "确定下发任务并立即生成任务?";
           this.$modal.confirm(msg).then(() => {
           this.$modal.confirm(msg).then(() => {
             this.distributeInner(selectList, true);
             this.distributeInner(selectList, true);
           });
           });
@@ -667,11 +669,9 @@ export default {
         } else {
         } else {
           msg = "因存在已完成任务,是否确定从下周期生成任务?";
           msg = "因存在已完成任务,是否确定从下周期生成任务?";
         }
         }
-        this.$modal
-          .confirm(msg)
-          .then(() => {
-            this.distributeInner(selectList, false);
-          });
+        this.$modal.confirm(msg).then(() => {
+          this.distributeInner(selectList, false);
+        });
       } else {
       } else {
         this.distributeInner(selectList, false);
         this.distributeInner(selectList, false);
       }
       }
@@ -691,9 +691,16 @@ export default {
 
 
     //开始撤回
     //开始撤回
     chhuile(row) {
     chhuile(row) {
+      if (row.planCycle == "6" && row.taskHasCompleted == 1) {
+        //无周期任务有已完成时,不能撤回
+        this.$modal.alertSuccess(
+          "存在已完成任务,无周期任务不允许撤回,如需删除下发任务请点击“删除”。"
+        );
+        return;
+      }
       let msg;
       let msg;
-      
-      if (row.taskHasCompleted != 1) {        
+
+      if (row.taskHasCompleted != 1) {
         msg = "因不存在已完成任务,撤回后将删除所有生成任务?";
         msg = "因不存在已完成任务,撤回后将删除所有生成任务?";
       } else {
       } else {
         msg = "因存在已完成任务,撤回后下周期起将不再生成任务?";
         msg = "因存在已完成任务,撤回后下周期起将不再生成任务?";
@@ -764,18 +771,10 @@ export default {
       if (row.planStatus == 0) {
       if (row.planStatus == 0) {
         msg = '是否确认删除名称为"' + row.planName + '"的任务?';
         msg = '是否确认删除名称为"' + row.planName + '"的任务?';
       } else if (row.planStatus == 1) {
       } else if (row.planStatus == 1) {
-        if (row.planCycle == 1) {
-          msg = "本次删除将强制删除今日所有任务?";
-        } else {
-          msg = "本次删除将强制删除当前任务时间及以后所有任务";
-        }
+        msg = "本次删除将强制删除当前任务时间及以后所有任务";
       } else if (row.planStatus == 2) {
       } else if (row.planStatus == 2) {
         if (row.hasTaskCurrentCycle) {
         if (row.hasTaskCurrentCycle) {
-          if (row.planCycle == 1) {
-            msg = "本次删除将强制删除今日所有任务?";
-          } else {
-            msg = "本次删除将强制删除当前任务时间及以后所有任务";
-          }
+          msg = "本次删除将强制删除当前任务时间及以后所有任务";
         } else {
         } else {
           msg = '是否确认删除名称为"' + row.planName + '"的任务?';
           msg = '是否确认删除名称为"' + row.planName + '"的任务?';
         }
         }
@@ -799,7 +798,7 @@ export default {
             });
             });
         })
         })
         .catch((ex) => {
         .catch((ex) => {
-          console.error(ex)
+          console.error(ex);
           // 用户点击了取消按钮
           // 用户点击了取消按钮
           // console.log("取消操作...");
           // console.log("取消操作...");
         });
         });