From b381381496732b1553148ceb888df95e8edaa701 Mon Sep 17 00:00:00 2001 From: "Stormeye.Wu" Date: Thu, 30 Aug 2018 10:39:07 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=81=9C=E8=BD=A6=E5=88=B8][=E6=96=B0?= =?UTF-8?q?=E5=A2=9E]=EF=BC=9A=E5=BA=93=E5=AD=98=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../simple/controller/WxCarController.java | 55 +++++++++++++------ .../com/simple/mapper/WxCouponCarMapper.java | 2 + .../simple/service/WxCouponCarService.java | 7 +++ .../service/impl/WxCouponCarServiceImpl.java | 5 ++ .../resources/mapper/WxCouponCarMapper.xml | 12 +++- 5 files changed, 63 insertions(+), 18 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/simple/controller/WxCarController.java b/mallinkAdmin/src/main/java/com/simple/controller/WxCarController.java index b52cd4146..1ebb48866 100644 --- a/mallinkAdmin/src/main/java/com/simple/controller/WxCarController.java +++ b/mallinkAdmin/src/main/java/com/simple/controller/WxCarController.java @@ -21,6 +21,7 @@ import io.swagger.models.auth.In; import org.apache.commons.lang3.StringUtils; import org.apache.log4j.Logger; import org.apache.poi.hmef.attribute.MAPIAttribute; +import org.omg.PortableInterceptor.INACTIVE; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -183,28 +184,32 @@ public class WxCarController extends BaseController @PostMapping("add") public ResultData add(@RequestBody WxCouponCarVo coupon) { logger.info(coupon.toString()); - /* - amount: 1000 - avaliavleNum: 1000 - businessId: "IgWGUtpAX68=" - businessName: "fmtest5678" - category: "1" - categoryValue: "2.00" - couponType: "0" - coverImg: "http://202.165.179.86:8081/images/5411b414-b90e-4f51-bdd4-834fca86a722.png" - effectiveEnd: "2018-11-30" - effectiveStart: "2018-08-26" - name: "优免2小时券" - priceStr: "2.00元" - type: "5" - validEndDate: "undefined 00:00:00" - validStartDate: "undefined 00:00:00" - */ //Assert.notNull(wxCoupon.getName(), "角色名不能为空"); //Assert.isTrue(!checkUnique(sysRole.getName(), null), "重复的角色名"); // Save to wx_counpon Date curDate = new Date(); MallUserInfo user = getUser(); + // check 同一个模板的券分配额是否超了 + if (StringUtils.isBlank(coupon.getVendorParams())) { + logger.error("请填充停车厂商优免券参数"); + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "停车厂商参数为空"); + } + JSONObject vendorParamsObj = JSON.parseObject(coupon.getVendorParams()); + Long templateId = vendorParamsObj.getLong("id"); + Integer amount = vendorParamsObj.getInteger("amount"); + Integer avaliavleNum = vendorParamsObj.getInteger("avaliavleNum"); + Integer amtCount = wxCouponCarService.getAmtCountByTemplateId(templateId); + Integer availCount = wxCouponCarService.getAvaibleCountByTemplateId(templateId); + if (amtCount >= amount) { + logger.error("已达到停车厂商优免券数量限制"); + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "已达到停车厂商优免券数量限制"); + } + if (availCount >= avaliavleNum) { + logger.error("已达到停车厂商优免券数量限制"); + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "已达到停车厂商优免券数量限制"); + } + // check End + WxCoupon wxCoupon = new WxCoupon(); wxCoupon.setTenantId(user.getTenantId()); @@ -278,6 +283,22 @@ public class WxCarController extends BaseController return new ResultData(map); } + @ApiOperation("优免券模板库存总数") + @GetMapping("/templateAvaiCount") + @ApiImplicitParams({ + @ApiImplicitParam(name="templateId",value="模板ID",dataType="Long", paramType = "query",required=true)}) + public ResultData getTemplateAvailSum(Long templateId) { + Map map = new HashMap(); + Integer availCount = 0; + try { + availCount = wxCouponCarService.getAvaibleCountByTemplateId(templateId); + } catch (Exception e) { + logger.error(e.getMessage()); + } + map.put("availCount", availCount); + return new ResultData(map); + } + @ApiOperation("停车券detail") @GetMapping("/detail") public ResultData getCouponCarDetail(@ModelAttribute WxCoupon coupon) { diff --git a/mallinkService/src/main/java/com/simple/mapper/WxCouponCarMapper.java b/mallinkService/src/main/java/com/simple/mapper/WxCouponCarMapper.java index 6ff40a08b..6abf581e8 100644 --- a/mallinkService/src/main/java/com/simple/mapper/WxCouponCarMapper.java +++ b/mallinkService/src/main/java/com/simple/mapper/WxCouponCarMapper.java @@ -14,6 +14,8 @@ public interface WxCouponCarMapper extends CommonMapper { Integer findTemplateAmtCount(Long templateId); + Integer findTemplateAvailCount(Long templateId); + WxCouponCarVo selectCouponCarDetail(WxCoupon coupon); } diff --git a/mallinkService/src/main/java/com/simple/service/WxCouponCarService.java b/mallinkService/src/main/java/com/simple/service/WxCouponCarService.java index d79bb9979..03a0d64d9 100644 --- a/mallinkService/src/main/java/com/simple/service/WxCouponCarService.java +++ b/mallinkService/src/main/java/com/simple/service/WxCouponCarService.java @@ -54,6 +54,13 @@ public interface WxCouponCarService { */ Integer getAmtCountByTemplateId(Long templateId); + /** + * 根据templateId获取库存总数 + * + * @param templateId + */ + Integer getAvaibleCountByTemplateId(Long templateId); + /** * 根据coupon获得实体 * diff --git a/mallinkService/src/main/java/com/simple/service/impl/WxCouponCarServiceImpl.java b/mallinkService/src/main/java/com/simple/service/impl/WxCouponCarServiceImpl.java index 6764e3093..fb9ee41ec 100644 --- a/mallinkService/src/main/java/com/simple/service/impl/WxCouponCarServiceImpl.java +++ b/mallinkService/src/main/java/com/simple/service/impl/WxCouponCarServiceImpl.java @@ -50,6 +50,11 @@ public class WxCouponCarServiceImpl implements WxCouponCarService { return wxCouponCarMapper.findTemplateAmtCount(templateId); } + @Override + public Integer getAvaibleCountByTemplateId(Long templateId) { + return wxCouponCarMapper.findTemplateAvailCount(templateId); + } + @Override public WxCouponCarVo getByCoupon(WxCoupon coupon) { return wxCouponCarMapper.selectCouponCarDetail(coupon); diff --git a/mallinkService/src/main/resources/mapper/WxCouponCarMapper.xml b/mallinkService/src/main/resources/mapper/WxCouponCarMapper.xml index 58c702a52..2dd872c47 100644 --- a/mallinkService/src/main/resources/mapper/WxCouponCarMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCouponCarMapper.xml @@ -75,7 +75,17 @@ + +