From d8150effd61b8c22eea031de7789ecd610435b3b Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期三, 14 八月 2024 10:16:36 +0800 Subject: [PATCH] 小程序扫一扫选择优惠券 --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 57 insertions(+), 2 deletions(-) diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java index 7462917..f2d803e 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java @@ -1,9 +1,12 @@ package com.ruoyi.other.controller; +import com.ruoyi.account.api.dto.GrantCouponDto; import com.ruoyi.account.api.feignClient.AppCouponClient; import com.ruoyi.account.api.query.ExchangeRecordGoodsQuery; +import com.ruoyi.account.api.vo.CouponListVOVO; import com.ruoyi.account.api.vo.ExchangeRecordVO; +import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.other.api.domain.TCoupon; @@ -13,9 +16,18 @@ import com.ruoyi.other.service.TActivityService; import com.ruoyi.other.service.TCouponService; import com.ruoyi.other.service.TGoodsService; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; + +import java.math.BigDecimal; +import java.time.LocalDateTime; +import java.util.List; +import java.util.Objects; /** * <p> @@ -64,13 +76,56 @@ @PostMapping("/exchangeRecord") @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券查看详情-兑换记录") public AjaxResult<PageInfo<ExchangeRecordVO>> exchangeRecord(@RequestBody ExchangeRecordGoodsQuery dto) { - - return AjaxResult.ok(null); + PageInfo<ExchangeRecordVO> data = appCouponClient.getExchangeRecordByCouponId(dto).getData(); + List<ExchangeRecordVO> records = data.getRecords(); + for (ExchangeRecordVO record : records) { + TCoupon byId = tCouponService.getById(record.getCouponId()); + if (byId!=null){ + record.setDiscountAmount("¥"+byId.getDiscountAmount()); + if (Objects.equals(byId.getMeetTheConditions(), BigDecimal.ZERO)){ + record.setMeetTheConditions("无门槛"); + }else{ + record.setMeetTheConditions("满"+byId.getMeetTheConditions()+"元可用"); + } + } + } + return AjaxResult.ok(data); } + @ApiOperation(tags = {"管理后台-优惠券管理"},value = "发放优惠券") + @GetMapping(value = "/grantCoupon") + public AjaxResult grantCoupon(@RequestBody GrantCouponDto dto) { + TCoupon byId = tCouponService.getById(dto.getCouponId()); + Integer waysToObtain = byId.getWaysToObtain(); + dto.setWaysToObtain(waysToObtain); + switch (byId.getValidityPeriodMode()){ + case 1: + dto.setEndTime(byId.getEndTime()); + break; + case 2: + dto.setEndTime(LocalDateTime.now().plusDays(byId.getDays())); + break; + } + appCouponClient.grantCoupon(dto); + return AjaxResult.success(); + } + @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券列表分页查询") @PostMapping(value = "/pageList") public AjaxResult<PageInfo<TCoupon>> pageList(@RequestBody CouponQuery dto) { return AjaxResult.ok(tCouponService.pageList(dto)); } + + /** + * 小程序远程调用 获取优惠券信息 + */ + @PostMapping(value = "/getCouponInfoByCouponIds") + public R<List<CouponListVOVO>> getCouponInfoByCouponIds(@RequestBody List<CouponListVOVO> list) { + for (CouponListVOVO couponListVOVO : list) { + TCoupon byId = tCouponService.getById(couponListVOVO.getCouponId()); + BeanUtils.copyProperties(byId,couponListVOVO); + couponListVOVO.setCouponName(byId.getName()); + } + return R.ok(list); + } } -- Gitblit v1.7.1