From 5bb359883bda6f15b6a6937a2c17ac9bbc67ab8e Mon Sep 17 00:00:00 2001 From: cloudroam <cloudroam> Date: 星期日, 22 九月 2024 17:17:24 +0800 Subject: [PATCH] add:会员成长值规则 --- src/main/java/com/mzl/flower/web/v2/coupon/CouponTemplateVipController.java | 49 +++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 45 insertions(+), 4 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 0a203aa..fe543b1 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 @@ -10,9 +10,11 @@ import com.mzl.flower.dto.response.coupon.CouponTemplateVO; import com.mzl.flower.dto.response.coupon.CouponTemplateVipVO; import com.mzl.flower.entity.coupon.CouponTemplateDO; +import com.mzl.flower.entity.menber.Member; import com.mzl.flower.enums.CouponCategoryEnum; import com.mzl.flower.enums.CouponTypeEnum; import com.mzl.flower.service.coupon.CouponTemplateService2; +import com.mzl.flower.service.menber.MemberService; import com.mzl.flower.utils.ConverterUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -38,6 +40,9 @@ @Autowired CouponTemplateService2 couponTemplateService; + @Autowired + MemberService memberService; + @PostMapping("") @ApiOperation(value = "新增", notes = "新增") public ResponseEntity<ReturnDataDTO> create(@Validated @RequestBody CreateCouponTemplateVipDTO dto) { @@ -48,7 +53,7 @@ CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO(); BeanUtils.copyProperties(dto, couponTemplateBO); - // 设置成积分优惠券 + // 设置成会员优惠券 couponTemplateBO.setCategory(CouponCategoryEnum.MEMBER.getStatus()); couponTemplateService.createCouponTemplate(couponTemplateBO); @@ -58,8 +63,9 @@ @PutMapping("/{id}") @ApiOperation(value = "修改", notes = "修改") - public ResponseEntity<ReturnDataDTO> update(@Validated @RequestBody CreateCouponTemplateVipDTO dto) { + public ResponseEntity<ReturnDataDTO> update(@PathVariable String id,@Validated @RequestBody CreateCouponTemplateVipDTO dto) { + dto.setId(id); // 信息验证 valid(dto); @@ -69,9 +75,10 @@ } CreateCouponTemplateBO couponTemplateBO = new CreateCouponTemplateBO(); + BeanUtils.copyProperties(couponTemplateDO,couponTemplateBO); BeanUtils.copyProperties(dto, couponTemplateBO); - // 设置成积分优惠券 + // 设置成会员优惠券 couponTemplateBO.setCategory(CouponCategoryEnum.MEMBER.getStatus()); couponTemplateService.updateCouponTemplate(couponTemplateBO); @@ -103,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)); @@ -118,9 +125,43 @@ 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){ + final Member member = memberService.getById(dto.getMemberId()); + + if(null==member){ + throw new ValidationException("会员等级不存在"); + } + if (StringUtils.isNotBlank(dto.getCouponDiscountType()) && dto.getCouponDiscountType().equals(CouponTypeEnum.DISCOUNT.getType()) && dto.getMinOrderAmount().compareTo(dto.getCouponDiscountValue()) < 0) { -- Gitblit v1.9.3