From 09c3e438e20b966cb56b48dd25835f7ef30bd57e Mon Sep 17 00:00:00 2001 From: cst61 Date: Sat, 25 Apr 2026 22:42:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E8=A1=A8=E5=A4=B4=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E7=9A=84bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LbDailyUserTradeReportController.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/rj/controller/LbDailyUserTradeReportController.java b/src/main/java/com/rj/controller/LbDailyUserTradeReportController.java index 198dc8b..c336db2 100644 --- a/src/main/java/com/rj/controller/LbDailyUserTradeReportController.java +++ b/src/main/java/com/rj/controller/LbDailyUserTradeReportController.java @@ -397,17 +397,29 @@ public class LbDailyUserTradeReportController { .orderByDesc(LbDailyUserTradeReport::getCreatedAt); List rows = lbDailyUserTradeReportService.list(queryWrapper); - rows.sort(Comparator.comparingInt(o -> "report_sum".equals(o.getDataType()) ? 1 : 0)); + rows.sort( + Comparator + .comparingInt((LbDailyUserTradeReport o) -> "report_sum".equals(o.getDataType()) ? 1 : 0) + .thenComparing((a, b) -> { + BigDecimal da = a.getDiffAmt() == null ? BigDecimal.ZERO : a.getDiffAmt(); + BigDecimal db = b.getDiffAmt() == null ? BigDecimal.ZERO : b.getDiffAmt(); + return db.compareTo(da); + }) + ); try (Workbook workbook = new XSSFWorkbook()) { Sheet sheet = workbook.createSheet("report"); + DateTimeFormatter mmdd = DateTimeFormatter.ofPattern("MM-dd"); + String d0 = parsedReportDate.format(mmdd); + String d1 = parsedReportDate.minusDays(1).format(mmdd); + int r = 0; Row header = sheet.createRow(r++); header.createCell(0).setCellValue("昵称"); - header.createCell(1).setCellValue(parsedReportDate.minusDays(1) + "买货"); - header.createCell(2).setCellValue(parsedReportDate + "卖货"); - header.createCell(3).setCellValue(parsedReportDate + "买货"); + header.createCell(1).setCellValue(d1 + "买货"); + header.createCell(2).setCellValue(d0 + "卖货"); + header.createCell(3).setCellValue(d0 + "买货"); header.createCell(4).setCellValue("服务费"); header.createCell(5).setCellValue("差额"); header.createCell(6).setCellValue("应收应付");