diff --git a/src/main/java/com/m2pool/lease/task/OrderAndPayTask.java b/src/main/java/com/m2pool/lease/task/OrderAndPayTask.java index f0d266a..83ea0d2 100644 --- a/src/main/java/com/m2pool/lease/task/OrderAndPayTask.java +++ b/src/main/java/com/m2pool/lease/task/OrderAndPayTask.java @@ -831,6 +831,7 @@ public class OrderAndPayTask { } } + BigDecimal fee = totalRealAmount.multiply(leaseShop.getFeeRate()); LeasePayRecordMessage build = LeasePayRecordMessage.builder() .queueId(orderInfo.getOrderNumber()) .fromAddress(firstItem.getFromAddress()) @@ -851,8 +852,9 @@ public class OrderAndPayTask { .sellerId(leaseShop.getAuthId()) .status(1) .sellerEmail(leaseShop.getUserEmail()) - .receivedAmount(totalRealAmount.subtract(totalRealAmount.multiply(leaseShop.getFeeRate()))) + .receivedAmount(totalRealAmount.subtract(fee)) .feeRate(leaseShop.getFeeRate()) + .feeRate(fee) .build(); reocrdList.add(build); @@ -1084,6 +1086,23 @@ public class OrderAndPayTask { } + /** + * 提现十分钟超时机制 + */ + @Async("scheduledTaskExecutor") + @Scheduled(cron = "0 0/1 * * * ? ") + @Transactional + public void withdrawTimeout(){ + List leasePayWithdrawMessages = leasePayWithdrawMessageMapper.selectList(new LambdaQueryWrapper() + .eq(LeasePayWithdrawMessage::getStatus, 2) + .le(LeasePayWithdrawMessage::getCreateTime, LocalDateTime.now().minusMinutes(10))); + if (!leasePayWithdrawMessages.isEmpty()){ + for (LeasePayWithdrawMessage leasePayWithdrawMessage : leasePayWithdrawMessages) { + leasePayWithdrawMessage.setStatus(0); + leasePayWithdrawMessageMapper.updateById(leasePayWithdrawMessage); + } + } + } ///** // * 订单完成后---发送支付消息到mq 一个买家对应多个卖家