From 712c6f84ee9f527ead87a69706f74f1689899191 Mon Sep 17 00:00:00 2001 From: Van0313 <60689272+Van0313@users.noreply.github.com> Date: Thu, 19 Jun 2025 00:37:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BD=95=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/van/business/util/JDUtil.java | 23 ++++++++++++------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/src/main/java/cn/van/business/util/JDUtil.java b/src/main/java/cn/van/business/util/JDUtil.java index 2207640..4b303ff 100644 --- a/src/main/java/cn/van/business/util/JDUtil.java +++ b/src/main/java/cn/van/business/util/JDUtil.java @@ -2069,14 +2069,20 @@ public class JDUtil { } - public LocalDate getDateFromLD(String dateStr) { + public List getDateFromLD(String dateStr) { + ArrayList dateArrayList = new ArrayList<>(); logger.info("开始解析日期 {}", dateStr); + if (dateStr.contains("-")){ + String[] dates = dateStr.split("-"); + for (String date : dates) { + dateArrayList.addAll(getDateFromLD(date)); + } + } if (dateStr.equals("昨天")) { - return getEffectiveToday().minusDays(1).toLocalDate(); - } - if (dateStr.equals("今天")) { - return getEffectiveToday().toLocalDate(); + dateArrayList.add(getEffectiveToday().minusDays(1).toLocalDate()); + return dateArrayList; } + // 定义支持的日期格式 DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); @@ -2085,7 +2091,8 @@ public class JDUtil { // 成功解析后,可执行后续操作(例如业务逻辑) logger.info("成功解析日期: {}", date); - return date; + dateArrayList.add(date); + return dateArrayList; } public static LocalDateTime getEffectiveToday() { @@ -2102,7 +2109,7 @@ public class JDUtil { * @param input 用户输入内容 * @return 解析出的 LocalDate 对象,如果没有带日期则返回 null */ - private LocalDate parseUserDateIfPresent(String input) { + private List parseUserDateIfPresent(String input) { if ((input.startsWith("慢单") || input.startsWith("录单")) && !input.startsWith("单")) { logger.info("开始解析用户输入的日期 {}", input); String dateStr = input.replaceAll("慢单|录单", "").trim(); @@ -2143,7 +2150,7 @@ public class JDUtil { } // 按 distributionMark 分组 - Map> groupedByDistributionMark = todayOrders.stream().collect(Collectors.groupingBy(JDOrder::getDistributionMark, Collectors.toList())); + Map> groupedByDistributionMark = todayOrders.stream().filter(o -> o.getStatus().equals("拍错退款")).collect(Collectors.groupingBy(JDOrder::getDistributionMark, Collectors.toList())); for (Map.Entry> entry : groupedByDistributionMark.entrySet()) { String distributionMark = entry.getKey() != null ? entry.getKey() : "未提供";