Commit f7e9d8397db58b883c01c67dbe45c162c4a8783f

Authored by dengwei
1 parent 58c17ebf

feat add Scheduled

cashier-mall/src/main/java/com/diligrp/cashier/mall/service/sourcechannel/RtMallChannel.java
... ... @@ -31,6 +31,9 @@ import org.springframework.stereotype.Component;
31 31 import java.util.List;
32 32 import java.util.Map;
33 33 import java.util.Objects;
  34 +import java.util.concurrent.Executors;
  35 +import java.util.concurrent.ScheduledExecutorService;
  36 +import java.util.concurrent.TimeUnit;
34 37  
35 38 /**
36 39 * @ClassName RtMallChannel.java
... ... @@ -43,6 +46,8 @@ import java.util.Objects;
43 46 @Component
44 47 public class RtMallChannel extends AbstractSourceChannel {
45 48 private static final Logger LOG = LoggerFactory.getLogger(RtMallChannel.class);
  49 + private static final ScheduledExecutorService SCHEDULER = Executors.newScheduledThreadPool(5,
  50 + Thread.ofVirtual().name("delay-cashier-", 0).factory());
46 51  
47 52 @Override
48 53 public String authUrl(AuthLoginCO authLogin, String token, long timestamp) {
... ... @@ -97,11 +102,13 @@ public class RtMallChannel extends AbstractSourceChannel {
97 102 */
98 103 @Override
99 104 public void refundCallBack(RefundResultBO event, MallBizRefund mallBizRefund) {
100   - MallBizOrder mallBizOrder = mallBizOrderDao.selectByPrimaryKey(mallBizRefund.getBizOrderId());
101   - // 目前大润发只对小程序支付存在回调逻辑
102   - if (Objects.equals(mallBizOrder.getOrderType(), OrderType.MINI_PROGRAM.code)) {
103   - refundCallBack(event, mallBizOrder, mallBizRefund);
104   - }
  105 + SCHEDULER.schedule(() -> {
  106 + MallBizOrder mallBizOrder = mallBizOrderDao.selectByPrimaryKey(mallBizRefund.getBizOrderId());
  107 + // 目前大润发只对小程序支付存在回调逻辑
  108 + if (Objects.equals(mallBizOrder.getOrderType(), OrderType.MINI_PROGRAM.code)) {
  109 + refundCallBack(event, mallBizOrder, mallBizRefund);
  110 + }
  111 + }, 5, TimeUnit.SECONDS);
105 112 }
106 113  
107 114 /**
... ...