From a284da4c7af8db0004b9779753f7d1effaf6254e Mon Sep 17 00:00:00 2001
From: Lius <Lius2225@163.com>
Date: 星期二, 09 九月 2025 18:00:48 +0800
Subject: [PATCH] 设备调拨功能调整

---
 src/views/eam/dispose/modules/EamEquipmentTransferModal.vue             |   40 ++++
 src/views/eam/dispose/EamEquipmentLeanOutList.vue                       |   29 +--
 src/views/flowable/workflow/transfer/EquipmentTransferApprovalModal.vue |  159 +++++++++++++++++--
 src/views/eam/equipment/modules/EamEquipmentModal.vue                   |   35 ++++
 src/views/eam/dispose/EamEquipmentTransferList.vue                      |  107 ++++++++++--
 src/views/eam/repair/EamRepairOrderList.vue                             |    2 
 src/views/eam/dispose/EamEquipmentScrapList.vue                         |   33 +---
 src/views/eam/dispose/EamEquipmentSealUpList.vue                        |    6 
 src/views/eam/dispose/modules/EamEquipmentLeanOutModal.vue              |   34 ++++
 src/views/mdc/base/modules/GroupUtilizationRateChart/ChartComponent.vue |   18 ++
 10 files changed, 370 insertions(+), 93 deletions(-)

diff --git a/src/views/eam/dispose/EamEquipmentLeanOutList.vue b/src/views/eam/dispose/EamEquipmentLeanOutList.vue
index d26da1c..8cf3283 100644
--- a/src/views/eam/dispose/EamEquipmentLeanOutList.vue
+++ b/src/views/eam/dispose/EamEquipmentLeanOutList.vue
@@ -8,25 +8,15 @@
         @keyup.enter.native="searchQuery"
       >
         <a-row :gutter="24">
-          <a-col
-            :xl="4"
-            :lg="7"
-            :md="8"
-            :sm="24"
-          >
-            <a-form-item label="璁惧缂栧彿1">
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
+            <a-form-item label="璁惧缂栧彿">
               <lx-search-equipment-select
                 placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储"
                 v-model="queryParam.equipmentId"
               ></lx-search-equipment-select>
             </a-form-item>
           </a-col>
-          <a-col
-            :xl="4"
-            :lg="7"
-            :md="8"
-            :sm="24"
-          >
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
             <a-form-item label="鍗曟嵁鍙�">
               <a-input
                 placeholder="璇疯緭鍏ュ崟鎹彿"
@@ -34,12 +24,13 @@
               ></a-input>
             </a-form-item>
           </a-col>
-          <a-col
-            :xl="6"
-            :lg="7"
-            :md="8"
-            :sm="24"
-          >
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
+            <a-form-item label="鍊熺敤鐘舵��">
+              <j-dict-select-tag placeholder="璇烽�夋嫨鍊熺敤鐘舵��" dictCode="equipment_lean_out_status" v-model="queryParam.leanStatus"
+                                 allow-clear/>
+            </a-form-item>
+          </a-col>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
             <span
               style="float: left;overflow: hidden;"
               class="table-page-search-submitButtons"
diff --git a/src/views/eam/dispose/EamEquipmentScrapList.vue b/src/views/eam/dispose/EamEquipmentScrapList.vue
index d9986e6..2c14318 100644
--- a/src/views/eam/dispose/EamEquipmentScrapList.vue
+++ b/src/views/eam/dispose/EamEquipmentScrapList.vue
@@ -6,42 +6,27 @@
       <a-form layout='inline' @keyup.enter.native='searchQuery'>
         <a-row :gutter='24'>
 
-          <a-col :lg='7' :md='8' :sm='24' :xl='6'>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
             <a-form-item label='璁惧缂栧彿'>
               <lx-search-equipment-select v-model='queryParam.equipmentId'
                                           placeholder='璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储'></lx-search-equipment-select>
             </a-form-item>
           </a-col>
-          <a-col :lg='7' :md='8' :sm='24' :xl='6'>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
             <a-form-item label='鍗曟嵁鍙�'>
               <a-input v-model='queryParam.code' placeholder='璇疯緭鍏ュ崟鎹彿'></a-input>
             </a-form-item>
           </a-col>
-          <template v-if='toggleSearchStatus'>
-            <a-col :lg='7' :md='8' :sm='24' :xl='6'>
-              <a-form-item label='璁惧ID'>
-                <a-input v-model='queryParam.equipmentId' placeholder='璇疯緭鍏ヨ澶嘔D'></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :lg='7' :md='8' :sm='24' :xl='6'>
-              <a-form-item label='杞/鎶ュ簾'>
-                <a-input v-model='queryParam.scrapType' placeholder='璇疯緭鍏ヨ浆璁�/鎶ュ簾'></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :lg='7' :md='8' :sm='24' :xl='6'>
-              <a-form-item label='鐢宠浜�'>
-                <a-input v-model='queryParam.reportUser' placeholder='璇疯緭鍏ョ敵璇蜂汉'></a-input>
-              </a-form-item>
-            </a-col>
-          </template>
-          <a-col :lg='7' :md='8' :sm='24' :xl='6'>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
+            <a-form-item label="澶勭疆鐘舵��">
+              <j-dict-select-tag placeholder="璇烽�夋嫨澶勭疆鐘舵��" dictCode="equipment_scrap_status" v-model="queryParam.scrapStatus"
+                                 allow-clear/>
+            </a-form-item>
+          </a-col>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
             <span class='table-page-search-submitButtons' style='float: left;overflow: hidden;'>
               <a-button icon='search' type='primary' @click='searchQuery'>鏌ヨ</a-button>
               <a-button icon='reload' style='margin-left: 8px' type='primary' @click='searchReset'>閲嶇疆</a-button>
-              <!--              <a @click="handleToggleSearch" style="margin-left: 8px">-->
-              <!--                {{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }}-->
-              <!--                <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>-->
-              <!--              </a>-->
             </span>
           </a-col>
 
diff --git a/src/views/eam/dispose/EamEquipmentSealUpList.vue b/src/views/eam/dispose/EamEquipmentSealUpList.vue
index c26873b..f3ada05 100644
--- a/src/views/eam/dispose/EamEquipmentSealUpList.vue
+++ b/src/views/eam/dispose/EamEquipmentSealUpList.vue
@@ -16,6 +16,12 @@
               <a-input v-model='queryParam.code' placeholder='璇疯緭鍏ュ崟鎹彿'></a-input>
             </a-form-item>
           </a-col>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
+            <a-form-item label="灏佸瓨鐘舵��">
+              <j-dict-select-tag placeholder="璇烽�夋嫨灏佸瓨鐘舵��" dictCode="equipment_seal_up_status" v-model="queryParam.sealStatus"
+                                 allow-clear/>
+            </a-form-item>
+          </a-col>
           <a-col :lg='7' :md='8' :sm='24' :xl='6'>
             <span class='table-page-search-submitButtons' style='float: left;overflow: hidden;'>
               <a-button icon='search' type='primary' @click='searchQuery'>鏌ヨ</a-button>
diff --git a/src/views/eam/dispose/EamEquipmentTransferList.vue b/src/views/eam/dispose/EamEquipmentTransferList.vue
index dc1a648..59deab4 100644
--- a/src/views/eam/dispose/EamEquipmentTransferList.vue
+++ b/src/views/eam/dispose/EamEquipmentTransferList.vue
@@ -6,31 +6,36 @@
       <a-form layout='inline' @keyup.enter.native='searchQuery'>
         <a-row :gutter='24'>
 
-          <a-col :lg='7' :md='8' :sm='24' :xl='6'>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
             <a-form-item label='璁惧缂栧彿'>
               <lx-search-equipment-select v-model='queryParam.equipmentId'
                                           placeholder='璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储'></lx-search-equipment-select>
             </a-form-item>
 
           </a-col>
-          <a-col :lg='7' :md='8' :sm='24' :xl='6'>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
             <a-form-item label='鍗曟嵁鍙�'>
               <a-input v-model='queryParam.code' placeholder='璇疯緭鍏ュ崟鎹彿'></a-input>
             </a-form-item>
           </a-col>
-          <template v-if='toggleSearchStatus'>
-            <a-col :lg='7' :md='8' :sm='24' :xl='6'>
-              <a-form-item label='璋冨嚭閮ㄩ棬'>
-                <a-input v-model='queryParam.oldDepartId' placeholder='璇疯緭鍏ヨ皟鍑洪儴闂�'></a-input>
-              </a-form-item>
-            </a-col>
-            <a-col :lg='7' :md='8' :sm='24' :xl='6'>
-              <a-form-item label='璋冨叆閮ㄩ棬'>
-                <a-input v-model='queryParam.newDepartId' placeholder='璇疯緭鍏ヨ皟鍏ラ儴闂�'></a-input>
-              </a-form-item>
-            </a-col>
-          </template>
-          <a-col :lg='7' :md='8' :sm='24' :xl='6'>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
+            <a-form-item label="鍙樺姩鐘舵��">
+              <j-dict-select-tag placeholder="璇烽�夋嫨鍙樺姩鐘舵��" dictCode="equipment_transfer_status" v-model="queryParam.transferStatus"
+                                 allow-clear/>
+            </a-form-item>
+          </a-col>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
+            <a-form-item label='璋冨嚭閮ㄩ棬'>
+              <a-input v-model='queryParam.oldDepartId' placeholder='璇疯緭鍏ヨ皟鍑洪儴闂�'></a-input>
+            </a-form-item>
+          </a-col>
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
+            <a-form-item label='璋冨叆閮ㄩ棬'>
+              <a-input v-model='queryParam.newDepartId' placeholder='璇疯緭鍏ヨ皟鍏ラ儴闂�'></a-input>
+            </a-form-item>
+          </a-col>
+
+          <a-col :xl="4" :lg="7" :md="8" :sm="24">
             <span class='table-page-search-submitButtons' style='float: left;overflow: hidden;'>
               <a-button icon='search' type='primary' @click='searchQuery'>鏌ヨ</a-button>
               <a-button icon='reload' style='margin-left: 8px' type='primary' @click='searchReset'>閲嶇疆</a-button>
@@ -201,19 +206,79 @@
           dataIndex: 'transferTime'
         },
         {
-          title: '瀹℃牳浜�',
+          title: '浣跨敤鍗曚綅棰嗗',
           align: 'center',
-          dataIndex: 'approvalUser_dictText'
+          dataIndex: 'useLeader_dictText'
         },
         {
-          title: '瀹℃牳鎰忚',
+          title: '浣跨敤鍗曚綅棰嗗瀹℃牳绫诲瀷',
           align: 'center',
-          dataIndex: 'approvalComment'
+          dataIndex: 'useLeaderApprovalDealType_dictText'
         },
         {
-          title: '瀹℃牳鏃堕棿',
+          title: '浣跨敤鍗曚綅棰嗗瀹℃牳鎰忚',
           align: 'center',
-          dataIndex: 'approvalTime'
+          dataIndex: 'useLeaderApprovalComment'
+        },
+        {
+          title: '浣跨敤鍗曚綅棰嗗瀹℃牳鏃堕棿',
+          align: 'center',
+          dataIndex: 'useLeaderApprovalTime'
+        },
+        {
+          title: '璋冨叆鍗曚綅棰嗗',
+          align: 'center',
+          dataIndex: 'transferLeader_dictText'
+        },
+        {
+          title: '璋冨叆鍗曚綅棰嗗瀹℃牳绫诲瀷',
+          align: 'center',
+          dataIndex: 'transferLeaderApprovalDealType_dictText'
+        },
+        {
+          title: '璋冨叆鍗曚綅棰嗗瀹℃牳鎰忚',
+          align: 'center',
+          dataIndex: 'transferLeaderApprovalComment'
+        },
+        {
+          title: '璋冨叆鍗曚綅棰嗗瀹℃牳鏃堕棿',
+          align: 'center',
+          dataIndex: 'transferLeaderApprovalTime'
+        },
+        {
+          title: '鏈哄姩鍔炵‘璁や汉',
+          align: 'center',
+          dataIndex: 'externalConfirm_dictText'
+        },
+        {
+          title: '鏈哄姩鍔炵‘璁ゆ椂闂�',
+          align: 'center',
+          dataIndex: 'externalConfirmTime'
+        },
+        {
+          title: '鏄惁闇�瑕佸叕鍙搁瀵煎鎵�',
+          align: 'center',
+          dataIndex: 'companyLeaderCheck_dictText'
+        },
+        {
+          title: '鍏徃棰嗗',
+          align: 'center',
+          dataIndex: 'companyLeader_dictText'
+        },
+        {
+          title: '鍏徃棰嗗瀹℃牳绫诲瀷',
+          align: 'center',
+          dataIndex: 'companyLeaderApprovalDealType_dictText'
+        },
+        {
+          title: '鍏徃棰嗗瀹℃牳鎰忚',
+          align: 'center',
+          dataIndex: 'companyLeaderApprovalComment'
+        },
+        {
+          title: '鍏徃棰嗗瀹℃牳鏃堕棿',
+          align: 'center',
+          dataIndex: 'companyLeaderApprovalTime'
         },
         {
           title: '澶囨敞',
diff --git a/src/views/eam/dispose/modules/EamEquipmentLeanOutModal.vue b/src/views/eam/dispose/modules/EamEquipmentLeanOutModal.vue
index 59f6ec8..66e73b0 100644
--- a/src/views/eam/dispose/modules/EamEquipmentLeanOutModal.vue
+++ b/src/views/eam/dispose/modules/EamEquipmentLeanOutModal.vue
@@ -24,7 +24,7 @@
           <a-tree-select v-model="model.leanDepartId"
                          :disabled="disableSubmit"
                          style="width: 100%"
-                         :tree-data="treeData"
+                         :tree-data="treeDataAlias"
                          :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
                          placeholder="璇烽�夋嫨鍊熷叆杞﹂棿"
                          allow-clear
@@ -67,6 +67,7 @@
         },
         confirmLoading: false,
         treeData: [],
+        treeDataAlias: [],
         validatorRules:{
           equipmentId: [
             { required: true, message: '璇烽�夋嫨璁惧锛�' }
@@ -147,12 +148,43 @@
         getAction(this.url.loadProductionOptions).then(res => {
           if (res.success) {
             this.treeData = [...res.result]
+            this.treeDataAlias = this.deepCopyAndModify(res.result)
           }else {
             that.$message.warning(res.message)
           }
         })
       },
+      deepCopyAndModify(arr) {
+        // 濡傛灉褰撳墠鍏冪礌涓嶆槸鏁扮粍鎴栧璞★紝鐩存帴杩斿洖
+        if (!Array.isArray(arr) && typeof arr !== 'object' || arr === null || arr.length === 0) {
+          return arr;
+        }
 
+        // 濡傛灉鏄暟缁勶紝鍒涘缓涓�涓柊鏁扮粍骞堕�掑綊澶勭悊姣忎釜鍏冪礌
+        if (Array.isArray(arr)) {
+          const newArray = [];
+          for (let i = 0; i < arr.length; i++) {
+            newArray.push(this.deepCopyAndModify(arr[i]));
+          }
+          return newArray;
+        }
+
+        // 濡傛灉鏄璞★紝鍒涘缓涓�涓柊瀵硅薄骞堕�掑綊澶勭悊姣忎釜灞炴��
+        const newObj = {};
+        for (const key in arr) {
+          if (arr.hasOwnProperty(key)) {
+            if(key === 'selectable') {
+              newObj[key] = true;
+            } else if(key === 'children') {
+              newObj[key] = this.deepCopyAndModify(arr[key]);
+            }else {
+              newObj[key] = arr[key];
+            }
+
+          }
+        }
+        return newObj;
+      }
     }
   }
 </script>
diff --git a/src/views/eam/dispose/modules/EamEquipmentTransferModal.vue b/src/views/eam/dispose/modules/EamEquipmentTransferModal.vue
index 515711c..0771067 100644
--- a/src/views/eam/dispose/modules/EamEquipmentTransferModal.vue
+++ b/src/views/eam/dispose/modules/EamEquipmentTransferModal.vue
@@ -19,18 +19,15 @@
           <lx-search-equipment-select placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储"
                                       v-model="model.equipmentId"  :disabled="disableSubmit"></lx-search-equipment-select>
         </a-form-model-item>
-<!--        <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="oldDepartId" label="璋冨嚭閮ㄩ棬">-->
-<!--          <a-input placeholder="璇疯緭鍏ヨ皟鍑洪儴闂�" v-model="model.oldDepartId" />-->
-<!--        </a-form-model-item>-->
           <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="newDepartId" label="璋冨叆杞﹂棿">
             <a-tree-select v-model="model.newDepartId"
                            style="width: 100%"
-                           :tree-data="treeData"
+                           :tree-data="treeDataAlias"
                            :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
                            placeholder="璇烽�夋嫨璋冨叆杞﹂棿"
                            allow-clear
                            tree-default-expand-all
-                           :disabled="editable || disableSubmit"
+                           :disabled="disableSubmit"
             >
             </a-tree-select>
           </a-form-model-item>
@@ -74,7 +71,9 @@
           xs: { span: 24 },
           sm: { span: 18 }
         },
+        disableSubmit: false,
         treeData: [],
+        treeDataAlias: [],
         confirmLoading: false,
         validatorRules:{
           newDepartId: [
@@ -103,6 +102,7 @@
         getAction(this.url.loadProductionOptions).then(res => {
           if (res.success) {
             this.treeData = [...res.result]
+            this.treeDataAlias = this.deepCopyAndModify(res.result)
           }else {
             that.$message.warning(res.message)
           }
@@ -156,7 +156,37 @@
       handleCancel () {
         this.close()
       },
+      deepCopyAndModify(arr) {
+        // 濡傛灉褰撳墠鍏冪礌涓嶆槸鏁扮粍鎴栧璞★紝鐩存帴杩斿洖
+        if (!Array.isArray(arr) && typeof arr !== 'object' || arr === null || arr.length === 0) {
+          return arr;
+        }
 
+        // 濡傛灉鏄暟缁勶紝鍒涘缓涓�涓柊鏁扮粍骞堕�掑綊澶勭悊姣忎釜鍏冪礌
+        if (Array.isArray(arr)) {
+          const newArray = [];
+          for (let i = 0; i < arr.length; i++) {
+            newArray.push(this.deepCopyAndModify(arr[i]));
+          }
+          return newArray;
+        }
+
+        // 濡傛灉鏄璞★紝鍒涘缓涓�涓柊瀵硅薄骞堕�掑綊澶勭悊姣忎釜灞炴��
+        const newObj = {};
+        for (const key in arr) {
+          if (arr.hasOwnProperty(key)) {
+            if(key === 'selectable') {
+              newObj[key] = true;
+            } else if(key === 'children') {
+              newObj[key] = this.deepCopyAndModify(arr[key]);
+            }else {
+              newObj[key] = arr[key];
+            }
+
+          }
+        }
+        return newObj;
+      }
 
     }
   }
diff --git a/src/views/eam/equipment/modules/EamEquipmentModal.vue b/src/views/eam/equipment/modules/EamEquipmentModal.vue
index 79a6881..94365ba 100644
--- a/src/views/eam/equipment/modules/EamEquipmentModal.vue
+++ b/src/views/eam/equipment/modules/EamEquipmentModal.vue
@@ -197,7 +197,7 @@
             <a-form-model-item prop="orgId" label="浣跨敤杞﹂棿">
               <a-tree-select v-model="model.orgId"
                              style="width: 100%"
-                             :tree-data="treeData"
+                             :tree-data="treeDataAlias"
                              :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
                              placeholder="璇烽�夋嫨浣跨敤杞﹂棿"
                              allow-clear
@@ -303,6 +303,7 @@
         loadProductionOptions:'/mdc/mdcProduction/loadProductionTreeOptions'
       },
       treeData: [],
+      treeDataAlias: []
     }
   },
   created() {
@@ -364,11 +365,43 @@
       getAction(this.url.loadProductionOptions).then(res => {
         if (res.success) {
           this.treeData = [...res.result]
+          this.treeDataAlias = this.deepCopyAndModify(res.result)
         }else {
           that.$message.warning(res.message)
         }
       })
     },
+    deepCopyAndModify(arr) {
+      // 濡傛灉褰撳墠鍏冪礌涓嶆槸鏁扮粍鎴栧璞★紝鐩存帴杩斿洖
+      if (!Array.isArray(arr) && typeof arr !== 'object' || arr === null || arr.length === 0) {
+        return arr;
+      }
+
+      // 濡傛灉鏄暟缁勶紝鍒涘缓涓�涓柊鏁扮粍骞堕�掑綊澶勭悊姣忎釜鍏冪礌
+      if (Array.isArray(arr)) {
+        const newArray = [];
+        for (let i = 0; i < arr.length; i++) {
+          newArray.push(this.deepCopyAndModify(arr[i]));
+        }
+        return newArray;
+      }
+
+      // 濡傛灉鏄璞★紝鍒涘缓涓�涓柊瀵硅薄骞堕�掑綊澶勭悊姣忎釜灞炴��
+      const newObj = {};
+      for (const key in arr) {
+        if (arr.hasOwnProperty(key)) {
+          if(key === 'selectable') {
+            newObj[key] = true;
+          } else if(key === 'children') {
+            newObj[key] = this.deepCopyAndModify(arr[key]);
+          }else {
+            newObj[key] = arr[key];
+          }
+
+        }
+      }
+      return newObj;
+    }
   }
 }
 </script>
diff --git a/src/views/eam/repair/EamRepairOrderList.vue b/src/views/eam/repair/EamRepairOrderList.vue
index 3869ba3..505c45b 100644
--- a/src/views/eam/repair/EamRepairOrderList.vue
+++ b/src/views/eam/repair/EamRepairOrderList.vue
@@ -164,7 +164,7 @@
           {
             title: '缁翠慨璐熻矗浜�',
             align: 'center',
-            dataIndex: 'repairer',
+            dataIndex: 'repairer_dictText',
             width: 100
           },
           {
diff --git a/src/views/flowable/workflow/transfer/EquipmentTransferApprovalModal.vue b/src/views/flowable/workflow/transfer/EquipmentTransferApprovalModal.vue
index a33291e..bcf1e0d 100644
--- a/src/views/flowable/workflow/transfer/EquipmentTransferApprovalModal.vue
+++ b/src/views/flowable/workflow/transfer/EquipmentTransferApprovalModal.vue
@@ -21,7 +21,7 @@
         <a-divider
           orientation="center"
           style="font-size: large;font-style: italic;color: #66aeed;"
-        > 褰掑睘淇℃伅
+        > 璋冩嫧淇℃伅
         </a-divider>
         <a-row :gutter="24">
           <a-col :span="12">
@@ -123,26 +123,26 @@
             </a-form-model-item>
           </a-col>
         </a-row>
-        <div v-if="approvalDisable">
+        <div v-if="useApprovalDisable">
           <a-divider
             orientation="center"
             style="font-size: large;font-style: italic;color: #66aeed;"
-          > 绠$悊鍛樺皝瀛樺鏍�
+          > 浣跨敤鍗曚綅棰嗗瀹℃壒
           </a-divider>
           <a-row :gutter="24">
             <a-col :span="12">
               <a-form-model-item
                 :labelCol="labelCol"
                 :wrapperCol="wrapperCol"
-                prop="approvalDealType"
+                prop="useLeaderApprovalDealType"
                 label="瀹℃壒绫诲瀷"
               >
                 <j-dict-select-tag
                   type="radio"
-                  v-model="model.approvalDealType"
+                  v-model="model.useLeaderApprovalDealType"
                   dictCode="approved_rejected"
                   placeholder="璇烽�夋嫨澶勭悊绫诲瀷"
-                  :disabled="disableSubmit || initialAcceptanceDisable"
+                  :disabled="disableSubmit || leanOutApprovalDisable"
                 />
               </a-form-model-item>
             </a-col>
@@ -150,13 +150,116 @@
               <a-form-model-item
                 :labelCol="labelCol"
                 :wrapperCol="wrapperCol"
-                prop="approvalComment"
+                prop="useLeaderApprovalComment"
                 label="瀹℃壒鎰忚"
               >
                 <a-textarea
                   placeholder="璇疯緭鍏ユ剰瑙�"
-                  v-model="model.approvalComment"
-                  :disabled="disableSubmit || returnDisable"
+                  v-model="model.useLeaderApprovalComment"
+                  :disabled="disableSubmit || leanOutApprovalDisable"
+                />
+              </a-form-model-item>
+            </a-col>
+          </a-row>
+        </div>
+        <div v-if="leanOutApprovalDisable">
+          <a-divider
+            orientation="center"
+            style="font-size: large;font-style: italic;color: #66aeed;"
+          > 璋冨叆鍗曚綅棰嗗瀹℃壒
+          </a-divider>
+          <a-row :gutter="24">
+            <a-col :span="12">
+              <a-form-model-item
+                :labelCol="labelCol"
+                :wrapperCol="wrapperCol"
+                prop="transferLeaderApprovalDealType"
+                label="瀹℃壒绫诲瀷"
+              >
+                <j-dict-select-tag
+                  type="radio"
+                  v-model="model.transferLeaderApprovalDealType"
+                  dictCode="approved_rejected"
+                  placeholder="璇烽�夋嫨澶勭悊绫诲瀷"
+                  :disabled="disableSubmit || externalConfirmDisable"
+                />
+              </a-form-model-item>
+            </a-col>
+            <a-col :span="12">
+              <a-form-model-item
+                :labelCol="labelCol"
+                :wrapperCol="wrapperCol"
+                prop="transferLeaderApprovalComment"
+                label="瀹℃壒鎰忚"
+              >
+                <a-textarea
+                  placeholder="璇疯緭鍏ユ剰瑙�"
+                  v-model="model.transferLeaderApprovalComment"
+                  :disabled="disableSubmit || externalConfirmDisable"
+                />
+              </a-form-model-item>
+            </a-col>
+          </a-row>
+        </div>
+        <div v-if="externalConfirmDisable">
+          <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="companyLeaderCheck"
+                label="鏄惁闇�瑕佸叕鍙搁瀵煎鎵�"
+              >
+                <j-dict-select-tag
+                  type="radio"
+                  v-model="model.companyLeaderCheck"
+                  dictCode="yn"
+                  placeholder="璇烽�夋嫨鏄惁"
+                  :disabled="disableSubmit || companyApprovalDisable"
+                />
+              </a-form-model-item>
+            </a-col>
+          </a-row>
+        </div>
+        <div v-if="companyApprovalDisable">
+          <a-divider
+            orientation="center"
+            style="font-size: large;font-style: italic;color: #66aeed;"
+          > 鍏徃棰嗗瀹℃壒
+          </a-divider>
+          <a-row :gutter="24">
+            <a-col :span="12">
+              <a-form-model-item
+                :labelCol="labelCol"
+                :wrapperCol="wrapperCol"
+                prop="companyLeaderApprovalDealType"
+                label="瀹℃壒绫诲瀷"
+              >
+                <j-dict-select-tag
+                  type="radio"
+                  v-model="model.companyLeaderApprovalDealType"
+                  dictCode="approved_rejected"
+                  placeholder="璇烽�夋嫨澶勭悊绫诲瀷"
+                  :disabled="disableSubmit"
+                />
+              </a-form-model-item>
+            </a-col>
+            <a-col :span="12">
+              <a-form-model-item
+                :labelCol="labelCol"
+                :wrapperCol="wrapperCol"
+                prop="companyLeaderApprovalComment"
+                label="瀹℃壒鎰忚"
+              >
+                <a-textarea
+                  placeholder="璇疯緭鍏ユ剰瑙�"
+                  v-model="model.companyLeaderApprovalComment"
+                  :disabled="disableSubmit"
                 />
               </a-form-model-item>
             </a-col>
@@ -208,23 +311,26 @@
       spinning: false,
       imageSrc: null,
       validatorRules: {
-        approvalDealType: [
+        useLeaderApprovalDealType: [
           { required: true, message: '璇烽�夋嫨閫氳繃鎴栭┏鍥�!' }
         ],
-        unsealApprovalDealType: [
+        transferLeaderApprovalDealType: [
           { required: true, message: '璇烽�夋嫨閫氳繃鎴栭┏鍥�!' }
         ],
-        approvalComment: [
+        companyLeaderCheck: [
+          { required: true, message: '璇烽�夋嫨鏄垨鍚�!' }
+        ],
+        companyLeaderApprovalDealType: [
+          { required: true, message: '璇烽�夋嫨閫氳繃鎴栭┏鍥�!' }
+        ],
+        useLeaderApprovalComment: [
           { required: true, message: '璇疯緭鍏ュ鎵规剰瑙�!' }
         ],
-        unsealApprovalComment: [
+        transferLeaderApprovalComment: [
           { required: true, message: '璇疯緭鍏ュ鎵规剰瑙�!' }
         ],
-        returnComment: [
-          { required: true, message: '璇疯緭鍏ュ綊杩樺娉�!' }
-        ],
-        confirmComment: [
-          { required: true, message: '璇疯緭鍏ョ‘璁ゆ剰瑙�!' }
+        companyLeaderApprovalComment: [
+          { required: true, message: '璇疯緭鍏ュ鎵规剰瑙�!' }
         ]
       },
       url: {
@@ -239,8 +345,21 @@
     this.loadAllProductionTree()
   },
   computed: {
-    approvalDisable: function () {
-      return ['WAIT_SUBMIT', 'WAIT_APPROVAL', 'WAIT_RETURN', 'WAIT_CONFIRM', 'COMPLETE',].includes(this.model.transferStatus)
+    //浣跨敤鍗曚綅棰嗗瀹℃壒
+    useApprovalDisable: function () {
+      return ['WAIT_SUBMIT', 'WAIT_USE_LEADER_CHECK', 'WAIT_TRANSFER_LEADER_CHECK', 'WAIT_EXTERNAL_CONFIRM', 'WAIT_COMPANY_LEADER_CHECK', 'REJECT', 'COMPLETE'].includes(this.model.transferStatus)
+    },
+    //璋冨叆鍗曚綅棰嗗瀹℃壒WAIT_USE_LEADER_CHECK
+    leanOutApprovalDisable: function () {
+      return ['WAIT_TRANSFER_LEADER_CHECK', 'WAIT_EXTERNAL_CONFIRM', 'WAIT_COMPANY_LEADER_CHECK', 'REJECT', 'COMPLETE'].includes(this.model.transferStatus)
+    },
+    //鏈哄姩鍔炵‘璁�
+    externalConfirmDisable: function () {
+      return ['WAIT_EXTERNAL_CONFIRM', 'WAIT_COMPANY_LEADER_CHECK', 'REJECT', 'COMPLETE'].includes(this.model.transferStatus)
+    },
+    // 鍏徃棰嗗瀹℃壒
+    companyApprovalDisable: function () {
+      return ['WAIT_COMPANY_LEADER_CHECK', 'REJECT', 'COMPLETE'].includes(this.model.transferStatus)
     },
   },
   methods: {
diff --git a/src/views/mdc/base/modules/GroupUtilizationRateChart/ChartComponent.vue b/src/views/mdc/base/modules/GroupUtilizationRateChart/ChartComponent.vue
index d371940..6dfe92e 100644
--- a/src/views/mdc/base/modules/GroupUtilizationRateChart/ChartComponent.vue
+++ b/src/views/mdc/base/modules/GroupUtilizationRateChart/ChartComponent.vue
@@ -118,7 +118,7 @@
           top: 'center',
           right: 0,
           itemGap: 20,
-          data: ['24灏忔椂', '24灏忔椂锛堝幓闄ゆ晠闅滆澶囷級', '鐧界彮', '鏅氱彮', '16灏忔椂', '绱杩愯鏃堕棿(h)']
+          data: ['24灏忔椂', '24灏忔椂锛堝幓闄ゆ晠闅滆澶囷級', '涓�鐝�', '浜岀彮', '16灏忔椂', '绱杩愯鏃堕棿(h)']
         },
         tooltip: {
           show: true,
@@ -173,6 +173,22 @@
             data: [54, 34, 12, 56, 64, 32, 90, 12, 56, 64, 32, 90]
           },
           {
+            type: 'line',
+            name: '涓�鐝�',
+            symbol: 'triangle',
+            yAxisIndex: 0,
+            symbolSize: 10,
+            data: [23, 45, 43, 65, 13, 23, 80, 21, 65, 46, 23, 70]
+          },
+          {
+            type: 'line',
+            name: '浜岀彮',
+            symbol: 'triangle',
+            yAxisIndex: 0,
+            symbolSize: 10,
+            data: [9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9]
+          },
+          {
             type: 'bar',
             name: '绱杩愯鏃堕棿(h)',
             yAxisIndex: 1,

--
Gitblit v1.9.3