From 57d03125bc03f8964536ff9586f0b910e656a846 Mon Sep 17 00:00:00 2001 From: hupeng Date: Fri, 5 Jul 2019 20:58:07 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=8D=A1=E5=88=B8][=E4=BF=AE=E5=A4=8D]:?= =?UTF-8?q?=E5=88=A9=E7=94=A8=E4=B8=8D=E6=94=AF=E4=BB=98=E6=BC=8F=E6=B4=9E?= =?UTF-8?q?=E5=A4=9A=E6=AC=A1=E5=8F=82=E5=8A=A0=E6=96=B0=E6=89=8B=E6=B4=BB?= =?UTF-8?q?=E5=8A=A8=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WxOrderController.java | 2 ++ .../java/com/iformall/common/ErrorCode.java | 5 +++- .../com/iformall/mapper/WxOrderMapper.java | 1 + .../com/iformall/service/WxOrderService.java | 1 + .../service/impl/WxOrderServiceImpl.java | 30 +++++++++++++++++++ .../main/resources/mapper/WxOrderMapper.xml | 26 ++++++++++++++++ 6 files changed, 64 insertions(+), 1 deletion(-) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java index 123436a99..90cc53337 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java @@ -106,6 +106,8 @@ public class WxOrderController extends BaseController { WxCUserBasicInfo cUserBasicInfo = wxCUserBasicInfoService.getById(user.getId()); if (cUserBasicInfo != null && cUserBasicInfo.getActRecord() > 0) return new ResultData(ErrorCode.COUPON_ONLY_FOR_NEW_MEMBER); + if (wxOrderService.countCouponConditionType1(user) > 0) + return new ResultData(ErrorCode.COUPON_ALREADY_IN_NEW_MEMBER); }else if (jo.getIntValue("type") == EnumCouponConditionType.SCORE_SCOPE.getCode()){ int max = jo.getIntValue("max"); int min = jo.getIntValue("min"); diff --git a/mallinkService/src/main/java/com/iformall/common/ErrorCode.java b/mallinkService/src/main/java/com/iformall/common/ErrorCode.java index afa20a878..de8d35768 100644 --- a/mallinkService/src/main/java/com/iformall/common/ErrorCode.java +++ b/mallinkService/src/main/java/com/iformall/common/ErrorCode.java @@ -110,7 +110,7 @@ public enum ErrorCode{ COUPON_VALID_DATE_ERR(2035, "券有效期设置错误"), COUPON_STOCK_VALID_DATE_SETTING_ERR(2036, "券库存有效期未修改"), COUPON_STOCK_DATE_NO_CAR(2037, "券库存不支持停车券"), - COUPON_ONLY_FOR_NEW_MEMBER(2038, "您已参加过新会员活动"), + COUPON_SCORE_NOT_IN_RANGE(2038, "您的成长值/等级与要求不符"), COUPON_STOCK_NO_EQUAL_ERR(2039, "券库存设置要保证同增同减"), COUPON_STOCK_ENDTIME_ERR(2043, "抱歉,有效期截止时间只能增加不能减少!"), @@ -118,6 +118,9 @@ public enum ErrorCode{ PUSH_LIMIT_UP_TO_1DAYLIMIT(2040, "此用户一天内发券到达疲劳度限制"), PUSH_LIMIT_UP_TO_COUPONLIMIT(2041, "此用户发此券到达疲劳度限制"), PUSH_LIMIT_NOT_INRANG(2042, "不在疲劳度允许的时间段"), + + COUPON_ONLY_FOR_NEW_MEMBER(2044, "您已经参加过新会员活动"), + COUPON_ALREADY_IN_NEW_MEMBER(2045, "您正在参加别的新会员活动"), /** * 车流 2040 */ diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java index 87ce3695e..70979626c 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java @@ -14,6 +14,7 @@ public interface WxOrderMapper extends CommonMapper { List findList(WxOrder wxOrder); Integer countList(WxOrder wxOrder); + int countCouponConditionType1(WxOrder wxOrder); List findListOfUnpaidOrderByDate(Map dateMap); diff --git a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java index 090e0e32b..ce026d370 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java @@ -166,6 +166,7 @@ public interface WxOrderService { */ WxOrder getUnPaidOrder(WxCUser cUser, WxCoupon coupon); + int countCouponConditionType1(WxCUser user); /** * 订单处理 * 1. 检查coupon是否免费 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 b783f50d7..0c763ad50 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -248,6 +248,36 @@ public class WxOrderServiceImpl implements WxOrderService { return null; } + /** + * 用户正在参加的新手活动 + * @param user + * @return + */ + public int countCouponConditionType1(WxCUser user) { + // + Order 待支付 + try { + WxOrder orderQ = new WxOrder(); + orderQ.setTenantId(user.getTenantId()); + orderQ.setType(EnumOrderType.COUPON.getCode()); + orderQ.setCUserId(user.getId()); + List statusS = new ArrayList<>(); + statusS.add(EnumOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); + statusS.add(EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()); + + statusS.add(EnumOrderStatus.ORDER_STATUS_PRESSING.getCode()); + statusS.add(EnumOrderStatus.ORDER_STATUS_PRESS_COMPLETE.getCode()); + + statusS.add(EnumOrderStatus.ORDER_STATUS_COOPERATING.getCode()); + statusS.add(EnumOrderStatus.ORDER_STATUS_COOPERATING_COMPLETE.getCode()); + statusS.add(EnumOrderStatus.ORDER_STATUS_COOPERATING_UNPAID.getCode()); + orderQ.setStatusS(statusS); + return wxOrderMapper.countCouponConditionType1(orderQ); + } catch (Exception e) { + logger.error("用户正在参加的新手活动, userId: " + user.getId() + ", e:" + e.getMessage()); + throw new MallinkException(ErrorCode.ORDER_IS_NOT_FIND); + } + } + /** * 用户购买的券包数量- 待使用的券 * @param user diff --git a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml index ae997cab2..63ce61cf7 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml @@ -136,6 +136,32 @@ + +