diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxCouponOrderController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxCouponOrderController.java index 0b4cca9ba..a42fee1fb 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxCouponOrderController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxCouponOrderController.java @@ -16,6 +16,7 @@ import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; @@ -32,6 +33,9 @@ public class WxCouponOrderController extends BaseController { @Autowired private WxCouponOrderService wxCouponOrderService; + @Autowired + StringRedisTemplate stringRedisTemplate; + @ApiOperation("券包分页列表接口") @GetMapping("list") @ApiImplicitParams({ @@ -142,7 +146,6 @@ public class WxCouponOrderController extends BaseController { @ApiImplicitParam(name = "cUserId", value = "转赠者", dataType = "Long", paramType = "query", required = true), }) public ResultData cardAccept(@RequestBody WxCouponOrder wxCouponOrder) { - //coupon_order_id判断 Long id = wxCouponOrder.getId(); if (id == null) { 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 acf1538b9..2e629385b 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java @@ -727,6 +727,11 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { logger.info("转赠人与目前卡所有者不相同," + "转赠人:" + cUserId + ",当前所有者:" + ownerId); return new ResultData(ErrorCode.CARD_TRANSFERED); } + + if (!record.getUpdateDate().equals(cardCVo.getUpdateDate())) { + return new ResultData(ErrorCode.CARD_TRANSFER_INVALID); + } + //判断卡是否已消费 //面额与余额是否相同 if (!cardCVo.getAmount().equals(cardCVo.getRemainingAmount())) { @@ -743,6 +748,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { //更新卡拥有者 try { record.setCUserId(null); + record.setUpdateDate(new Date()); wxCouponOrderMapper.updateByPrimaryKeySelective(record); } catch (Exception e) { logger.info("更新卡拥有者信息失败"); @@ -773,6 +779,11 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { logger.info("转赠人与目前卡所有者不相同," + "转赠人:" + cUserId + ",当前所有者:" + ownerId); return new ResultData(ErrorCode.CARD_TRANSFERED); } + + if (!record.getUpdateDate().equals(cardCVo.getUpdateDate())) { + return new ResultData(ErrorCode.CARD_TRANSFER_INVALID); + } + //判断卡是否已消费 //面额与余额是否相同 if (!cardCVo.getAmount().equals(cardCVo.getRemainingAmount())) {