diff --git a/excel-handle/src/main/java/com/ruoyi/excel/wecom/helper/HandleAllData.java b/excel-handle/src/main/java/com/ruoyi/excel/wecom/helper/HandleAllData.java index ab07f42..cf26933 100644 --- a/excel-handle/src/main/java/com/ruoyi/excel/wecom/helper/HandleAllData.java +++ b/excel-handle/src/main/java/com/ruoyi/excel/wecom/helper/HandleAllData.java @@ -451,6 +451,7 @@ import java.util.concurrent.atomic.AtomicInteger; boolean isQValueMatch = matchesQValue(data, targetDate); boolean isSourceMatch = matchesSource(data); boolean isTimelyOrder = isTimelyOrder(data); + boolean isNoTimelyOrder = isNoTimelyOrder(data); String customerAttr = data.getTagGroup6(); boolean isParent = customerAttr != null && !customerAttr.trim().isEmpty() && customerAttr.contains("家长"); boolean isStudent = customerAttr != null && !customerAttr.trim().isEmpty() && customerAttr.contains("学生"); @@ -473,12 +474,12 @@ import java.util.concurrent.atomic.AtomicInteger; stats.setTotalOrderCount(stats.getTotalOrderCount() + 1); if (isTimelyOrder) { stats.setTimelyOrderCount(stats.getTimelyOrderCount() + 1); - } else { + } else if(isNoTimelyOrder){ stats.setNonTimelyOrderCount(stats.getNonTimelyOrderCount() + 1); } } - if (isSourceMatch) { + if (isSourceMatch && data.getAddDate().compareTo(targetDate) == 0) { stats.setTotalAcceptCount(stats.getTotalAcceptCount() + 1); if (isParent) { stats.setParentDailyCount(stats.getParentDailyCount() + 1); @@ -659,7 +660,7 @@ import java.util.concurrent.atomic.AtomicInteger; private boolean matchOrderCompleted(CustomerExportData data,Date curDate) { String orderStatus = data.getTagGroup7(); // T列:成交状态 // 校验成交状态 - if (!orderStatus.contains("已成交及时单9元+") && !orderStatus.contains("已成交非及时单9元+")) { + if (!orderStatus.equals("已成交及时单9元+") && !orderStatus.equals("已成交非及时单9元+")) { return false; } return true; @@ -670,9 +671,14 @@ import java.util.concurrent.atomic.AtomicInteger; if (orderStatus == null || orderStatus.trim().isEmpty()) { return false; } - String[] split = orderStatus.split(","); - String statusInfo = split[split.length - 1]; - return statusInfo.contains("已成交及时单9元+"); + return orderStatus.equals("已成交及时单9元+"); + } + private boolean isNoTimelyOrder(CustomerExportData data) { + String orderStatus = data.getTagGroup7(); + if (orderStatus == null || orderStatus.trim().isEmpty()) { + return false; + } + return orderStatus.equals("已成交非及时单9元+"); } /** * 处理单条数据记录,累加到所有相关组的统计中 @@ -729,11 +735,9 @@ import java.util.concurrent.atomic.AtomicInteger; stats.setOrderCount(stats.getOrderCount() + 1); String orderStatus = data.getTagGroup7(); if (orderStatus != null) { - String[] split = orderStatus.split(","); - String statusInfo = split[split.length - 1]; - if (statusInfo.contains("已成交及时单9元+")) { + if (orderStatus.equals("已成交及时单9元+")) { stats.setTimelyOrderCount(stats.getTimelyOrderCount() + 1); - } else if (statusInfo.contains("已成交非及时单9元+")) { + } else if (orderStatus.equals("已成交非及时单9元+")) { stats.setNonTimelyOrderCount(stats.getNonTimelyOrderCount() + 1); } } diff --git a/excel-handle/src/main/java/com/ruoyi/excel/wecom/helper/HandleAllDataV2.java b/excel-handle/src/main/java/com/ruoyi/excel/wecom/helper/HandleAllDataV2.java index 71d3b32..4ae29c3 100644 --- a/excel-handle/src/main/java/com/ruoyi/excel/wecom/helper/HandleAllDataV2.java +++ b/excel-handle/src/main/java/com/ruoyi/excel/wecom/helper/HandleAllDataV2.java @@ -618,9 +618,7 @@ public class HandleAllDataV2 { if (orderStatus == null || orderStatus.trim().isEmpty()) { return false; } - String[] split = orderStatus.split(","); - String statusInfo = split[split.length - 1]; - return statusInfo.contains("已成交及时单9元+"); + return orderStatus.equals("已成交及时单9元+"); } /** diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/WeComTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/WeComTask.java index f5e5e30..f298bb6 100644 --- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/WeComTask.java +++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/WeComTask.java @@ -68,9 +68,18 @@ public class WeComTask { }); } + public void createCurDateCustomerReportV2() throws IOException { + Date from = Date.from(LocalDate.now().atStartOfDay() + .atZone(ZoneId.systemDefault()).toInstant()); + System.out.println("计算" + JSON.toJSONString(from) + "流量看板数据"); + List corpInfos = corpInfoMapper.selectCorpInfoList(new CorpInfo()); + corpInfos.forEach(item->{ + handleAllDataV2.createReportDataV2(item.getCorpId(), from); + }); + } //昨天的 流量v2数据 - public void createCurDateCustomerReportV2() throws IOException { + public void createYestodayCustomerReportV2() throws IOException { Date from = Date.from(LocalDate.now().minusDays(1L).atStartOfDay() .atZone(ZoneId.systemDefault()).toInstant()); System.out.println("计算V2" + JSON.toJSONString(from) + "流量看板数据");