From 487bbcd45afcc288c27784962d3b40d5015bcd12 Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期五, 15 八月 2025 15:33:07 +0800
Subject: [PATCH] yys  修改导入导出

---
 src/main/java/com/ruoyi/lavorissue/service/impl/LavorIssueServiceImpl.java |   44 ++++++++++++++++++++++++++++++++------------
 1 files changed, 32 insertions(+), 12 deletions(-)

diff --git a/src/main/java/com/ruoyi/lavorissue/service/impl/LavorIssueServiceImpl.java b/src/main/java/com/ruoyi/lavorissue/service/impl/LavorIssueServiceImpl.java
index 77fe335..b85975f 100644
--- a/src/main/java/com/ruoyi/lavorissue/service/impl/LavorIssueServiceImpl.java
+++ b/src/main/java/com/ruoyi/lavorissue/service/impl/LavorIssueServiceImpl.java
@@ -20,10 +20,7 @@
 
 import javax.servlet.http.HttpServletResponse;
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -132,21 +129,19 @@
         head.add(ExcelUtils.COLUMN_MERGE);
         head.add("浼佷笟绠$悊绉�");
         head.add(ExcelUtils.COLUMN_MERGE);
-        head.add("浼佷笟绠$悊绉�2025骞�1鏈�-2025骞�3鏈堝姵淇濆彂鏀捐鍒掕〃");
+        head.add("");
         for (int i = 0; i < sys_lavor_issue.size(); i++) {
-            if (i == 0) {
-                head.add(ExcelUtils.COLUMN_MERGE);
-            } else {
-                head.add(ExcelUtils.COLUMN_MERGE);
-            }
+            head.add(ExcelUtils.COLUMN_MERGE);
         }
+
         List<Object> head1 = new ArrayList<>();
         head1.add("寮�濮嬪勾/鏈�");
         head1.add(ExcelUtils.COLUMN_MERGE);
         head1.add("缁撴潫骞�/鏈�");
         head1.add(ExcelUtils.COLUMN_MERGE);
+        head1.add("");
         for (int i = 0; i < sys_lavor_issue.size(); i++) {
-            head1.add("");
+            head1.add(ExcelUtils.COLUMN_MERGE);
         }
 
         List<Object> head2 = new ArrayList<>();
@@ -154,9 +149,11 @@
         head2.add("1");
         head2.add("2025");
         head2.add("3");
+        head2.add("浼佷笟绠$悊绉�2025骞�1鏈�-2025骞�3鏈堝姵淇濆彂鏀捐鍒掕〃");
         for (int i = 0; i < sys_lavor_issue.size(); i++) {
-            head2.add("");
+            head2.add(ExcelUtils.COLUMN_MERGE);
         }
+
         List<Object> head3 = new ArrayList<>();
         head3.add("閮ㄩ棬鍚嶇О");
         head3.add(ExcelUtils.COLUMN_MERGE);
@@ -165,12 +162,35 @@
         for (SysDictData sysDictData : sys_lavor_issue) {
             head3.add(sysDictData.getDictLabel());
         }
+        head3.add("绛惧悕");
+
+        // 濉厖鏁版嵁
+        List<Object> head4 = new ArrayList<>();
+        List<LaborIssue> laborIssues = lavorIssueMapper.selectList(null);
+        if(CollectionUtils.isEmpty(laborIssues)){
+            throw new RuntimeException("鏁版嵁涓虹┖");
+        }
+
+        Map<String, List<LaborIssue>> collect = laborIssues.stream().collect(Collectors.groupingBy(LaborIssue::getStaffNo));
+        collect.forEach((k,v)->{
+            head4.add(v.get(0).getDeptName());
+            head4.add(ExcelUtils.COLUMN_MERGE);
+            head4.add(v.get(0).getStaffName());
+            head4.add(v.get(0).getStaffNo());
+            // 鍒ゆ柇瀛楀吀鏁版嵁
+            for (SysDictData sysDictData : sys_lavor_issue) {
+                long sum = v.stream().filter(laborIssue -> laborIssue.getDictId().equals(sysDictData.getDictValue())).mapToLong(LaborIssue::getNum).sum();
+                head4.add(sum);
+            }
+
+        });
 
         List<List<Object>> sheetDataList = new ArrayList<>();
         sheetDataList.add(head);
         sheetDataList.add(head1);
         sheetDataList.add(head2);
         sheetDataList.add(head3);
+        sheetDataList.add(head4);
         ExcelUtils.export(response, "鍔充繚鍙戞斁璁″垝琛�", sheetDataList);
     }
 

--
Gitblit v1.9.3