buhuazhen
2026-03-20 8ee97852627cc8d0f505f03567e1f29d67e175f3
fix(staff): 解决导出数据列数不一致问题

- 计算导出列表中最大列数
- 补充每行数据不足列数时填充占位符 "-"
- 保证导出表格列对齐一致性
已修改1个文件
10 ■■■■■ 文件已修改
src/main/java/com/ruoyi/staff/service/impl/PersonalShiftServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/staff/service/impl/PersonalShiftServiceImpl.java
@@ -261,6 +261,16 @@
        LocalDateTime localDateTime = LocalDateTime.parse(time, formatters);
        map.put("header", getMonthHeader(localDateTime));
        List<List<Object>> lists = dataRequiredForProcessingIntoExcelMonth(mapIPage, personalAttendanceLocationConfigs);
        int maxSize = lists.stream()
                .mapToInt(List::size)
                .max()
                .orElse(0);
        for (List<Object> row : lists) {
            while (row.size() < maxSize) {
                row.add("-");
            }
        }
        map.put("data", lists);
        return map;
    }