diff --git a/bweb/src/main/java/com/bweb/controller/SecUserController.java b/bweb/src/main/java/com/bweb/controller/SecUserController.java index 8ce6a93..70c4c1a 100644 --- a/bweb/src/main/java/com/bweb/controller/SecUserController.java +++ b/bweb/src/main/java/com/bweb/controller/SecUserController.java @@ -6,6 +6,7 @@ import com.github.pagehelper.PageInfo; import com.hfkj.common.exception.ErrorCode; import com.hfkj.common.exception.ErrorHelp; import com.hfkj.common.exception.SysCode; +import com.hfkj.common.security.UserCenter; import com.hfkj.common.utils.MD5Util; import com.hfkj.common.utils.ResponseMsgUtil; import com.hfkj.entity.SecUser; @@ -36,6 +37,8 @@ public class SecUserController { @Resource private SecUserService secUserService; @Resource + private UserCenter userCenter; + @Resource private SecUserLoginLogService secUserLoginLogService; @RequestMapping(value="/editUser",method = RequestMethod.POST) diff --git a/cweb/src/main/java/com/cweb/controller/cms/CmsContentController.java b/cweb/src/main/java/com/cweb/controller/cms/CmsContentController.java index 7c5b560..e74456e 100644 --- a/cweb/src/main/java/com/cweb/controller/cms/CmsContentController.java +++ b/cweb/src/main/java/com/cweb/controller/cms/CmsContentController.java @@ -73,8 +73,6 @@ public class CmsContentController { map.put("platformCode", platformCode); List list = cmsContentService.getList(map); - - for (CmsContent cmsContent : list) { List goodsModels = new ArrayList<>(); diff --git a/service/src/main/java/com/hfkj/dao/BsOrderMapperExt.java b/service/src/main/java/com/hfkj/dao/BsOrderMapperExt.java index 7a768ed..21c57dc 100644 --- a/service/src/main/java/com/hfkj/dao/BsOrderMapperExt.java +++ b/service/src/main/java/com/hfkj/dao/BsOrderMapperExt.java @@ -1,10 +1,13 @@ package com.hfkj.dao; import com.hfkj.entity.*; +import com.hfkj.model.goods.JdGoodsModel; import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; import java.util.List; +import java.util.Map; /** * mapper扩展类 @@ -298,4 +301,14 @@ public interface BsOrderMapperExt { "" }) void insertOrderDeductionBatch(@Param(value = "list") List list); + + + @Select("") + Integer toDyaGoodsLimit(@Param("userId") Long userId , @Param("skuId") Long skuId ); + } \ No newline at end of file diff --git a/service/src/main/java/com/hfkj/service/order/impl/BsOrderServiceImpl.java b/service/src/main/java/com/hfkj/service/order/impl/BsOrderServiceImpl.java index 1c5295d..4b745a2 100644 --- a/service/src/main/java/com/hfkj/service/order/impl/BsOrderServiceImpl.java +++ b/service/src/main/java/com/hfkj/service/order/impl/BsOrderServiceImpl.java @@ -102,6 +102,8 @@ public class BsOrderServiceImpl implements BsOrderService { private GoodsUserAddressService goodsUserAddressService; @Resource private BsMerPayConfigService bsMerPayConfigService; + @Resource + private BsOrderMapper bsOrderMapper; @Override public BsOrder editData(BsOrder order) { @@ -160,6 +162,13 @@ public class BsOrderServiceImpl implements BsOrderService { // 查询规格 GoodsSpecs specs = goodsSpecsService.queryDetail(child.getProductSpecId()); + if (specs.getPurLimit() != null) { + boolean l = checkPurchaseLimit(order.getUserId() , specs.getId()); + if (l) { + throw ErrorHelp.genException(SysCode.System, ErrorCode.COMMON_ERROR, "商品限购数量不能超过" + specs.getPurLimit()); + } + } + if (specs != null) { // 校验商品购买是否超过库存 if (specs.getStock() < child.getProductCount()) { @@ -167,6 +176,9 @@ public class BsOrderServiceImpl implements BsOrderService { } } + // checkPurchaseLimit 限购 + + child.setOrderNo(order.getOrderNo()); // 子订单号 交易id + 线程随机数 + 4位随机数 child.setChildOrderNo(order.getId()+ IDGenerator.nextId(1) +RandomUtils.number(4, false)); @@ -787,4 +799,26 @@ public class BsOrderServiceImpl implements BsOrderService { } + + // 检查购买限制 + private boolean checkPurchaseLimit(Long userId , Long skuId) throws Exception { + + // 查询商品是否存在限购 + GoodsSpecs goodsSpecs = goodsSpecsService.queryDetail(skuId); + + if (goodsSpecs.getPurLimit() == null || goodsSpecs.getPurLimit() == 0) { + return false; + } + // 查询用户购买数量 + Integer num = bsOrderMapper.toDyaGoodsLimit(userId , skuId); + + if (num == null) { + return false; + } + + return num >= goodsSpecs.getPurLimit(); + + } + + }