diff --git a/ruoyi-system/src/main/java/com/ruoyi/jarvis/domain/JDOrder.java b/ruoyi-system/src/main/java/com/ruoyi/jarvis/domain/JDOrder.java index d6c05ca..762fbc9 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/jarvis/domain/JDOrder.java +++ b/ruoyi-system/src/main/java/com/ruoyi/jarvis/domain/JDOrder.java @@ -74,6 +74,10 @@ public class JDOrder extends BaseEntity { @Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date finishTime; + /** 是否参与统计(0否 1是) */ + @Excel(name = "参与统计") + private Integer isCountEnabled; + } diff --git a/ruoyi-system/src/main/java/com/ruoyi/jarvis/service/impl/InstructionServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/jarvis/service/impl/InstructionServiceImpl.java index 3ff945a..aa4e1c1 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/jarvis/service/impl/InstructionServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/jarvis/service/impl/InstructionServiceImpl.java @@ -218,7 +218,8 @@ public class InstructionServiceImpl implements IInstructionService { if (list == null) list = Collections.emptyList(); // 统一截取分销标记 list.forEach(order -> order.setDistributionMark(truncateDistributionMark(order.getDistributionMark()))); - List filtered = list.stream().filter(o -> o.getOrderTime() != null && !o.getOrderTime().before(start) && !o.getOrderTime().after(end)).collect(Collectors.toList()); + // 过滤条件:时间范围 + 参与统计标记(isCountEnabled为null或1表示参与统计) + List filtered = list.stream().filter(o -> o.getOrderTime() != null && !o.getOrderTime().before(start) && !o.getOrderTime().after(end) && (o.getIsCountEnabled() == null || o.getIsCountEnabled() == 1)).collect(Collectors.toList()); if (filtered.isEmpty()) return Collections.singletonList("今天没有订单。"); // 按 remark 排序 List sorted = filtered.stream().sorted(Comparator.comparing(JDOrder::getRemark, Comparator.nullsFirst(String::compareTo))).collect(Collectors.toList()); @@ -241,7 +242,8 @@ public class InstructionServiceImpl implements IInstructionService { if (list == null) list = Collections.emptyList(); // 统一截取分销标记 list.forEach(order -> order.setDistributionMark(truncateDistributionMark(order.getDistributionMark()))); - List filtered = list.stream().filter(o -> o.getOrderTime() != null && !o.getOrderTime().before(start) && !o.getOrderTime().after(end)).collect(Collectors.toList()); + // 过滤条件:时间范围 + 参与统计标记(isCountEnabled为null或1表示参与统计) + List filtered = list.stream().filter(o -> o.getOrderTime() != null && !o.getOrderTime().before(start) && !o.getOrderTime().after(end) && (o.getIsCountEnabled() == null || o.getIsCountEnabled() == 1)).collect(Collectors.toList()); if (filtered.isEmpty()) return Collections.singletonList("今天没有订单。"); Map> byDM = filtered.stream().filter(o -> o.getStatus() == null || !"拍错退款".equals(o.getStatus())).collect(Collectors.groupingBy(JDOrder::getDistributionMark)); diff --git a/ruoyi-system/src/main/resources/mapper/jarvis/JDOrderMapper.xml b/ruoyi-system/src/main/resources/mapper/jarvis/JDOrderMapper.xml index d313dec..a438a4a 100644 --- a/ruoyi-system/src/main/resources/mapper/jarvis/JDOrderMapper.xml +++ b/ruoyi-system/src/main/resources/mapper/jarvis/JDOrderMapper.xml @@ -18,11 +18,12 @@ + select id, remark, distribution_mark, model_number, link, payment_amount, rebate_amount, - address, logistics_link, order_id, buyer, order_time, create_time, update_time, status + address, logistics_link, order_id, buyer, order_time, create_time, update_time, status, is_count_enabled from jd_order @@ -94,11 +95,11 @@ insert into jd_order ( remark, distribution_mark, model_number, link, payment_amount, rebate_amount, address, logistics_link, - order_id, buyer, order_time, create_time, update_time, status + order_id, buyer, order_time, create_time, update_time, status, is_count_enabled ) values ( #{remark}, #{distributionMark}, #{modelNumber}, #{link}, #{paymentAmount}, #{rebateAmount}, #{address}, #{logisticsLink}, - #{orderId}, #{buyer}, #{orderTime}, now(), now(), #{status} + #{orderId}, #{buyer}, #{orderTime}, now(), now(), #{status}, #{isCountEnabled} ) @@ -117,6 +118,7 @@ buyer = #{buyer}, order_time = #{orderTime}, status = #{status}, + is_count_enabled = #{isCountEnabled}, update_time = now() where id = #{id} diff --git a/sql/add_count_enabled_field.sql b/sql/add_count_enabled_field.sql new file mode 100644 index 0000000..41c618a --- /dev/null +++ b/sql/add_count_enabled_field.sql @@ -0,0 +1,6 @@ +-- 为京东订单表添加统计控制字段 +-- 字段说明:is_count_enabled 控制是否参与统计,0=不参与统计,1=参与统计,默认为1 +ALTER TABLE jd_order ADD COLUMN is_count_enabled TINYINT(1) DEFAULT 1 COMMENT '是否参与统计(0否 1是)'; + +-- 为现有数据设置默认值 +UPDATE jd_order SET is_count_enabled = 1 WHERE is_count_enabled IS NULL;