diff --git a/xdclass-common/src/main/java/net/jieyuu/constant/TimeConstant.java b/xdclass-common/src/main/java/net/jieyuu/constant/TimeConstant.java new file mode 100644 index 0000000..c94b887 --- /dev/null +++ b/xdclass-common/src/main/java/net/jieyuu/constant/TimeConstant.java @@ -0,0 +1,10 @@ +package net.jieyuu.constant; + +public class TimeConstant { + + /** + * 支付订单有效时长,超过未支付则关闭订单 + * 订单超时 毫秒 默认30分钟 + */ + public static final long ORDER_PAY_TIMEOUT_MILLS = 1000 * 60 * 30; +} diff --git a/xdclass-order-service/src/main/java/net/jieyuu/controller/CallbackController.java b/xdclass-order-service/src/main/java/net/jieyuu/controller/CallbackController.java index f654392..edf1e5f 100644 --- a/xdclass-order-service/src/main/java/net/jieyuu/controller/CallbackController.java +++ b/xdclass-order-service/src/main/java/net/jieyuu/controller/CallbackController.java @@ -43,13 +43,15 @@ public class CallbackController { */ @PostMapping("alipay") public String alipayCallback(HttpServletRequest request, HttpServletResponse response) { -// return productOrderService.alipayCallback(); + + // 新思路 todo + // 将支付宝消息投入MQ + // MQ发送消息,调用再更新订单数据消费 + // 将异步通知中收到的所有参数转化为map Map paramsMap = convertRequestParamsToMap(request); - log.info("支付宝回调通知请求:{}", paramsMap); - try { boolean signVerified = AlipaySignature.rsaCheckV1(paramsMap, AlipayConfig.ALIPAY_PUB_KEY, AlipayConfig.CHARSET, AlipayConfig.SIGN_TYPE); if (signVerified) { diff --git a/xdclass-order-service/src/main/java/net/jieyuu/service/impl/ProductOrderServiceImpl.java b/xdclass-order-service/src/main/java/net/jieyuu/service/impl/ProductOrderServiceImpl.java index 81c8a90..83d67cb 100644 --- a/xdclass-order-service/src/main/java/net/jieyuu/service/impl/ProductOrderServiceImpl.java +++ b/xdclass-order-service/src/main/java/net/jieyuu/service/impl/ProductOrderServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.extern.slf4j.Slf4j; import net.jieyuu.component.PayFactory; import net.jieyuu.config.RabbitMQConfig; +import net.jieyuu.constant.TimeConstant; import net.jieyuu.enums.*; import net.jieyuu.exception.BizException; import net.jieyuu.feign.CouponFeignService; @@ -25,6 +26,7 @@ import net.jieyuu.utils.CommonUtil; import net.jieyuu.utils.JsonData; import net.jieyuu.vo.CouponRecordVO; import net.jieyuu.vo.OrderItemVO; +import net.jieyuu.vo.PayInfoVO; import net.jieyuu.vo.ProductOrderAddressVO; import org.apache.commons.lang3.StringUtils; import org.springframework.amqp.rabbit.core.RabbitTemplate; @@ -71,6 +73,9 @@ public class ProductOrderServiceImpl extends ServiceImpl