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