From ec348b7082ebe966783aa5a72a52c803fda51976 Mon Sep 17 00:00:00 2001 From: gongbiao Date: Mon, 18 Feb 2019 11:23:01 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=8D=A1=E8=BD=AC=E8=B5=A0][=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0][=E7=8A=B6=E6=80=81=E6=9F=A5=E8=AF=A2]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WxCouponOrderController.java | 23 +++++++++++++++++ .../java/com/iformall/common/ErrorCode.java | 4 +-- .../service/WxCouponOrderService.java | 2 ++ .../impl/WxCouponOrderServiceImpl.java | 25 +++++++++++++++++++ 4 files changed, 52 insertions(+), 2 deletions(-) diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxCouponOrderController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxCouponOrderController.java index d918c1721..595fde03a 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxCouponOrderController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxCouponOrderController.java @@ -160,5 +160,28 @@ public class WxCouponOrderController extends BaseController { } + @ApiOperation(value = "查询转赠卡状态") + @PostMapping("queryCardStatus") + public ResultData queryCardStatus(@ModelAttribute WxCouponOrder wxCouponOrder) { + + //coupon_order_id判断 + Long id = wxCouponOrder.getId(); + if (id == null) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); + } + //转赠人判断 + if (wxCouponOrder.getCUserId() == null) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); + } + //当前领取人 + wxCouponOrder.setOwnerId(getUserId()); + //转赠者与当前领取人是否为同一个 + if (wxCouponOrder.getCUserId().equals(wxCouponOrder.getOwnerId())) { + logger.info("转赠人与卡所有者相同"); + return new ResultData(ErrorCode.CARD_TRANSFER_INVALID.getCode(), "转赠人与卡所有者相同"); + } + + return wxCouponOrderService.queryCardStatus(wxCouponOrder); + } } diff --git a/mallinkService/src/main/java/com/iformall/common/ErrorCode.java b/mallinkService/src/main/java/com/iformall/common/ErrorCode.java index cfd418442..34b246ef0 100644 --- a/mallinkService/src/main/java/com/iformall/common/ErrorCode.java +++ b/mallinkService/src/main/java/com/iformall/common/ErrorCode.java @@ -166,8 +166,8 @@ public enum ErrorCode{ CARD_IS_NOT_FOUND(9001, "优惠卡不存在"), CARD_REMAIN_AMOUNT_IS_NOT_ENOUGH(9002, "优惠卡余额不足"), CARD_IS_NOT_COST(9003, "优惠卡未消费,退款请用卡券退款,钱直接退回购买人手里"), - CARD_TRANSFERED(9004, "消费卡已被转赠"), - CARD_TRANSFER_INVALID(9005, "消费卡转赠已失效"), + CARD_TRANSFERED(9004, "消费卡已被领取"), + CARD_TRANSFER_INVALID(9005, "消费卡已失效"), /** * 卡消费 diff --git a/mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java index 885337975..337f308bb 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java @@ -182,4 +182,6 @@ public interface WxCouponOrderService { ResultData cardAccept(WxCouponOrder wxCouponOrder); + ResultData queryCardStatus(WxCouponOrder wxCouponOrder); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java index 041cc88e2..8180b8247 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java @@ -750,6 +750,31 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { return new ResultData(Result.SUCCESS, "领取成功"); } + @Override + public ResultData queryCardStatus(WxCouponOrder record) { + //卡券是否存在 + WxCardCVo cardCVo = wxCouponOrderMapper.findCardDetailOfCUser(record.getId()); + if (cardCVo == null) { + logger.info("卡券不存在" + record.getId()); + return new ResultData(ErrorCode.COUPON_ORDER_IS_NULL); + } + //转赠人是否存在 + Long cUserId = record.getCUserId(); + WxCUser wxCuser = wxCUserMapper.selectByPrimaryKey(cUserId); + if (wxCuser == null) { + logger.info("转赠人不存在:" + cUserId); + return new ResultData(ErrorCode.USER_IS_EMPTY.getCode(), "转赠人不存在"); + } + //判断转赠人与目前卡所有者是否为同一个 + //数据表中当前卡所有者 + Long ownerId = cardCVo.getOwnerId(); + if (!ownerId.equals(cUserId)) { + logger.info("转赠人与目前卡所有者不相同," + "转赠人:" + cUserId + ",当前所有者:" + ownerId); + return new ResultData(ErrorCode.CARD_TRANSFERED); + } + return new ResultData(Result.SUCCESS, "查询成功"); + } + public void saveCardTransfer(WxCouponOrder couponOrder, WxCardCVo cardCVo) { logger.info("保存卡转赠信息"); WxCardTransferInfo wxCardTransferInfo = new WxCardTransferInfo();