From 6d0725713b29550630d13ae105438f67dd456b4a Mon Sep 17 00:00:00 2001 From: "Stormeye.Wu" Date: Sat, 29 Sep 2018 13:34:52 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=81=9C=E8=BD=A6=E5=88=B8=E9=A2=86=E5=8F=96?= =?UTF-8?q?=E9=99=90=E5=88=B6=E6=A3=80=E6=9F=A5][=E6=96=B0=E5=A2=9E]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iformall/mapper/WxCouponOrderMapper.java | 2 +- .../com/iformall/mapper/WxOrderMapper.java | 2 + .../service/impl/WxOrderServiceImpl.java | 38 +++++++++---------- .../resources/mapper/WxCouponOrderMapper.xml | 4 +- .../main/resources/mapper/WxOrderMapper.xml | 18 ++++++++- 5 files changed, 40 insertions(+), 24 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java index 7114abda2..1ab47eadd 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCouponOrderMapper.java @@ -14,7 +14,7 @@ public interface WxCouponOrderMapper extends CommonMapper { List findList(WxCouponOrder wxCouponOrder); Integer countList(WxCouponOrder wxCouponOrder); - Integer countCarList(Map params); + Integer dayCountCarList(Map params); List findListOfOrderedByDate(Map dateMap); List findListOfVerifiedByDate(Map dateMap); diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java index 89c9cc980..3285cb1ee 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java @@ -11,6 +11,8 @@ public interface WxOrderMapper extends CommonMapper { Integer countList(WxOrder wxOrder); + Integer dayCountList(WxOrder wxOrder); + List findListOfUnpaidOrderByDate(Map dateMap); List findListOfCUser(WxOrder wxOrder); 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 b3bc03ff5..b3e928ce7 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -86,7 +86,11 @@ public class WxOrderServiceImpl implements WxOrderService { orderQ.setCUserId(user.getId()); orderQ.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); try { - countOrder = wxOrderMapper.countList(orderQ); + if (counpon.getType().equals(EnumCouponType.COUPON_TINGCHE.getCode())) { + countOrder = wxOrderMapper.dayCountList(orderQ); + } else { + countOrder = wxOrderMapper.countList(orderQ); + } } catch (Exception e) { logger.error("购买是否超限-DB, couponId: " + counpon.getId() + ", e:" + e.getMessage()); throw new MallinkException(ErrorCode.ORDER_IS_FAIL); @@ -98,7 +102,7 @@ public class WxOrderServiceImpl implements WxOrderService { Map params = new HashMap(); params.put("couponId", counpon.getId()); params.put("cUserId", user.getId()); - countCouponOrder = wxCouponOrderMapper.countCarList(params); + countCouponOrder = wxCouponOrderMapper.dayCountCarList(params); } else { WxCouponOrder couponOrderQ = new WxCouponOrder(); couponOrderQ.setTenantId(user.getTenantId()); @@ -133,24 +137,20 @@ public class WxOrderServiceImpl implements WxOrderService { } // check 购买是否超限 - if (coupon.getType().equals(EnumCouponType.COUPON_TINGCHE.getCode())) { - - } else { - int count = 0; - try { - count = getUserCouponOrderCount(user, coupon); - } catch (Exception e) { - //解锁 - redisLock.unlock(couponIdStr, timeStr); - throw new MallinkException(ErrorCode.DB_FAIL); - } + int count = 0; + try { + count = getUserCouponOrderCount(user, coupon); + } catch (Exception e) { + //解锁 + redisLock.unlock(couponIdStr, timeStr); + throw new MallinkException(ErrorCode.DB_FAIL); + } - if (count >= coupon.getUseLimitQuantity()) { - //解锁 - redisLock.unlock(couponIdStr, timeStr); - logger.error("此券购买数量已超限, couponId: " + couponIdStr + ", count: " + count); - throw new MallinkException(ErrorCode.ORDER_IS_LIMITED); - } + if (count >= coupon.getUseLimitQuantity()) { + //解锁 + redisLock.unlock(couponIdStr, timeStr); + logger.error("此券购买数量已超限, couponId: " + couponIdStr + ", count: " + count); + throw new MallinkException(ErrorCode.ORDER_IS_LIMITED); } diff --git a/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml index e2efd1108..e15233145 100644 --- a/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml @@ -84,7 +84,7 @@ - select count(*) from wx_coupon_order @@ -102,8 +102,6 @@ - - diff --git a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml index a4c8fc62f..5c19c399a 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml @@ -113,7 +113,23 @@ - +