From 83c3f0bda73aad037b2906dcd069fb977780509a Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Thu, 19 Sep 2019 16:57:13 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=8D=A1=E5=88=B8][=E4=BF=AE=E6=94=B9]:?= =?UTF-8?q?=E5=8D=A1=E5=88=B8=E9=A2=86=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WxCouponPasswordController.java | 23 +++++++++++++++---- .../controller/WxOrderController.java | 3 +++ 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxCouponPasswordController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxCouponPasswordController.java index 384cf803c..ce0d8aad0 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxCouponPasswordController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxCouponPasswordController.java @@ -58,6 +58,16 @@ public class WxCouponPasswordController extends BaseController { return new ResultData(500, e.getMessage()); } + WxCUser cuUser = getUser(); + WxCoupon coupon = couponService.getById(couponPassword.getCouponId()); + if (coupon == null) { + return new ResultData(ErrorCode.COUPON_IS_EMPTY); + } + if (coupon.getStatus().equals(EnumCouponStatus.COUPON_STATUS_TAKE_OFFF.getCode())) { + logger.error("此券已作废:" + coupon.getId()); + return new ResultData(ErrorCode.COUPON_IS_TAKE_OFF); + } + // 2. 设置已使用 try { WxCouponPassword updateCouponPwd = new WxCouponPassword(); @@ -71,10 +81,15 @@ public class WxCouponPasswordController extends BaseController { } // 3. 领取free coupon - WxCUser cuUser = getUser(); - WxCoupon coupon = couponService.getById(couponPassword.getId()); - // TODO ? check 卡券状态 - orderService.saveFreeOrderForCoupon(cuUser, coupon, null, formId, couponPassword.getId()); + try { + WxOrder order = orderService.saveFreeOrderForCoupon(cuUser, coupon, null, formId, couponPassword.getId()); + } catch (MallinkException e) { + logger.error(e.getMessage()); + return new ResultData(e.getErrorCode(), e.getMessage()); + } catch (Exception e) { + logger.error(e.getMessage()); + return new ResultData(500, e.getMessage()); + } return new ResultData(); } } diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java index 2eef41fd1..cea078e18 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java @@ -83,6 +83,9 @@ public class WxOrderController extends BaseController { if (coupon == null) { return new ResultData(ErrorCode.COUPON_IS_EMPTY); } + if (coupon.getStatus().equals(EnumCouponStatus.COUPON_STATUS_TAKE_OFFF.getCode())) { + return new ResultData(ErrorCode.COUPON_IS_TAKE_OFF); + } WxOrder order = wxOrderService.saveOrderForCoupon(user, coupon, orderSaveDto, isPress); return new ResultData(order); } catch (MallinkException e) {