From dc2061e5768ef3a901a855cb7643467db2316a18 Mon Sep 17 00:00:00 2001
From: cuikaidong <ckd2942379034@163.com>
Date: 星期五, 23 五月 2025 17:17:02 +0800
Subject: [PATCH] 封存启封功能完善

---
 src/views/flowable/workflow/sealUp/EquipmentSealUpApprovalModal.vue |   59 +++++++++++++----------------
 src/views/eam/dispose/EamEquipmentSealUpList.vue                    |   37 +++++++++++++++++-
 src/views/flowable/workflow/FlowTodo.vue                            |    3 +
 3 files changed, 64 insertions(+), 35 deletions(-)

diff --git a/src/views/eam/dispose/EamEquipmentSealUpList.vue b/src/views/eam/dispose/EamEquipmentSealUpList.vue
index de6c055..c26873b 100644
--- a/src/views/eam/dispose/EamEquipmentSealUpList.vue
+++ b/src/views/eam/dispose/EamEquipmentSealUpList.vue
@@ -79,7 +79,14 @@
                   <a>鍒犻櫎</a>
                 </a-popconfirm>
            </template>
-          <template v-else>
+          <template v-if="record.sealStatus === 'SEALED'">
+             <a-popconfirm title='纭畾鍚皝鍚�?' @confirm='() => handleUnseal(record.id)'>
+              <a>鍚皝</a>
+            </a-popconfirm>
+             <a-divider type='vertical' />
+              <a @click='handleDetail(record)'>璇︽儏</a>
+          </template>
+          <template v-if="record.sealStatus === 'COMPLETE'|| record.sealStatus === 'WAIT_UNSEALING_AUDIT' ">
               <a @click='handleDetail(record)'>璇︽儏</a>
           </template>
         </span>
@@ -188,7 +195,8 @@
         list: '/eam/eamEquipmentSealUp/list',
         delete: '/eam/eamEquipmentSealUp/delete',
         deleteBatch: '/eam/eamEquipmentSealUp/deleteBatch',
-        submit: '/eam/eamEquipmentSealUp/submit'
+        submit: '/eam/eamEquipmentSealUp/submit',
+        unseal: '/eam/eamEquipmentSealUp/unseal'
       }
     }
   },
@@ -222,6 +230,31 @@
           })
         }
       })
+    },
+    handleUnseal(id) {
+      if (!this.url.unseal) {
+        this.$message.error('璇疯缃畊rl.submit灞炴��!')
+        return
+      }
+      let that = this
+      getAction(that.url.unseal, { id: id }).then((res) => {
+        if (res.success) {
+          //閲嶆柊璁$畻鍒嗛〉闂
+          that.reCalculatePage(1)
+          // that.$message.success(res.message);
+          that.$notification.success({
+            message: '娑堟伅',
+            description: res.message
+          })
+          that.loadData()
+        } else {
+          // that.$message.warning(res.message);
+          that.$notification.warning({
+            message: '娑堟伅',
+            description: res.message
+          })
+        }
+      })
     }
   }
 }
diff --git a/src/views/flowable/workflow/FlowTodo.vue b/src/views/flowable/workflow/FlowTodo.vue
index c8f36b2..2e24f1e 100644
--- a/src/views/flowable/workflow/FlowTodo.vue
+++ b/src/views/flowable/workflow/FlowTodo.vue
@@ -337,6 +337,9 @@
           case 'equipment_seal_up':
             this.handleEquipmentSealUp(item)
             break
+          case 'equipment_unseal':
+            this.handleEquipmentSealUp(item)
+            break
           default:
             alert('娌℃壘鍒拌娴佺▼')
         }
diff --git a/src/views/flowable/workflow/sealUp/EquipmentSealUpApprovalModal.vue b/src/views/flowable/workflow/sealUp/EquipmentSealUpApprovalModal.vue
index 282d290..5d730db 100644
--- a/src/views/flowable/workflow/sealUp/EquipmentSealUpApprovalModal.vue
+++ b/src/views/flowable/workflow/sealUp/EquipmentSealUpApprovalModal.vue
@@ -28,32 +28,27 @@
             </a-form-model-item>
           </a-col>
         </a-row>
-        <a-row :guitter="24">
+        <a-row :gutter="24">
           <a-col :span="12">
-            <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="leanDepartId_dictText" label="鍊熷叆杞﹂棿">
-              <a-input v-model="model.leanDepartId_dictText" disabled />
+            <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="sealUpReason" label="灏佸瓨鍘熷洜">
+              <a-textarea v-model="model.sealUpReason" disabled />
             </a-form-model-item>
           </a-col>
           <a-col :span="12">
-            <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="leanPerson_dictText" label="鍊熺敤浜�">
-              <a-input v-model="model.leanPerson_dictText" disabled />
+            <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="reportUser_dictText" label="鐢宠浜�">
+              <a-input v-model="model.reportUser_dictText" disabled />
             </a-form-model-item>
           </a-col>
         </a-row>
         <a-row :gutter="24">
-          <a-col :span="12">
-            <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="leanReason" label="鍊熺敤鍘熷洜">
-              <a-textarea v-model="model.leanReason" disabled />
-            </a-form-model-item>
-          </a-col>
-          <a-col :span="12">
-            <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="remark" label="澶囨敞">
+          <a-col :span="24">
+            <a-form-model-item :labelCol="labelColLong" :wrapperCol="wrapperColLong" prop="remark" label="澶囨敞">
               <a-textarea v-model="model.remark" disabled />
             </a-form-model-item>
           </a-col>
         </a-row>
         <div v-if="approvalDisable">
-          <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 绠$悊鍛樺鎵�
+          <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 绠$悊鍛樺皝瀛樺鏍�
           </a-divider>
           <a-row :gutter="24">
             <a-col :span="12">
@@ -70,27 +65,19 @@
             </a-col>
           </a-row>
         </div>
-        <div v-if="returnDisable">
-          <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 褰掕繕淇℃伅
+        <div v-if="confirmDisable">
+          <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 绠$悊鍛樺惎灏佸鏍�
           </a-divider>
           <a-row :gutter="24">
-            <a-col :span="24">
-              <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="returnComment"
-                                 label="褰掕繕澶囨敞">
-                <a-textarea placeholder="璇疯緭鍏ュ綊杩樺娉�" v-model="model.returnComment"
-                            :disabled="disableSubmit || confirmDisable" />
+            <a-col :span="12">
+              <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="unsealApprovalDealType" label="瀹℃壒绫诲瀷">
+                <j-dict-select-tag type="radio" v-model="model.unsealApprovalDealType" dictCode="approved_rejected"
+                                   placeholder="璇烽�夋嫨澶勭悊绫诲瀷" :disabled="disableSubmit || initialAcceptanceDisable" />
               </a-form-model-item>
             </a-col>
-          </a-row>
-        </div>
-        <div v-if="confirmDisable">
-          <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;"> 绠$悊鍛樼‘璁�
-          </a-divider>
-          <a-row :gutter="24">
-            <a-col :span="24">
-              <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="confirmComment"
-                                 label="纭鎰忚">
-                <a-textarea placeholder="璇疯緭鍏ユ剰瑙�" v-model="model.confirmComment"
+            <a-col :span="12">
+              <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="unsealApprovalComment" label="瀹℃壒鎰忚">
+                <a-textarea placeholder="璇疯緭鍏ユ剰瑙�" v-model="model.unsealApprovalComment"
                             :disabled="disableSubmit || completionDisable" />
               </a-form-model-item>
             </a-col>
@@ -145,7 +132,13 @@
         approvalDealType: [
           { required: true, message: '璇烽�夋嫨閫氳繃鎴栭┏鍥�!' }
         ],
+        unsealApprovalDealType: [
+          { required: true, message: '璇烽�夋嫨閫氳繃鎴栭┏鍥�!' }
+        ],
         approvalComment: [
+          { required: true, message: '璇疯緭鍏ュ鎵规剰瑙�!' }
+        ],
+        unsealApprovalComment: [
           { required: true, message: '璇疯緭鍏ュ鎵规剰瑙�!' }
         ],
         returnComment: [
@@ -168,13 +161,13 @@
   },
   computed: {
     approvalDisable: function() {
-      return ['WAIT_APPROVAL', 'WAIT_RETURN', 'WAIT_CONFIRM', 'COMPLETE'].includes(this.model.leanStatus)
+      return ['SEALED', 'WAIT_UNSEALING_AUDIT', 'COMPLETE'].includes(this.model.sealStatus)
     },
     returnDisable: function() {
-      return ['WAIT_RETURN', 'WAIT_CONFIRM', 'COMPLETE'].includes(this.model.leanStatus)
+      return ['SEALED', 'WAIT_UNSEALING_AUDIT', 'COMPLETE'].includes(this.model.sealStatus)
     },
     confirmDisable: function() {
-      return ['WAIT_CONFIRM', 'COMPLETE'].includes(this.model.leanStatus)
+      return ['WAIT_UNSEALING_AUDIT', 'COMPLETE'].includes(this.model.sealStatus)
     },
     completionDisable: function() {
       return ['COMPLETE'].includes(this.model.leanStatus)

--
Gitblit v1.9.3