From dbb3445dc720a8f36b3424e73f2e02a6b0f9deb6 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期日, 27 四月 2025 11:31:57 +0800
Subject: [PATCH] art: 从沃克项目迁移设备管理代码到航宇

---
 src/views/eam/equipment/EamEquipmentList.vue |  730 +++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 482 insertions(+), 248 deletions(-)

diff --git a/src/views/eam/equipment/EamEquipmentList.vue b/src/views/eam/equipment/EamEquipmentList.vue
index 9a7e8d7..e136054 100644
--- a/src/views/eam/equipment/EamEquipmentList.vue
+++ b/src/views/eam/equipment/EamEquipmentList.vue
@@ -15,16 +15,47 @@
               <a-input placeholder="璇疯緭鍏ヨ澶囧悕绉�" v-model="queryParam.equipmentName"></a-input>
             </a-form-item>
           </a-col>
+          <a-col :xl="6" :lg="7" :md="8" :sm="24">
+            <a-form-item label="鍏抽敭璁惧鏍囪瘑">
+              <j-dict-select-tag dict-code="yn" placeholder="璇烽�夋嫨鍏抽敭璁惧鏍囪瘑"
+                                 v-model="queryParam.equipmentImportance"></j-dict-select-tag>
+            </a-form-item>
+          </a-col>
           <template v-if="toggleSearchStatus">
-
             <a-col :xl="6" :lg="7" :md="8" :sm="24">
-              <a-form-item label="璁惧鍨嬪彿">
-                <a-input placeholder="璇疯緭鍏ヨ澶囧瀷鍙�" v-model="queryParam.equipmentModel"></a-input>
+              <a-form-item label="璧勪骇鐘舵��">
+                <j-dict-select-tag dict-code="asset_status" placeholder="璇烽�夋嫨璧勪骇鐘舵��"
+                                   v-model="queryParam.assetStatus"></j-dict-select-tag>
               </a-form-item>
             </a-col>
             <a-col :xl="6" :lg="7" :md="8" :sm="24">
-              <a-form-item label="瑙勬牸">
-                <a-input placeholder="璇疯緭鍏ヨ鏍�" v-model="queryParam.equipmentSpecification"></a-input>
+              <a-form-item label="鎶�鏈姸鎬�">
+                <j-dict-select-tag dict-code="technology_status" placeholder="璇烽�夋嫨鎶�鏈姸鎬�"
+                                   v-model="queryParam.technologyStatus"></j-dict-select-tag>
+              </a-form-item>
+            </a-col>
+            <a-col :xl="6" :lg="7" :md="8" :sm="24">
+              <a-form-item label="鎿嶄綔绯荤粺">
+                <a-input placeholder="璇疯緭鍏ユ搷浣滅郴缁�" v-model="queryParam.operationSystem"></a-input>
+              </a-form-item>
+            </a-col>
+            <a-col :xl="6" :lg="7" :md="8" :sm="24">
+              <a-form-item label="浣跨敤杞﹂棿">
+                <a-tree-select v-model="queryParam.orgId"
+                               style="width: 100%"
+                               :tree-data="treeData"
+                               :dropdown-style="{ maxHeight: '400px', overflow: 'auto' }"
+                               placeholder="璇烽�夋嫨浣跨敤杞﹂棿"
+                               allow-clear
+                               tree-default-expand-all
+                >
+                </a-tree-select>
+              </a-form-item>
+            </a-col>
+            <a-col :xl="6" :lg="7" :md="8" :sm="24">
+              <a-form-item label="璁惧鍒嗙被">
+                <j-dict-select-tag dict-code="equipment_category" placeholder="璇烽�夋嫨璁惧鍒嗙被"
+                                   v-model="queryParam.equipmentCategory"></j-dict-select-tag>
               </a-form-item>
             </a-col>
           </template>
@@ -34,7 +65,7 @@
               <a-button type="info" @click="searchReset" icon="reload" style="margin-left: 8px">閲嶇疆</a-button>
               <a @click="handleToggleSearch" style="margin-left: 8px">
                 {{ toggleSearchStatus ? '鏀惰捣' : '灞曞紑' }}
-                <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
+                <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
               </a>
             </span>
           </a-col>
@@ -51,15 +82,20 @@
                 @change="handleImportExcel">
         <a-button type="primary" icon="import">瀵煎叆</a-button>
       </a-upload>
+      <a-button type="primary" icon="download" @click="handleTemplateXlsDownload">瀵煎叆妯℃澘涓嬭浇</a-button>
       <a-dropdown v-if="selectedRowKeys.length > 0">
         <a-menu slot="overlay">
-          <a-menu-item key="1" @click="batchDel">
-            <a-icon type="delete" />
+          <a-menu-item key="1" @click="handleOpenNameplateModal(selectionRows)">
+            <a-icon type="printer"/>
+            鎵撳嵃閾墝
+          </a-menu-item>
+          <a-menu-item key="2" @click="batchDel" v-if="isShowAuth('eam:equipment:delete')">
+            <a-icon type="delete"/>
             鍒犻櫎
           </a-menu-item>
         </a-menu>
         <a-button style="margin-left: 8px"> 鎵归噺鎿嶄綔
-          <a-icon type="down" />
+          <a-icon type="down"/>
         </a-button>
       </a-dropdown>
     </div>
@@ -69,9 +105,8 @@
       <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
         <i class="anticon anticon-info-circle ant-alert-icon"></i> 宸查�夋嫨 <a
         style="font-weight: 600">{{ selectedRowKeys.length }}</a>椤�
-        <a style="margin-left: 24px" @click="onClearSelected">娓呯┖</a>
+        <a style="margin-left: 24px" @click="onSelectChange([])">娓呯┖</a>
       </div>
-
       <a-table
         ref="table"
         size="middle"
@@ -83,20 +118,41 @@
         :loading="loading"
         :scroll="{ x: 'max-content' }"
         :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
-        @change="handleTableChange">
-
+        @change="handleTableChange"
+        :customRow="customTableRow"
+      >
         <span slot="equipmentImportance" slot-scope="text">
-          <lx-switch v-model="text" disabled checked-children='鏄�' un-checked-children='鍚�' />
+          <lx-switch v-model="text" disabled checked-children="鏄�" un-checked-children="鍚�"/>
         </span>
-
+        <span slot="mdcFlag" slot-scope="text">
+          <lx-switch v-model="text" disabled checked-children="鏄�" un-checked-children="鍚�"/>
+        </span>
+        <span slot="processParametersFlag" slot-scope="text">
+          <lx-switch v-model="text" disabled checked-children="鏈�" un-checked-children="鏃�"/>
+        </span>
+        <span slot="precisionParametersFlag" slot-scope="text">
+          <lx-switch v-model="text" disabled checked-children="鏈�" un-checked-children="鏃�"/>
+        </span>
+        <span slot="specialEquipment" slot-scope="text">
+          <lx-switch v-model="text" disabled checked-children="鏄�" un-checked-children="鍚�"/>
+        </span>
         <span slot="action" slot-scope="text, record">
-          <a @click="handleEdit(record)">缂栬緫</a>
+          <a @click.stop="handleEdit(record)">缂栬緫</a>
 
-          <a-divider type="vertical" />
+          <a-divider type="vertical"/>
           <a-dropdown>
-            <a class="ant-dropdown-link">鏇村 <a-icon type="down" /></a>
+            <a class="ant-dropdown-link">鏇村 <a-icon type="down"/></a>
             <a-menu slot="overlay">
               <a-menu-item>
+                <a href="javascript:;" @click="handleOpenNameplateModal([record])">閾墝</a>
+              </a-menu-item>
+              <a-menu-item>
+                <a href="javascript:;" @click="handleOpenResumeDrawer(record)">灞ュ巻</a>
+              </a-menu-item>
+              <a-menu-item>
+                <a href="javascript:;" @click="handleDetail(record)">璇︽儏</a>
+              </a-menu-item>
+              <a-menu-item v-if="isShowAuth('eam:equipment:delete')">
                 <a-popconfirm title="纭畾鍒犻櫎鍚�?" @confirm="() => handleDelete(record.id)">
                   <a>鍒犻櫎</a>
                 </a-popconfirm>
@@ -109,248 +165,426 @@
     </div>
     <!-- table鍖哄煙-end -->
 
+    <a-tabs v-model="activeTabKey" @change="handleTabChange">
+      <a-tab-pane tab="璁惧鏂囨。" :key="1">
+        <eam-equipment-attachment-list ref="tabPaneTableListRef1"/>
+      </a-tab-pane>
+      <a-tab-pane tab="鐐规宸ュ崟" :key="2">
+        <eam-inspection-order-list ref="tabPaneTableListRef2" :isDisplayOperation="false"/>
+      </a-tab-pane>
+      <a-tab-pane tab="鍛ㄤ繚宸ュ崟" :key="3">
+        <eam-week-maintenance-order-list ref="tabPaneTableListRef3" :isDisplayOperation="false"/>
+      </a-tab-pane>
+      <a-tab-pane tab="缁翠慨宸ュ崟" :key="4">
+        <eam-repair-order-list ref="tabPaneTableListRef4" :isDisplayOperation="false"/>
+      </a-tab-pane>
+      <a-tab-pane tab="淇濆吇鏍囧噯" :key="5">
+        <eam-maintenance-standard-list ref="tabPaneTableListRef5" :isDisplayOperation="false"/>
+      </a-tab-pane>
+    </a-tabs>
+
     <!-- 琛ㄥ崟鍖哄煙 -->
     <eamEquipment-modal ref="modalForm" @ok="modalFormOk"></eamEquipment-modal>
+    <!--閾墝寮圭獥-->
+    <nameplate-modal ref="nameplateModalRef" :printedRows="printedRows"/>
+    <!--灞ュ巻寮圭獥-->
+    <resume-drawer ref="resumeDrawerRef" :currentTableRowRecord="currentTableRowRecord"/>
   </a-card>
 </template>
 
 <script>
-import '@/assets/less/TableExpand.less'
-import EamEquipmentModal from './modules/EamEquipmentModal'
-import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+  import '@/assets/less/TableExpand.less'
+  import EamEquipmentModal from './modules/EamEquipmentModal'
+  import { JeecgListMixin } from '@/mixins/JeecgListMixin'
+  import { getAction, templateXlsDownload } from '@api/manage'
+  import NameplateModal from '@views/eam/equipment/modules/NameplateModal.vue'
+  import { getSystemConfigValue } from '@api/api'
+  import ResumeDrawer from '@views/eam/equipment/modules/ResumeDrawer.vue'
+  import EamMaintenanceStandardList from '@views/eam/base/EamMaintenanceStandardList.vue'
+  import EamRepairOrderList from '../repair/EamRepairOrderList'
+  import EamInspectionOrderList from '../maintenance/EamInspectionOrderList'
+  import EamEquipmentAttachmentList from '@views/eam/equipment/EamEquipmentAttachmentList.vue'
+  import EamWeekMaintenanceOrderList from '@views/eam/maintenance/EamWeekMaintenanceOrderList.vue'
 
-export default {
-  name: 'EamEquipmentList',
-  mixins: [JeecgListMixin],
-  components: {
-    EamEquipmentModal
-  },
-  data() {
-    return {
-      description: '璁惧鍙拌处绠$悊椤甸潰',
-      // 琛ㄥご
-      columns: [
-        {
-          title: '#',
-          dataIndex: '',
-          key: 'rowIndex',
-          width: 60,
-          align: 'center',
-          customRender: function(t, r, index) {
-            return parseInt(index) + 1
+  export default {
+    name: 'EamEquipmentList',
+    mixins: [JeecgListMixin],
+    components: {
+      EamInspectionOrderList,
+      EamRepairOrderList,
+      EamMaintenanceStandardList,
+      ResumeDrawer,
+      NameplateModal,
+      EamEquipmentModal,
+      EamEquipmentAttachmentList,
+      EamWeekMaintenanceOrderList
+    },
+    data() {
+      return {
+        description: '璁惧鍙拌处绠$悊椤甸潰',
+        // 琛ㄥご
+        columns: [
+          {
+            title: '#',
+            dataIndex: '',
+            key: 'rowIndex',
+            width: 60,
+            align: 'center',
+            customRender: function(t, r, index) {
+              return parseInt(index) + 1
+            },
+            fixed: 'left'
           },
-          fixed: 'left',
+          {
+            title: '璁惧缂栧彿',
+            align: 'center',
+            width: 100,
+            dataIndex: 'equipmentCode',
+            ellipsis: true,
+            fixed: 'left',
+            sorter: true
+          },
+          {
+            title: '璁惧鍚嶇О',
+            align: 'center',
+            width: 100,
+            dataIndex: 'equipmentName',
+            ellipsis: true,
+            fixed: 'left'
+          },
+          {
+            title: '鍏抽敭璁惧鏍囪瘑',
+            align: 'center',
+            width: 120,
+            dataIndex: 'equipmentImportance',
+            scopedSlots: { customRender: 'equipmentImportance' }
+          },
+          {
+            title: '璧勪骇鐘舵��',
+            align: 'center',
+            width: 100,
+            dataIndex: 'assetStatus_dictText'
+          },
+          {
+            title: '鎶�鏈姸鎬�',
+            align: 'center',
+            width: 100,
+            dataIndex: 'technologyStatus_dictText'
+          },
+          {
+            title: '缁翠慨鐘舵��',
+            align: 'center',
+            width: 100,
+            dataIndex: 'repairStatus_dictText'
+          },
+          {
+            title: '淇濆吇鐘舵��',
+            align: 'center',
+            width: 100,
+            dataIndex: 'maintenanceStatus_dictText'
+          },
+          {
+            title: '鎿嶄綔绯荤粺',
+            align: 'center',
+            width: 100,
+            dataIndex: 'operationSystem'
+          },
+          {
+            title: '浣跨敤杞﹂棿',
+            align: 'center',
+            width: 100,
+            dataIndex: 'orgId_dictText'
+          },
+          {
+            title: '璁惧绠$悊鍛�',
+            align: 'center',
+            width: 100,
+            dataIndex: 'equipmentManager_dictText'
+          },
+          {
+            title: '璁惧鍒嗙被',
+            align: 'center',
+            dataIndex: 'equipmentCategory_dictText'
+          },
+          {
+            title: '璁惧鍨嬪彿',
+            align: 'center',
+            width: 200,
+            dataIndex: 'equipmentModel'
+          },
+          {
+            title: '璁惧瑙勬牸',
+            align: 'center',
+            width: 100,
+            dataIndex: 'equipmentSpecification'
+          },
+          {
+            title: '涓昏酱杩炴帴灏哄',
+            align: 'center',
+            width: 120,
+            dataIndex: 'spindleConnectDimension'
+          },
+          {
+            title: '鎬诲姛鐜�',
+            align: 'center',
+            width: 100,
+            dataIndex: 'equipmentPower'
+          },
+          {
+            title: '瀹夎浣嶇疆',
+            align: 'center',
+            width: 100,
+            dataIndex: 'installationPosition'
+          },
+          {
+            title: '绔嬮」鍗″彿',
+            align: 'center',
+            dataIndex: 'cardNumber'
+          },
+          {
+            title: '鍑哄巶缂栧彿',
+            align: 'center',
+            dataIndex: 'factoryNumber'
+          },
+          {
+            title: '鏈哄簥鍘傚',
+            align: 'center',
+            width: 300,
+            dataIndex: 'manufacturingEnterprise'
+          },
+          {
+            title: '鏉ユ簮鍥藉',
+            align: 'center',
+            width: 100,
+            dataIndex: 'originCountry'
+          },
+          {
+            title: '鍑哄巶鏃ユ湡',
+            align: 'center',
+            width: 100,
+            dataIndex: 'leaveFactoryDate'
+          },
+          {
+            title: '楠屾敹鏃ユ湡',
+            align: 'center',
+            width: 100,
+            dataIndex: 'acceptanceCheckDate'
+          },
+          {
+            title: '璐ㄤ繚寮�濮嬫棩鏈�',
+            align: 'center',
+            width: 120,
+            dataIndex: 'warrantyStartDate'
+          },
+          {
+            title: '璐ㄤ繚缁撴潫鏃ユ湡',
+            align: 'center',
+            width: 120,
+            dataIndex: 'warrantyEndDate'
+          },
+          {
+            title: '鏄惁瀹炴柦MDC',
+            align: 'center',
+            width: 120,
+            dataIndex: 'mdcFlag',
+            scopedSlots: { customRender: 'mdcFlag' }
+          },
+          {
+            title: '鏈夋棤宸ヨ壓鍙傛暟',
+            align: 'center',
+            width: 120,
+            dataIndex: 'processParametersFlag',
+            scopedSlots: { customRender: 'processParametersFlag' }
+          },
+          {
+            title: '鏈夋棤绮惧害鍙傛暟',
+            align: 'center',
+            width: 120,
+            dataIndex: 'precisionParametersFlag',
+            scopedSlots: { customRender: 'precisionParametersFlag' }
+          },
+          {
+            title: '鏄惁涓虹壒绉嶈澶�',
+            align: 'center',
+            width: 120,
+            dataIndex: 'specialEquipment',
+            scopedSlots: { customRender: 'specialEquipment' }
+          },
+          {
+            title: '閲嶉噺',
+            align: 'center',
+            dataIndex: 'equipmentWeight'
+          },
+          {
+            title: '璁惧绔彛',
+            align: 'center',
+            dataIndex: 'equipmentPort'
+          },
+          {
+            title: '鍧愭爣鏁伴噺',
+            align: 'center',
+            dataIndex: 'coordinateNum'
+          },
+          {
+            title: '鍒涘缓浜�',
+            align: 'center',
+            width: 100,
+            dataIndex: 'createBy_dictText'
+          },
+          {
+            title: '鍒涘缓鏃堕棿',
+            align: 'center',
+            width: 200,
+            dataIndex: 'createTime'
+          },
+          {
+            title: '鏇存柊浜�',
+            align: 'center',
+            dataIndex: 'updateBy_dictText'
+          },
+          {
+            title: '鏇存柊鏃堕棿',
+            align: 'center',
+            dataIndex: 'updateTime'
+          },
+          {
+            title: '澶囨敞',
+            align: 'center',
+            dataIndex: 'remark'
+          },
+          {
+            title: '鎿嶄綔',
+            dataIndex: 'action',
+            align: 'center',
+            width: 150,
+            scopedSlots: { customRender: 'action' },
+            fixed: 'right'
+          }
+        ],
+        url: {
+          list: '/eam/equipment/list',
+          delete: '/eam/equipment/delete',
+          deleteBatch: '/eam/equipment/deleteBatch',
+          exportXlsUrl: 'eam/equipment/exportXls',
+          importExcelUrl: 'eam/equipment/importExcel',
+          loadProductionOptions: '/mdc/mdcProduction/loadProductionTreeOptions',
+          templateXlsDownloadUrl: '瀵煎叆妯℃澘/璁惧鍙拌处瀵煎叆妯℃澘_v1.0.xlsx'
         },
-        {
-          title: '璁惧缂栧彿',
-          align: 'center',
-          width: 100,
-          dataIndex: 'equipmentCode',
-          ellipsis: true,
-          fixed: 'left'
-        },
-        {
-          title: '璁惧鍚嶇О',
-          align: 'center',
-          width: 100,
-          dataIndex: 'equipmentName',
-          ellipsis: true,
-          fixed: 'left'
-        },
-        {
-          title: '鍏抽敭璁惧鏍囪瘑',
-          align: 'center',
-          width : 100,
-          dataIndex: 'equipmentImportance',
-          scopedSlots: { customRender: 'equipmentImportance' }
-        },
-        {
-          title: '鎶�鏈姸鎬�',
-          align: 'center',
-          width : 100,
-          dataIndex: 'technologyStatus_dictText'
-        },
-        {
-          title: '鎿嶄綔绯荤粺',
-          align: 'center',
-          width : 100,
-          dataIndex: 'operationSystem'
-        },
-        {
-          title: '浣跨敤閮ㄩ棬',
-          align: 'center',
-          width : 100,
-          dataIndex: 'orgId'
-        },
-        {
-          title: '璁惧绠$悊鍛�',
-          align: 'center',
-          width : 100,
-          dataIndex: 'equipmentManager'
-        },
-        {
-          title: '璁惧鍒嗙被',
-          align: 'center',
-          width : 100,
-          dataIndex: 'equipmentCategory_dictText'
-        },
-        {
-          title: '璁惧鍨嬪彿',
-          align: 'center',
-          width : 100,
-          dataIndex: 'equipmentModel'
-        },
-        {
-          title: '璁惧瑙勬牸',
-          align: 'center',
-          width : 100,
-          dataIndex: 'equipmentSpecification'
-        },
-        {
-          title: '涓昏酱杩炴帴灏哄',
-          align: 'center',
-          width : 100,
-          dataIndex: 'spindleConnectDimension'
-        },
-        {
-          title: '鎬诲姛鐜�',
-          align: 'center',
-          width : 100,
-          dataIndex: 'equipmentPower'
-        },
-        {
-          title: '瀹夎浣嶇疆',
-          align: 'center',
-          width : 100,
-          dataIndex: 'installationPosition'
-        },
-        {
-          title: '璧勪骇鐘舵��',
-          align: 'center',
-          width : 100,
-          dataIndex: 'assetStatus_dictText'
-        },
-        {
-          title: '绔嬮」鍗″彿',
-          align: 'center',
-          width : 100,
-          dataIndex: 'cardNumber'
-        },
-        {
-          title: '鍑哄巶缂栧彿',
-          align: 'center',
-          width : 100,
-          dataIndex: 'factoryNumber'
-        },
-        {
-          title: '鏈哄簥鍘傚',
-          align: 'center',
-          width : 100,
-          dataIndex: 'manufacturingEnterprise'
-        },
-        {
-          title: '鏉ユ簮鍥藉',
-          align: 'center',
-          width : 100,
-          dataIndex: 'originCountry'
-        },
-        {
-          title: '鍑哄巶鏃ユ湡',
-          align: 'center',
-          width : 100,
-          dataIndex: 'leaveFactoryDate'
-        },
-        {
-          title: '楠屾敹鏃ユ湡',
-          align: 'center',
-          width : 100,
-          dataIndex: 'acceptanceCheckDate'
-        },
-        {
-          title: '璐ㄤ繚寮�濮嬫棩鏈�',
-          align: 'center',
-          width : 100,
-          dataIndex: 'warrantyStartDate'
-        },
-        {
-          title: '璐ㄤ繚缁撴潫鏃ユ湡',
-          align: 'center',
-          width : 100,
-          dataIndex: 'warrantyEndDate'
-        },
-        {
-          title: '鏄惁瀹炴柦MDC',
-          align: 'center',
-          width : 100,
-          dataIndex: 'mdcFlag'
-        },
-        {
-          title: '鏄惁鏈夊伐鑹哄弬鏁�',
-          align: 'center',
-          width : 100,
-          dataIndex: 'processParametersFlag'
-        },
-        {
-          title: '鏄惁鏈夌簿搴﹀弬鏁�',
-          align: 'center',
-          width : 100,
-          dataIndex: 'precisionParametersFlag'
-        },
-        {
-          title: '鏄惁涓虹壒绉嶈澶�',
-          align: 'center',
-          width : 100,
-          dataIndex: 'specialEquipment'
-        },
-        {
-          title: '閲嶉噺',
-          align: 'center',
-          dataIndex: 'equipmentWeight'
-        },
-        {
-          title: '璁惧绔彛',
-          align: 'center',
-          width: 100,
-          dataIndex: 'equipmentPort'
-        },
-        {
-          title: '鍧愭爣鏁伴噺',
-          align: 'center',
-          width: 100,
-          dataIndex: 'coordinateNum'
-        },
-        {
-          title: '澶囨敞',
-          align: 'center',
-          width: 100,
-          dataIndex: 'remark'
-        },
-        {
-          title: '鎿嶄綔',
-          dataIndex: 'action',
-          align: 'center',
-          width: 150,
-          scopedSlots: { customRender: 'action' },
-          fixed: 'right'
+        treeData: [],
+        printedRows: [],
+        activeTabKey: 1,
+        appHomeUrl: '',
+        currentTableRowRecord: {}
+      }
+    },
+    computed: {
+      importExcelUrl: function() {
+        return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`
+      }
+    },
+    created() {
+      this.loadAllProductionTree()
+      this.loadAppHomeUrlConfigValue()
+    },
+    methods: {
+      loadAllProductionTree() {
+        //鍔犺浇杞﹂棿閫夋嫨鏍�
+        getAction(this.url.loadProductionOptions).then(res => {
+          if (res.success) {
+            this.treeData = [...res.result]
+          } else {
+            that.$message.warning(res.message)
+          }
+        })
+      },
+
+      /**
+       * 寮�鍚摥鐗屽脊绐�
+       * @param recordArray 琛ㄦ牸琛屼俊鎭泦鍚�
+       */
+      handleOpenNameplateModal(recordArray) {
+        this.printedRows = recordArray
+        this.$refs.nameplateModalRef.httpUrl = this.appHomeUrl
+        this.$refs.nameplateModalRef.visible = true
+      },
+
+      /**
+       * 寮�鍚饱鍘嗘娊灞�
+       * @param record 琛ㄦ牸琛屼俊鎭�
+       */
+      handleOpenResumeDrawer(record) {
+        this.currentTableRowRecord = Object.assign({}, record)
+        this.$refs.resumeDrawerRef.title = '璁惧灞ュ巻' + `锛�${record.equipmentCode}锛塦
+        this.$refs.resumeDrawerRef.dataSource = []
+        this.$refs.resumeDrawerRef.visible = true
+        this.$nextTick(() => this.$refs.resumeDrawerRef.getEquipmentResumeByApi())
+      },
+
+      /**
+       * 鑷畾涔夎澶囧彴璐﹁〃鏍艰
+       * @param record 琛ㄦ牸琛屼俊鎭�
+       * @returns {{style: {cursor: string}, on: {click: *}}} 鏍峰紡瀵硅薄涓庝簨浠舵柟娉�
+       */
+      customTableRow(record) {
+        return {
+          style: {
+            cursor: 'pointer'
+          },
+          on: {
+            click: () => {
+              this.onSelectChange([record.id])
+            }
+          }
         }
-      ],
-      url: {
-        list: '/eam/equipment/list',
-        delete: '/eam/equipment/delete',
-        deleteBatch: '/eam/equipment/deleteBatch',
-        exportXlsUrl: 'eam/equipment/exportXls',
-        importExcelUrl: 'eam/equipment/importExcel'
+      },
+
+      /**
+       * 椤电鏀瑰彉鏃惰Е鍙�
+       * @param activeTabKey 褰撳墠婵�娲荤殑椤电key
+       */
+      handleTabChange(activeTabKey) {
+        if (this.selectedRowKeys.length !== 1) return
+        this.$nextTick(() => this.loadTabPaneTableData(this.selectedRowKeys[0]))
+      },
+
+      /**
+       * 鍔犺浇椤电琛ㄦ牸鏁版嵁
+       * @param id 璁惧鍙拌处琛岃褰旾d
+       */
+      loadTabPaneTableData(id) {
+        this.$refs['tabPaneTableListRef' + this.activeTabKey].queryParam.equipmentId = id
+        this.$refs['tabPaneTableListRef' + this.activeTabKey].loadData(1)
+      },
+
+      /**
+       * 璁惧鍙拌处琛ㄦ牸澶氶�夋鐘舵�佹敼鍙樻椂瑙﹀彂
+       * @param selectedRowKeys 宸查�夋嫨鐨剅owKey闆嗗悎
+       * @param selectionRows 褰撳墠鍒嗛〉涓嬪凡閫夋嫨鐨勮淇℃伅闆嗗悎
+       */
+      onSelectChange(selectedRowKeys, selectionRows) {
+        this.selectedRowKeys = selectedRowKeys
+        this.selectionRows = selectionRows
+        this.$refs['tabPaneTableListRef' + this.activeTabKey].queryParam.equipmentId = null
+        this.$refs['tabPaneTableListRef' + this.activeTabKey].dataSource = []
+        this.$refs['tabPaneTableListRef' + this.activeTabKey].onClearSelected()
+        if (selectedRowKeys.length === 1) this.loadTabPaneTableData(selectedRowKeys[0])
+      },
+
+      handleTemplateXlsDownload() {
+        templateXlsDownload(this.url.templateXlsDownloadUrl)
+      },
+
+      loadAppHomeUrlConfigValue() {
+        let params = { settingKey: 'app_home_url' }
+        getSystemConfigValue(params).then(res => {
+          if (res.success) {
+            this.appHomeUrl = res.result.settingValue
+          }
+        })
       }
     }
-  },
-  computed: {
-    importExcelUrl: function() {
-      return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`
-    }
-  },
-  methods: {}
-}
+  }
 </script>
 <style scoped>
-@import '~@assets/less/common.less';
+  @import '~@assets/less/common.less';
 </style>
\ No newline at end of file

--
Gitblit v1.9.3