diff --git a/mallinkService/src/main/java/com/simple/service/impl/WxOrderServiceImpl.java b/mallinkService/src/main/java/com/simple/service/impl/WxOrderServiceImpl.java index 5f6170f2a..26ad36a4e 100644 --- a/mallinkService/src/main/java/com/simple/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/simple/service/impl/WxOrderServiceImpl.java @@ -70,20 +70,33 @@ public class WxOrderServiceImpl implements WxOrderService { } private int getUserCouponOrderCount(WxCUser user, WxCoupon counpon) { - // 查找 - int count = 0; - WxCouponOrder query = new WxCouponOrder(); - query.setCouponId(counpon.getId()); - query.setCUserId(user.getId()); - query.setCouponOrderStatus(EnumCouponOrderStatus.COUPON_ORDER_USE_WAIT.getCode()); + // 用户购买的券包数量 + // + Order 待支付 + // + couponOrder 待使用 + int countOrder = 0, countCouponOrder = 0; + WxOrder orderQ = new WxOrder(); + orderQ.setCouponId(counpon.getId()); + orderQ.setCUserId(user.getId()); + orderQ.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); + try { + countOrder = wxOrderMapper.selectCount(orderQ); + }catch (Exception e) { + logger.error("购买是否超限-DB, couponId: " + counpon.getId() + ", e:" + e.getMessage()); + throw new MallinkException(ErrorCode.ORDER_IS_FAIL); + } + + WxCouponOrder couponOrderQ = new WxCouponOrder(); + couponOrderQ.setCouponId(counpon.getId()); + couponOrderQ.setCUserId(user.getId()); + couponOrderQ.setCouponOrderStatus(EnumCouponOrderStatus.COUPON_ORDER_USE_WAIT.getCode()); try { - count = wxCouponOrderMapper.selectCount(query); + countCouponOrder = wxCouponOrderMapper.selectCount(couponOrderQ); }catch (Exception e) { logger.error("购买是否超限-DB, couponId: " + counpon.getId() + ", e:" + e.getMessage()); throw new MallinkException(ErrorCode.ORDER_IS_FAIL); } - return count; + return countOrder + countCouponOrder; } private void stockReduce(WxCUser user, WxCoupon coupon, String couponIdStr) { diff --git a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml index cec8b0479..7579d1279 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml @@ -7,6 +7,7 @@ + @@ -195,6 +196,18 @@ AND order_status = '0' + +