From a2af243fb822f689efcf48b16e9bbf59e38d8cee Mon Sep 17 00:00:00 2001 From: gongbiao Date: Mon, 18 Mar 2019 17:12:03 +0800 Subject: [PATCH] =?UTF-8?q?[BUG][ID1001133][C=E7=AB=AF=EF=BC=8C=E5=A6=82?= =?UTF-8?q?=E6=9E=9C=E6=8B=BC=E5=9B=A2=E5=90=8E=EF=BC=8C=E5=9B=A2=E6=BB=A1?= =?UTF-8?q?=EF=BC=8C=E4=B9=8B=E5=89=8D=E5=BE=85=E4=BB=98=E6=AC=BE=E7=9A=84?= =?UTF-8?q?=E5=B0=B1=E4=B8=8D=E8=AE=A9=E8=BF=9B=E8=A1=8C=E6=94=AF=E4=BB=98?= =?UTF-8?q?=EF=BC=8C=E6=8F=90=E7=A4=BA=E5=9B=A2=E6=BB=A1]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/iformall/controller/WxPayOrderController.java | 4 ---- .../com/iformall/service/impl/WxOrderServiceImpl.java | 11 ++++++++++- .../iformall/service/impl/WxPayOrderServiceImpl.java | 9 +++++++++ .../src/main/resources/mapper/WxOrderMapper.xml | 2 +- 4 files changed, 20 insertions(+), 6 deletions(-) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxPayOrderController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxPayOrderController.java index c81982470..f20fafb6b 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxPayOrderController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxPayOrderController.java @@ -12,7 +12,6 @@ import com.iformall.domain.po.WxPayOrder; import com.iformall.enums.EnumPayStatus; import com.iformall.enums.EnumPayWay; import com.iformall.exception.MallinkException; -import com.iformall.service.WxCouponService; import com.iformall.service.WxOrderService; import com.iformall.service.WxPayOrderService; import com.iformall.utils.IPUtil; @@ -44,9 +43,6 @@ public class WxPayOrderController extends BaseController { @Autowired private WxOrderService wxOrderService; - @Autowired - private WxCouponService wxCouponService; - @ApiOperation(value = "发起微信小程序支付订单", notes = "{\"orderId\":\"string\"}") @RequestMapping(value = "/create", method = RequestMethod.POST) public ResultData _create(@RequestBody Map paramMap, HttpServletRequest request) throws Exception { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java index 2e1014317..182a7c894 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -99,6 +99,9 @@ public class WxOrderServiceImpl implements WxOrderService { @Autowired WxOrderPressMapper wxOrderPressMapper; + @Autowired + WxOrderGroupMapper wxOrderGroupMapper; + @Override public PageInfo listAsPage(WxOrder record, Integer pageIndex, Integer pageSize) { return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxOrderMapper.findList(record)); @@ -354,7 +357,13 @@ public class WxOrderServiceImpl implements WxOrderService { logger.error("商户不存在, couponId: " + couponIdStr); throw new MallinkException(ErrorCode.MERCHANT_INFO_NOT_FOUND); } - + if (!orderGroupId.equals(0L)) { + WxOrderGroup group = wxOrderGroupMapper.selectByPrimaryKey(orderGroupId); + if (group.getStatus().equals(EnumOrderStatus.ORDER_STATUS_COOPERATING_COMPLETE.getCode())) { + logger.error("下订单拼团人数已满>>>" + orderGroupId); + throw new MallinkException(ErrorCode.ORDER_GROUP_COOPERATING_FINISHED); + } + } // 减库存操作 stockReduce(user, coupon, couponIdStr); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java index 301ad821e..2f63f8604 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java @@ -123,8 +123,17 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { } if (!order.getOrderGroupId().equals(0L) && order.getOrderStatus().equals(EnumOrderStatus.ORDER_STATUS_COOPERATING_COMPLETE.getCode())) { + logger.error("支付时拼团已满>>" + order.getOrderGroupId()); throw new MallinkException(ErrorCode.ORDER_GROUP_COOPERATING_FINISHED); } + + WxCoupon wxCoupon = wxCouponMapper.selectByPrimaryKey(order.getProductId()); + if (wxCoupon.getType().equals(EnumCouponType.COUPON_GROUP.getCode()) && + wxCoupon.getStatus().equals(EnumCouponStatus.COUPON_STATUS_TAKE_OFFF.getCode())) { + logger.error("券已经下架了>>>" + order.getProductId()); + throw new MallinkException(ErrorCode.COUPON_CHANNEL_IS_TAKE_OFF); + } + if(order.getPressEndDate() == null) { // 非砍价券 if (order.getOrderStatus() == EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()) { diff --git a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml index 4be9f1a72..f300c71d3 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml @@ -233,7 +233,7 @@ from wx_coupon c,wx_order o left join wx_coupon_order co on co.order_id = o.id left join wx_coupon_action_log cal on cal.coupon_order_id = co.id - where o.product_id = c.id + where o.product_id = c.id and c.type!=9 and o.c_user_id = #{cUserId}