huliguo
2 天以前 8115295a64e0809246897fefb8c45de06dce0799
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java
@@ -13,6 +13,8 @@
import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
import com.ruoyi.common.log.enums.OperatorType;
import com.ruoyi.common.security.annotation.Logical;
import com.ruoyi.common.security.annotation.RequiresPermissions;
import com.ruoyi.other.api.domain.Region;
import com.ruoyi.other.api.domain.TCoupon;
import com.ruoyi.other.api.domain.TGoods;
@@ -35,6 +37,7 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
@@ -56,6 +59,14 @@
    @Autowired
    private AppCouponClient appCouponClient;
    @Autowired
    private IRegionService regionService;
    /**
     * 远程调用 根据名称 查询优惠券ids
@@ -67,6 +78,9 @@
                .eq("name", name)).stream().map(TCoupon::getId).collect(Collectors.toList());
        return R.ok(collect);
    }
    @RequiresPermissions(value = {"/coupon/add"}, logical = Logical.OR)
    @PostMapping("/saveGoods")
    @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券添加")
    @Log(title = "【优惠券管理】添加优惠券", businessType = BusinessType.INSERT,operatorType = OperatorType.MANAGE)
@@ -74,9 +88,9 @@
        tCouponService.save(dto);
        return AjaxResult.success();
    }
    @RequiresPermissions(value = {"/coupon/del"}, logical = Logical.OR)
    @GetMapping("/delete")
    @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券删除")
    @Log(title = "【优惠券管理】删除优惠券", businessType = BusinessType.DELETE,operatorType = OperatorType.MANAGE)
@@ -84,9 +98,9 @@
        tCouponService.removeBatchByIds(Arrays.asList(ids.split(",")));
        return AjaxResult.success();
    }
    @RequiresPermissions(value = {"/coupon/update"}, logical = Logical.OR)
    @PostMapping("/updateVip")
    @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券修改")
    @Log(title = "【优惠券管理】修改优惠券", businessType = BusinessType.UPDATE,operatorType = OperatorType.MANAGE)
@@ -94,9 +108,9 @@
        tCouponService.updateById(dto);
        return AjaxResult.success();
    }
    @RequiresPermissions(value = {"/coupon/select"}, logical = Logical.OR)
    @GetMapping("/getInfo")
    @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券查看详情")
    public AjaxResult<TCoupon> getInfo(Integer id) {
@@ -107,17 +121,22 @@
        byId.setUseCount(appCouponClient.getUseCountByCouponId(id).getData());
        return AjaxResult.ok(byId);
    }
    @RequiresPermissions(value = {"/coupon/select"}, logical = Logical.OR)
    @PostMapping("/exchangeRecord")
    @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券查看详情-兑换记录")
    public AjaxResult<List<ExchangeRecordVO>> exchangeRecord(@RequestBody ExchangeRecordGoodsQuery dto) {
    public AjaxResult<PageInfo<ExchangeRecordVO>> exchangeRecord(@RequestBody ExchangeRecordGoodsQuery dto) {
        List<ExchangeRecordVO> data = appCouponClient.getExchangeRecordByCouponId(dto).getData();
        for (ExchangeRecordVO record : data) {
            TCoupon byId = tCouponService.getById(record.getCouponId());
            if (byId!=null){
                if (byId.getDiscountAmount()!=null){
                    record.setDiscountAmount("¥"+byId.getDiscountAmount());
                }else{
                    record.setDiscountAmount("¥"+byId.getMaximumDiscountAmount());
                }
                if (Objects.equals(byId.getMeetTheConditions(), BigDecimal.ZERO)){
                    record.setMeetTheConditions("无门槛");
                }else{
@@ -129,12 +148,12 @@
        }
        PageInfo<ExchangeRecordVO> exchangeRecordVOPageInfo = new PageInfo<>(1, 99999999);
        exchangeRecordVOPageInfo.setRecords(data);
        return AjaxResult.ok(data);
        return AjaxResult.ok(exchangeRecordVOPageInfo);
    }
    @Autowired
    private IRegionService regionService;
    @RequiresPermissions(value = {"/coupon/send"}, logical = Logical.OR)
    @ApiOperation(tags = {"管理后台-优惠券管理"},value = "发放优惠券")
    @PostMapping(value = "/grantCoupon")
    @Log(title = "【优惠券管理】发放优惠券", businessType = BusinessType.OTHER,operatorType = OperatorType.MANAGE)
@@ -174,12 +193,35 @@
        appCouponClient.grantCoupon(dto);
        return AjaxResult.success();
    }
    @RequiresPermissions(value = {"/coupon"}, logical = Logical.OR)
    @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券列表分页查询")
    @PostMapping(value = "/pageList")
    public AjaxResult<PageInfo<TCoupon>> pageList(@RequestBody CouponQuery dto) {
        return AjaxResult.ok(tCouponService.pageList(dto));
    }
    @RequiresPermissions(value = {"/vipSetting/list"}, logical = Logical.OR)
    @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券列表分页查询")
    @PostMapping(value = "/pageList3")
    public AjaxResult<List<TCoupon>> pageList() {
        List<TCoupon> tCoupons = new ArrayList<>();
        List<TCoupon> list = tCouponService.lambdaQuery().eq(TCoupon::getStatus, 1)
                .orderByDesc(TCoupon::getCreateTime).list();
        for (TCoupon tCoupon : list) {
            if (tCoupon.getValidityPeriodMode()==1){
                if (LocalDateTime.now().isBefore(tCoupon.getEndTime())){
                    tCoupons.add(tCoupon);
                }
            }else{
                tCoupons.add(tCoupon);
            }
        }
        return AjaxResult.ok(tCoupons);
    }
    /**
     * 小程序远程调用 获取优惠券信息