wyf 9 месяцев назад
Родитель
Сommit
5d5911ebb3

+ 6 - 2
src/views/emergency/emergency-drill/PageDrillPlanItem.vue

@@ -86,10 +86,14 @@
   };
 
   const executeSave = async () => {
-    dynamicComponentRef.value.executeSaveOrSubmit('save');
+    formLoading.value = true;
+    await dynamicComponentRef.value.executeSaveOrSubmit('save');
+    formLoading.value = false;
   };
   const executeSubmit = async () => {
-    dynamicComponentRef.value.executeSaveOrSubmit('submit');
+    formLoading.value = true;
+    await dynamicComponentRef.value.executeSaveOrSubmit('submit');
+    formLoading.value = false;
   };
 
   const recordSave = async () => {};

+ 2 - 1
src/views/emergency/emergency-drill/components/DrillPlanExecuteForm.vue

@@ -68,6 +68,7 @@
   import UploadFiles from '@/views/disaster/components/UploadFiles.vue';
 
   const props = defineProps<{
+    insCode: string;
     drillData: DrillPlanItemDetail;
   }>();
 
@@ -87,7 +88,7 @@
             drillScript: props.drillData.drillScript,
           }
         : DRILL_EXECUTE_FORM_DATA,
-      props.drillData.drillScope === 'institute_level' ? INS_DRILL_EXECUTE_FORM_RULES : DEP_DRILL_EXECUTE_FORM_RULES,
+      props.drillData.drillScope === props.insCode ? INS_DRILL_EXECUTE_FORM_RULES : DEP_DRILL_EXECUTE_FORM_RULES,
     );
 
   const cascaderProp = { multiple: true, expandTrigger: 'hover', emitPath: false, value: 'id', label: 'deptName' };

+ 5 - 0
src/views/emergency/emergency-drill/components/DrillPlanExecuteItem.vue

@@ -15,6 +15,7 @@
       <DrillPlanExecuteForm
         v-if="drillData"
         ref="drillPlanExecuteFormRef"
+        :ins-code="drillScopeDice[0].itemCode"
         :drill-data="drillData"
         style="margin-top: 20px"
       />
@@ -37,6 +38,9 @@
   import { getAllApproval } from '@/api/approval/approval';
   import type { FileItem } from '@/views/disaster/types';
   import { uploadFileApi, UPLOAD_BIZ_TYPE } from '@/api/minio';
+  import { useEmergencyDrillHook } from '../hook';
+
+  const { drillScopeDice, getDrillScopeDict } = useEmergencyDrillHook();
 
   const route = useRoute();
   const id = route.query.id;
@@ -121,6 +125,7 @@
   }
 
   onMounted(() => {
+    getDrillScopeDict();
     getDrillData();
   });
 

+ 4 - 2
src/views/emergency/emergency-drill/components/DrillPlanViewActivities.vue

@@ -55,8 +55,10 @@
         ? drillData.value.responsibleDeptNameList!.replace(/^\[|\]$/g, '')
         : undefined;
 
-      const emergencyPlan = await queryEmergencyPlanDetail(drillData.value.emergencyPlanId);
-      drillData.value.emergencyPlanFile = emergencyPlan.planName + emergencyPlan.appendix;
+      if (drillData.value.emergencyPlanId) {
+        const emergencyPlan = await queryEmergencyPlanDetail(drillData.value.emergencyPlanId);
+        drillData.value.emergencyPlanFile = emergencyPlan.planName + emergencyPlan.appendix;
+      }
 
       const allApprovals = await getAllApproval();
       drillData.value.approvalTemplateName = allApprovals.find(