From f727a93931f801bbcd3b5eb0275169cf55a87d5e Mon Sep 17 00:00:00 2001 From: 陶杰 <1378534974@qq.com> Date: 星期日, 22 九月 2024 22:40:56 +0800 Subject: [PATCH] 1.优惠券-使用条件-根据满减还是无门槛控制 2.商品限购-根据payment_time来控制 --- src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java | 49 ++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 42 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java index be32580..1af24f4 100644 --- a/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java +++ b/src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java @@ -53,7 +53,7 @@ CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO(); BeanUtils.copyProperties(dto, couponTemplateBO); - // 设置成积分优惠券 + // 设置成会员优惠券 couponTemplateBO.setCategory(CouponCategoryEnum.MEMBER.getStatus()); couponTemplateService.createCouponTemplate(couponTemplateBO); @@ -75,9 +75,10 @@ } CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO(); + BeanUtils.copyProperties(couponTemplateDO,couponTemplateBO); BeanUtils.copyProperties(dto, couponTemplateBO); - // 设置成积分优惠券 + // 设置成会员优惠券 couponTemplateBO.setCategory(CouponCategoryEnum.MEMBER.getStatus()); couponTemplateService.updateCouponTemplate(couponTemplateBO); @@ -109,7 +110,7 @@ public ResponseEntity<ReturnDataDTO<Page<CouponTemplateVipVO>>> page( Page page, QueryCouponDTO dto ) { - // 设置只查询积分优惠券的 + // 设置只查询会员优惠券的 dto.setCategory(CouponCategoryEnum.MEMBER.getStatus()); Page<CouponTemplateVO> resultPage = couponTemplateService.getPage(page, dto); return returnData(R.SUCCESS.getCode(), ConverterUtil.transPage(resultPage, CouponTemplateVipVO.class)); @@ -124,6 +125,34 @@ return returnData(R.SUCCESS.getCode(), ConverterUtil.transList(couponTemplateService.getList(dto), CouponTemplateVipVO.class)); } + @PutMapping("/active/{id}") + @ApiOperation(value = "发布", notes = "发布") + public ResponseEntity<ReturnDataDTO> active(@PathVariable String id) { + + CouponTemplateDO couponTemplateDO = couponTemplateService.getById(id); + if (null == couponTemplateDO) { + throw new ValidationException("优惠券不存在"); + } + + couponTemplateService.activeCouponTemplate(id); + + return returnData(R.SUCCESS.getCode(), null); + } + + @PutMapping("/expire/{id}") + @ApiOperation(value = "下架", notes = "下架") + public ResponseEntity<ReturnDataDTO> expire(@PathVariable String id) { + + CouponTemplateDO couponTemplateDO = couponTemplateService.getById(id); + if (null == couponTemplateDO) { + throw new ValidationException("优惠券不存在"); + } + + couponTemplateService.expireCouponTemplate(id); + + return returnData(R.SUCCESS.getCode(), null); + } + private void valid(CreateCouponTemplateVipDTO dto){ @@ -133,11 +162,17 @@ throw new ValidationException("会员等级不存在"); } - if (StringUtils.isNotBlank(dto.getCouponDiscountType()) - && dto.getCouponDiscountType().equals(CouponTypeEnum.DISCOUNT.getType()) - && dto.getMinOrderAmount().compareTo(dto.getCouponDiscountValue()) < 0) { - throw new ValidationException("订单金额不能小于折扣金额"); + if (StringUtils.isNotBlank(dto.getCouponDiscountType()) && dto.getCouponDiscountType().equals(CouponTypeEnum.DISCOUNT.getType())) { + + if(dto.getMinOrderAmount().compareTo(BigDecimal.ZERO)<=0){ + throw new ValidationException("优惠券使用条件不能小于0"); + } + if(dto.getMinOrderAmount().compareTo(dto.getCouponDiscountValue()) < 0){ + throw new ValidationException("优惠券使用条件不能小于面值金额"); + } + } + if (StringUtils.isNotBlank(dto.getCouponDiscountType()) && dto.getCouponDiscountType().equals(CouponTypeEnum.DISCOUNT.getType()) && dto.getCouponDiscountValue().compareTo(BigDecimal.ZERO) <= 0) { -- Gitblit v1.9.3