From a892616db370b2185bc546a11c873df1137cc7e0 Mon Sep 17 00:00:00 2001
From: zhaowei <zhaowei>
Date: 星期一, 01 九月 2025 09:44:01 +0800
Subject: [PATCH] 1、设备事故登记表以及三不放过原则分析报表导出及批量打印功能 2、调整首页看板及图表样式

---
 src/views/eam/repair/EamReportThreeNoSpareList.vue |  154 ++++++++++++++++++++++++++------------------------
 1 files changed, 80 insertions(+), 74 deletions(-)

diff --git a/src/views/eam/repair/EamReportThreeNoSpareList.vue b/src/views/eam/repair/EamReportThreeNoSpareList.vue
index 6fd1953..cdea0ba 100644
--- a/src/views/eam/repair/EamReportThreeNoSpareList.vue
+++ b/src/views/eam/repair/EamReportThreeNoSpareList.vue
@@ -12,25 +12,26 @@
           </a-col>
           <a-col :xl="6" :lg="7" :md="8" :sm="24">
             <a-form-item label="鐘舵��">
-              <j-dict-select-tag dict-code="report_three_no_spare_submit_status"  placeholder="璇烽�夋嫨鐘舵��" v-model="queryParam.submitStatus"/>
+              <j-dict-select-tag dict-code="report_three_no_spare_submit_status" placeholder="璇烽�夋嫨鐘舵��"
+                                 v-model="queryParam.submitStatus"/>
             </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.causeAnalysis"></a-input>
-            </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.trainingFormat"></a-input>
-            </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.trainingContent"></a-input>
-            </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.causeAnalysis"></a-input>
+              </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.trainingFormat"></a-input>
+              </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.trainingContent"></a-input>
+              </a-form-item>
+            </a-col>
           </template>
           <a-col :xl="6" :lg="7" :md="8" :sm="24">
             <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
@@ -49,27 +50,23 @@
 
     <!-- 鎿嶄綔鎸夐挳鍖哄煙 -->
     <div class="table-operator">
+      <a-button @click="handleBatchPrint" type="primary" icon="monitor" :disabled="selectedRowKeys.length===0">鎵归噺棰勮
+      </a-button>
     </div>
 
     <!-- table鍖哄煙-begin -->
     <div>
-
-      <a-table
-        ref="table"
-        size="middle"
-        bordered
-        rowKey="id"
-        :columns="columns"
-        :dataSource="dataSource"
-        :pagination="ipagination"
-        :loading="loading"
-        :scroll="{x:'max-content'}"
-        @change="handleTableChange">
+      <a-table ref="table" size="middle" bordered rowKey="id" :columns="columns" :dataSource="dataSource"
+               :pagination="ipagination" :loading="loading" :scroll="{x:'max-content'}"
+               :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
+               @change="handleTableChange">
         <span slot="action" slot-scope="text, record">
           <template>
-             <a v-if="record.submitStatus=='PENDING_SUBMIT'||record.submitStatus=='REJECTED'" @click="handleFillIn(record)">濉姤</a>
-             <a-divider  v-if="record.submitStatus=='PENDING_SUBMIT'||record.submitStatus=='REJECTED'" type="vertical"/>
-             <a-popconfirm  v-if="record.submitStatus=='PENDING_SUBMIT'||record.submitStatus=='REJECTED'" title="纭畾鎻愪氦鍚�?" @confirm="() => handleSubmit(record.id)">
+             <a v-if="record.submitStatus=='PENDING_SUBMIT'||record.submitStatus=='REJECTED'"
+                @click="handleFillIn(record)">濉姤</a>
+             <a-divider v-if="record.submitStatus=='PENDING_SUBMIT'||record.submitStatus=='REJECTED'" type="vertical"/>
+             <a-popconfirm v-if="record.submitStatus=='PENDING_SUBMIT'||record.submitStatus=='REJECTED'" title="纭畾鎻愪氦鍚�?"
+                           @confirm="() => handleSubmit(record.id)">
                <a>鎻愪氦</a>
              </a-popconfirm>
           </template>
@@ -112,12 +109,13 @@
     <!-- table鍖哄煙-end -->
 
     <!-- 琛ㄥ崟鍖哄煙 -->
-    <eamReportThreeNoSpare-modal ref="modalForm" @ok="modalFormOk"></eamReportThreeNoSpare-modal>
+    <eamReportThreeNoSpare-modal ref="modalForm" @ok="modalFormOk"/>
 
     <!--瀹℃壒绐楀彛-->
-    <report-threeNo-spare-approval-modal ref="reportThreeNoSpareApprovalModal"
-                                     :selectShenpiData="selectedRowData"/>
+    <report-threeNo-spare-approval-modal ref="reportThreeNoSpareApprovalModal" :selectShenpiData="selectedRowData"/>
 
+    <!--鎵归噺鎵撳嵃寮圭獥-->
+    <eam-three-no-spare-analysis-batch-print-modal ref="batchPrintModal"/>
   </a-card>
 </template>
 
@@ -125,15 +123,17 @@
   import '@/assets/less/TableExpand.less'
   import EamReportThreeNoSpareModal from './modules/EamReportThreeNoSpareModal'
   import { JeecgListMixin } from '@/mixins/JeecgListMixin'
-  import {getAction} from "@api/manage";
-  import LxSearchEquipmentSelect from "@views/eam/equipment/modules/LxSearchEquipmentSelect.vue";
+  import { getAction } from '@api/manage'
+  import LxSearchEquipmentSelect from '@views/eam/equipment/modules/LxSearchEquipmentSelect.vue'
   import ReportThreeNoSpareApprovalModal
     from '../../flowable/workflow/repairOrder/ReportThreeNoSpareApprovalModal'
+  import EamThreeNoSpareAnalysisBatchPrintModal from './modules/EamThreeNoSpareAnalysisBatchPrintModal'
 
   export default {
-    name: "EamReportThreeNoSpareList",
-    mixins:[JeecgListMixin],
+    name: 'EamReportThreeNoSpareList',
+    mixins: [JeecgListMixin],
     components: {
+      EamThreeNoSpareAnalysisBatchPrintModal,
       ReportThreeNoSpareApprovalModal,
       LxSearchEquipmentSelect,
       EamReportThreeNoSpareModal
@@ -147,7 +147,7 @@
         type: Object
       }
     },
-    data () {
+    data() {
       return {
         description: '鈥滀笁涓嶆斁杩囩殑鍘熷垯鈥濆垎鏋愯〃绠$悊椤甸潰',
         disableMixinCreated: true,
@@ -187,96 +187,97 @@
             title: '鐘舵��',
             align: 'center',
             dataIndex: 'submitStatus_dictText',
+            fixed: 'left'
           },
           {
             title: '浜嬫晠鐜拌薄',
             align: 'center',
             dataIndex: 'accidentPhenomenon',
-            scopedSlots: {customRender: 'accidentPhenomenon'},
+            scopedSlots: { customRender: 'accidentPhenomenon' }
           },
           {
             title: '閲囧彇鎺柦',
             align: 'center',
             dataIndex: 'measure',
-            scopedSlots: {customRender: 'measure'},
+            scopedSlots: { customRender: 'measure' }
           },
           {
             title: '閫犳垚缁撴灉',
             align: 'center',
             dataIndex: 'causingResults',
-            scopedSlots: {customRender: 'causingResults'},
+            scopedSlots: { customRender: 'causingResults' }
           },
-		      {
+          {
             title: '鍘熷洜鍒嗘瀽',
-            align:"center",
+            align: 'center',
             dataIndex: 'causeAnalysis',
-            scopedSlots: {customRender: 'causeAnalysis'},
+            scopedSlots: { customRender: 'causeAnalysis' }
           },
           {
             title: '棰勯槻鎺柦',
             align: 'center',
             dataIndex: 'preventionMeasures',
-            scopedSlots: {customRender: 'preventionMeasures'},
+            scopedSlots: { customRender: 'preventionMeasures' }
           },
           {
             title: '鍩硅鏁欒偛',
-            align:"center",
-            dataIndex: 'isTrainingEducation_dictText',
+            align: 'center',
+            dataIndex: 'isTrainingEducation_dictText'
           },
           {
             title: '鍩硅褰㈠紡',
-            align:"center",
+            align: 'center',
             dataIndex: 'trainingFormat',
-            scopedSlots: {customRender: 'trainingFormat'},
+            scopedSlots: { customRender: 'trainingFormat' }
           },
           {
             title: '鍩硅鍐呭',
-            align:"center",
+            align: 'center',
             dataIndex: 'trainingContent',
-            scopedSlots: {customRender: 'trainingContent'},
+            scopedSlots: { customRender: 'trainingContent' }
           },
-		      {
+          {
             title: '鍩硅浜�',
-            align:"center",
+            align: 'center',
             dataIndex: 'trainingUser_dictText'
           },
-		      {
+          {
             title: '鍩硅鏃堕棿',
-            align:"center",
+            align: 'center',
             dataIndex: 'trainingUserTime'
           },
-		      {
+          {
             title: '鍗曚綅棰嗗',
-            align:"center",
+            align: 'center',
             dataIndex: 'unitLeader_dictText'
           },
-		      {
+          {
             title: '棰嗗鎰忚',
-            align:"center",
+            align: 'center',
             dataIndex: 'leaderOpinion'
           },
-		      {
+          {
             title: '棰嗗纭鏃堕棿',
-            align:"center",
+            align: 'center',
             dataIndex: 'leaderConfirmTime'
           },
           {
             title: 'HF缂栫爜',
             align: 'center',
             dataIndex: 'hfCode'
-          },
+          }
         ],
         selectedRowData: {},
         url: {
-          list: "/eam/eamReportThreeNoSpare/list",
-          delete: "/eam/eamReportThreeNoSpare/delete",
-          deleteBatch: "/eam/eamReportThreeNoSpare/deleteBatch",
-          exportXlsUrl: "eam/eamReportThreeNoSpare/exportXls",
-          importExcelUrl: "eam/eamReportThreeNoSpare/importExcel",
-          submit:"eam/eamReportThreeNoSpare/submit"
-        },
-    }
-  },
+          list: '/eam/eamReportThreeNoSpare/list',
+          delete: '/eam/eamReportThreeNoSpare/delete',
+          deleteBatch: '/eam/eamReportThreeNoSpare/deleteBatch',
+          exportXlsUrl: 'eam/eamReportThreeNoSpare/exportXls',
+          importExcelUrl: 'eam/eamReportThreeNoSpare/importExcel',
+          submit: 'eam/eamReportThreeNoSpare/submit'
+        }
+      }
+    },
     created() {
       if (!this.isDisplayOperation) this.queryParam = Object.assign({}, this.propsQueryParam)
       else {
@@ -293,6 +294,11 @@
       this.loadData(1)
     },
     methods: {
+      // 鎵归噺鎵撳嵃
+      handleBatchPrint() {
+        this.$refs.batchPrintModal.handlePreview(this.selectedRowKeys.join())
+      },
+
       /**
        * 鐐瑰嚮濉姤鏃惰Е鍙�
        * @param record
@@ -330,7 +336,7 @@
        * @param record 琛ㄦ牸琛屼俊鎭�
        */
       handleDetail(record) {
-        this.selectRepairOrderData = Object.assign({}, record)
+        this.selectedRowData = Object.assign({}, record)
         this.$refs.reportThreeNoSpareApprovalModal.visible = true
         this.$refs.reportThreeNoSpareApprovalModal.title = '璇︽儏'
         this.$refs.reportThreeNoSpareApprovalModal.disableSubmit = true

--
Gitblit v1.9.3