diff --git a/xdclass-coupon-service/src/main/java/net/jieyuu/mapper/CouponRecordMapper.java b/xdclass-coupon-service/src/main/java/net/jieyuu/mapper/CouponRecordMapper.java index 1709b21..2115e86 100644 --- a/xdclass-coupon-service/src/main/java/net/jieyuu/mapper/CouponRecordMapper.java +++ b/xdclass-coupon-service/src/main/java/net/jieyuu/mapper/CouponRecordMapper.java @@ -30,7 +30,7 @@ public interface CouponRecordMapper extends BaseMapper { * 更新优惠券使用记录 * * @param couponRecordId - * @param state + * @param useState */ - void updateState(@Param("couponRecordId") Long couponRecordId,@Param("state") String state); + void updateState(@Param("couponRecordId") Long couponRecordId, @Param("useState") String useState); } diff --git a/xdclass-coupon-service/src/main/java/net/jieyuu/service/impl/CouponRecordServiceImpl.java b/xdclass-coupon-service/src/main/java/net/jieyuu/service/impl/CouponRecordServiceImpl.java index 6f7c4a5..caf1f1b 100644 --- a/xdclass-coupon-service/src/main/java/net/jieyuu/service/impl/CouponRecordServiceImpl.java +++ b/xdclass-coupon-service/src/main/java/net/jieyuu/service/impl/CouponRecordServiceImpl.java @@ -152,9 +152,7 @@ public class CouponRecordServiceImpl extends ServiceImpl().eq("id", recordMessage.getTaskId()) - ); + CouponTaskDO taskDO = couponTaskMapper.selectOne(new QueryWrapper().eq("id", recordMessage.getTaskId())); if (taskDO == null) { log.warn("工作单不存在,消息:{}", recordMessage); // 不需入队 @@ -178,7 +176,7 @@ public class CouponRecordServiceImpl extends ServiceImpl().eq("id", taskDO.getId())); + couponTaskMapper.update(taskDO, new QueryWrapper().eq("id", recordMessage.getTaskId())); log.info("订单已经支付,修改库存锁定工单为FINISH状态:{}", recordMessage); return true; } @@ -188,7 +186,7 @@ public class CouponRecordServiceImpl extends ServiceImpl().eq("id", taskDO.getId())); + couponTaskMapper.update(taskDO, new QueryWrapper().eq("id", recordMessage.getTaskId())); // 恢复优惠券使用记录为NEW couponRecordMapper.updateState(taskDO.getCouponRecordId(), CouponStateEnum.NEW.name()); return true; diff --git a/xdclass-coupon-service/src/main/resources/mapper/CouponRecordMapper.xml b/xdclass-coupon-service/src/main/resources/mapper/CouponRecordMapper.xml index a91bad5..1867640 100644 --- a/xdclass-coupon-service/src/main/resources/mapper/CouponRecordMapper.xml +++ b/xdclass-coupon-service/src/main/resources/mapper/CouponRecordMapper.xml @@ -37,7 +37,7 @@ update coupon_record - set use_state=#{state} + set use_state=#{useState} where id = #{couponRecordId} diff --git a/xdclass-coupon-service/src/test/java/net/jieyuu/biz/DemoApplicationTests.java b/xdclass-coupon-service/src/test/java/net/jieyuu/biz/DemoApplicationTests.java index 57cd427..1abfcae 100644 --- a/xdclass-coupon-service/src/test/java/net/jieyuu/biz/DemoApplicationTests.java +++ b/xdclass-coupon-service/src/test/java/net/jieyuu/biz/DemoApplicationTests.java @@ -2,6 +2,7 @@ package net.jieyuu.biz; import lombok.extern.slf4j.Slf4j; import net.jieyuu.CouponApplication; +import net.jieyuu.model.CouponRecordMessage; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.amqp.rabbit.core.RabbitTemplate; @@ -23,4 +24,12 @@ public class DemoApplicationTests { } + @Test + public void testCouponRecordRelease() { + CouponRecordMessage message = new CouponRecordMessage(); + message.setOutTradeNo("123456abc"); + message.setTaskId(1l); + rabbitTemplate.convertAndSend("coupon.event.exchange", "coupon.release.delay.routing.key", message); + } + } \ No newline at end of file diff --git a/xdclass-order-service/src/main/java/net/jieyuu/config/InterceptorConfig.java b/xdclass-order-service/src/main/java/net/jieyuu/config/InterceptorConfig.java index 3220ee7..7d1ca5c 100644 --- a/xdclass-order-service/src/main/java/net/jieyuu/config/InterceptorConfig.java +++ b/xdclass-order-service/src/main/java/net/jieyuu/config/InterceptorConfig.java @@ -18,7 +18,7 @@ public class InterceptorConfig implements WebMvcConfigurer { //拦截的路径 .addPathPatterns("/api/order/*/**") //放行的路径 - .excludePathPatterns("api/callback/*/**","api/v1/order/*/query_state"); + .excludePathPatterns("api/callback/*/**", "/api/order/*/query_state"); WebMvcConfigurer.super.addInterceptors(registry); } diff --git a/xdclass-order-service/src/main/java/net/jieyuu/controller/ProductOrderController.java b/xdclass-order-service/src/main/java/net/jieyuu/controller/ProductOrderController.java index dc779f8..054ce14 100644 --- a/xdclass-order-service/src/main/java/net/jieyuu/controller/ProductOrderController.java +++ b/xdclass-order-service/src/main/java/net/jieyuu/controller/ProductOrderController.java @@ -85,7 +85,7 @@ public class ProductOrderController { @GetMapping("/query_state") JsonData queryProductOrderState(@ApiParam("订单号") @RequestParam("out_trade_no") String outTradeNo) { String state = orderService.queryProductOrderState(outTradeNo); - return StringUtils.isBlank(state) ? JsonData.buildResult(BizCodeEnum.ORDER_CONFIRM_NOT_EXIST) : JsonData.buildSuccess(); + return StringUtils.isBlank(state) ? JsonData.buildResult(BizCodeEnum.ORDER_CONFIRM_NOT_EXIST) : JsonData.buildSuccess(state); } } 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 9c8eb23..c2a6636 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 @@ -56,7 +56,7 @@ public class ProductOrderServiceImpl extends ServiceImpl().eq("out-trade_no", outTradeNo)); + ProductOrderDO productOrderDO = productOrderMapper.selectOne(new QueryWrapper().eq("out_trade_no", outTradeNo)); if (productOrderDO == null) { return ""; } else {