From 05aa462d20544631bcd4beb4a3274ef31a1faa2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=9D=BE?= <8605635+zhang3064194730@user.noreply.gitee.com> Date: Thu, 13 Nov 2025 09:23:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E9=94=80=E9=80=80=E6=AC=BE=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/czg/task/DistributionTask.java | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/cash-api/market-server/src/main/java/com/czg/task/DistributionTask.java b/cash-api/market-server/src/main/java/com/czg/task/DistributionTask.java index 9cfe1e6a1..cbc25844b 100644 --- a/cash-api/market-server/src/main/java/com/czg/task/DistributionTask.java +++ b/cash-api/market-server/src/main/java/com/czg/task/DistributionTask.java @@ -49,7 +49,6 @@ public class DistributionTask { // @Scheduled(cron = "0 0 0 * * ?") // @Scheduled(fixedRate = 30000) public void deliver() { - // TODO 逻辑修改 // 1. 订单完成支付时(判断是否分销)产生流水记录。 // 2. 判断入账时间。 // 3. 如果是 0 天,再去判断商户余额是否足够。够则入账,不足则不管。 @@ -58,10 +57,7 @@ public class DistributionTask { // 6. 订单产生退款时,去流水表查询该订单的流水记录,如果未入账改为已入账,并插入一条退款扣钱的流水。 LocalDateTime localDateTime = DateUtil.date().toLocalDateTime(); distributionFlowService.list(new QueryWrapper() - .eq(MkDistributionFlow::getStatus, TableValueConstant.DistributionFlow.Status.PENDING.getCode())).forEach(item -> { - if (item.getDeliverTime() != null && item.getDeliverTime().isAfter(localDateTime)) { - return; - } + .eq(MkDistributionFlow::getStatus, TableValueConstant.DistributionFlow.Status.PENDING.getCode()).le(MkDistributionFlow::getDeliverTime, localDateTime)).forEach(item -> { FunUtils.safeRunVoid(() -> { log.info("开始处理延时分账, id: {}, orderNo: {}, 类型: {}", item.getId(), item.getOrderNo(), item.getType()); @@ -72,15 +68,15 @@ public class DistributionTask { } if (CollUtil.newArrayList(OrderStatusEnums.REFUND.getCode(), OrderStatusEnums.REFUNDING.getCode(), OrderStatusEnums.PART_REFUND.getCode()).contains(orderInfo.getStatus())) { log.warn("订单已退款, 订单号: {}", item.getOrderNo()); - item.setStatus(TableValueConstant.DistributionFlow.Status.REFUND.getCode()); + distributionUserService.refund(orderInfo.getId(), orderInfo.getOrderNo()); } else { item.setStatus(TableValueConstant.DistributionFlow.Status.SUCCESS.getCode()); ShopUser shopUser = shopUserService.getById(item.getDistributionUserId()); distributionUserService.updateShopInfoAmount(orderInfo.getShopId(), item.getRewardAmount().negate(), orderInfo.getId(), TableValueConstant.DistributionAmountFlow.Type.SUB, "分销扣减"); distributionUserService.updateIncome(item.getRewardAmount().negate(), item.getRewardAmount(), BigDecimal.ZERO, item.getDistributionUserId(), shopUser.getUserId(), item.getShopUserId(), item.getShopId(), item.getLevel()); + distributionFlowService.updateById(item); } - distributionFlowService.updateById(item); }); }); }