From 9219b0c4d7aecd6347a120ae0923ee5a6a25da05 Mon Sep 17 00:00:00 2001
From: zhaowei <zhaowei>
Date: 星期三, 23 四月 2025 10:34:18 +0800
Subject: [PATCH] 1、我的待办页面 设备维修  分类审批弹窗功能逻辑开发并复用至我的已办和维修工单页面 2、根据会议内容调整系统功能 3、调整设备铭牌打印高度

---
 src/views/flowable/workflow/repairOrder/RepairOrderApprovalModal.vue |   71 ++++++++++++++++++++---------------
 1 files changed, 41 insertions(+), 30 deletions(-)

diff --git a/src/views/flowable/workflow/repairOrder/RepairOrderApprovalModal.vue b/src/views/flowable/workflow/repairOrder/RepairOrderApprovalModal.vue
index 07f5254..4384150 100644
--- a/src/views/flowable/workflow/repairOrder/RepairOrderApprovalModal.vue
+++ b/src/views/flowable/workflow/repairOrder/RepairOrderApprovalModal.vue
@@ -1,11 +1,13 @@
 <template>
-  <a-modal
+  <j-modal
     :width="1200"
     :visible="visible"
     :title="title"
+    :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
     @cancel="handCancel"
     @ok="submitForm"
     :mask-closable="false"
+    :confirmLoading="confirmLoading"
     centered
   >
     <a-spin :spinning="spinning">
@@ -62,7 +64,8 @@
             <a-row>
               <a-col :span="twoColSpan*2">
                 <a-form-model-item label="鏄惁闇�瑕侀鐢ㄥ浠�" prop="isUseSpare">
-                  <a-radio-group v-model="tableRowRecord.isUseSpare">
+                  <a-radio-group v-model="tableRowRecord.isUseSpare"
+                                 :disabled="isDisableUseSpare">
                     <a-radio :value="1">鏄�</a-radio>
                     <a-radio :value="0">鍚�</a-radio>
                   </a-radio-group>
@@ -95,42 +98,44 @@
             </a-row>
           </a-tab-pane>
 
-          <a-tab-pane key='2' tab='娴佺▼鑺傜偣'>
-            <a-card :bordered="false">
-              <a-timeline>
-                <a-timeline-item v-for="(item,index) in hitaskDataSource" :key="index">
-                  <div>
-                    <h3 style="font-weight: bold">{{item.taskName}}</h3>
-                    <div>澶勭悊浜猴細{{item.assignee_dictText}}</div>
-                    <div v-if="index !==0">澶勭悊鏃堕暱锛歿{item.duration}}</div>
-                    <div v-if="item.name !== '鎻愪氦鐢宠'">澶勭悊绫诲瀷锛歿{item.sequenceFlowName}}</div>
-                    <div v-if="item.description">澶勭悊鎰忚锛歿{item.description}}</div>
-                  </div>
-                </a-timeline-item>
-              </a-timeline>
-            </a-card>
-          </a-tab-pane>
+          <template v-if="selectShenpiData.procInstId">
+            <a-tab-pane key='2' tab='娴佺▼鑺傜偣'>
+              <a-card :bordered="false">
+                <a-timeline>
+                  <a-timeline-item v-for="(item,index) in hitaskDataSource" :key="index">
+                    <div>
+                      <h3 style="font-weight: bold;">{{item.taskName}}</h3>
+                      <div>澶勭悊浜猴細{{item.assignee_dictText}}</div>
+                      <div v-if="index !==0">澶勭悊鏃堕暱锛歿{item.duration}}</div>
+                      <div v-if="item.name !== '鎻愪氦鐢宠'">澶勭悊绫诲瀷锛歿{item.sequenceFlowName}}</div>
+                      <div v-if="item.description">澶勭悊鎰忚锛歿{item.description}}</div>
+                    </div>
+                  </a-timeline-item>
+                </a-timeline>
+              </a-card>
+            </a-tab-pane>
 
-          <a-tab-pane key='3' tab='娴佺▼鍥�'>
-            <img :src="imageSrc" alt="Fetched Image"/>
-          </a-tab-pane>
+            <a-tab-pane key='3' tab='娴佺▼鍥�'>
+              <img :src="imageSrc" alt="Fetched Image"/>-->
+            </a-tab-pane>
+          </template>
         </a-tabs>
 
-        <template v-if="isDisplayConfirmSpare">
+        <template v-if="tableRowRecord.isUseSpare===1&&isDisableUseSpare">
           <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;">绠$悊鍛橀鐢ㄥ浠�
           </a-divider>
 
           <a-row>
             <a-col :span="twoColSpan*2">
               <a-form-model-item prop="sparePartDescription" label="澶囦欢鎻忚堪">
-                <a-textarea :readOnly="disableSubmit||tableRowRecord.repairStatus!=='WAIT_SPARES'"
-                            v-model="tableRowRecord.sparePartDescription"/>
+                <a-textarea placeholder="璇疯緭鍏ュ浠舵弿杩�" :readOnly="disableSubmit||tableRowRecord.repairStatus!=='WAIT_SPARES'"
+                            v-model="tableRowRecord.sparePartDescription"></a-textarea>
               </a-form-model-item>
             </a-col>
           </a-row>
         </template>
 
-        <template v-if="tableRowRecord.sparePartDescription">
+        <template v-if="Boolean(tableRowRecord.sparePartDescription)&&isDisplayRepairResult">
           <a-divider orientation="center" style="font-size: large;font-style: italic;color: #66aeed;">缁翠慨缁撴灉涓婃姤</a-divider>
           <a-row>
             <a-col :span="twoColSpan*2">
@@ -163,7 +168,7 @@
         </template>
       </a-form-model>
     </a-spin>
-  </a-modal>
+  </j-modal>
 </template>
 
 <script>
@@ -187,6 +192,7 @@
         twoColSpan: 12,
         inputReadOnly: true,
         disableSubmit: false,
+        confirmLoading: false,
         spinning: false,
         tableRowRecord: {},
         hitaskDataSource: [],
@@ -234,8 +240,11 @@
       }
     },
     computed: {
-      isDisplayConfirmSpare() {
-        return ['WAIT_SPARES', 'WAIT_CONFIRM', 'COMPLETE'].includes(this.tableRowRecord.repairStatus)
+      isDisableUseSpare() {
+        return this.disableSubmit || this.tableRowRecord.repairStatus !== 'UNDER_REPAIR' || Boolean(this.tableRowRecord.sparePartDescription)
+      },
+      isDisplayRepairResult() {
+        return ['UNDER_REPAIR', 'WAIT_CONFIRM', 'COMPLETE'].includes(this.tableRowRecord.repairStatus)
       },
       isDisableSubmitRepairResult() {
         return ['WAIT_CONFIRM', 'COMPLETE'].includes(this.tableRowRecord.repairStatus)
@@ -247,6 +256,7 @@
        * @param record 寰呭姙璁板綍淇℃伅
        */
       getAllApproveData(record) {
+        if (!record.procInstId) return
         console.log('record----->', record)
         const { procInstId, processDefinitionId, processInstanceId, processDefinitionKey } = record
         const param = { procInstId }
@@ -302,7 +312,7 @@
         // 瑙﹀彂琛ㄥ崟楠岃瘉
         this.$refs.form.validate(valid => {
           if (valid) {
-            that.confirmLoading = true
+            that.confirmLoading = that.spinning = true
             const { isUseSpare, faultReason, repairDescription, sparePartDescription, imageFiles, equipmentId } = that.tableRowRecord
             const { dataId, id, procInstId, taskDefKey, variables } = that.selectShenpiData
 
@@ -324,12 +334,13 @@
               .then((res) => {
                 if (res.success) {
                   that.$message.success(res.message)
-                  that.$emit('ok')
+                  that.handCancel()
+                  that.$emit('searchReset')
                 } else {
                   that.$message.warning(res.message)
                 }
               }).finally(() => {
-              that.confirmLoading = false
+              that.confirmLoading = that.spinning = false
             })
           } else {
             return false

--
Gitblit v1.9.3