From 80835bcc12f4788c1a88da61e623b362e57f1cb1 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期六, 24 八月 2024 09:31:43 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile

---
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java |   90 ++++++++++++++++++++++++++++++++-------------
 1 files changed, 64 insertions(+), 26 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 cbcd8b3..17dc6c4 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,6 +1,7 @@
 package com.ruoyi.other.controller;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.ruoyi.account.api.dto.GrantCouponDto;
 import com.ruoyi.account.api.feignClient.AppCouponClient;
 import com.ruoyi.account.api.query.ExchangeRecordGoodsQuery;
@@ -9,25 +10,32 @@
 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.Region;
 import com.ruoyi.other.api.domain.TCoupon;
 import com.ruoyi.other.api.domain.TGoods;
 import com.ruoyi.other.api.dto.GoodsDTO;
 import com.ruoyi.other.query.CouponQuery;
+import com.ruoyi.other.service.IRegionService;
 import com.ruoyi.other.service.TActivityService;
 import com.ruoyi.other.service.TCouponService;
 import com.ruoyi.other.service.TGoodsService;
+import com.ruoyi.system.api.domain.SysUser;
 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.util.StringUtils;
 import org.springframework.web.bind.annotation.*;
 
+import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
+import java.util.Arrays;
 import java.util.List;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -45,24 +53,35 @@
 
     @Autowired
     private AppCouponClient appCouponClient;
+
+
     @PostMapping("/saveGoods")
     @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券添加")
     public AjaxResult saveActivity(@RequestBody TCoupon dto) {
         tCouponService.save(dto);
         return AjaxResult.success();
     }
+
+
+
     @GetMapping("/delete")
     @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券删除")
-    public AjaxResult delete(Integer id) {
-        tCouponService.removeById(id);
+    public AjaxResult delete(String ids) {
+        tCouponService.removeBatchByIds(Arrays.asList(ids.split(",")));
         return AjaxResult.success();
     }
+
+
+
     @PostMapping("/updateVip")
     @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券修改")
     public AjaxResult updateActivity(@RequestBody TCoupon dto) {
         tCouponService.updateById(dto);
         return AjaxResult.success();
     }
+
+
+
     @GetMapping("/getInfo")
     @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券查看详情")
     public AjaxResult<TCoupon> getInfo(Integer id) {
@@ -73,6 +92,9 @@
         byId.setUseCount(appCouponClient.getUseCountByCouponId(id).getData());
         return AjaxResult.ok(byId);
     }
+
+
+
     @PostMapping("/exchangeRecord")
     @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券查看详情-兑换记录")
     public AjaxResult<PageInfo<ExchangeRecordVO>> exchangeRecord(@RequestBody ExchangeRecordGoodsQuery dto) {
@@ -87,12 +109,18 @@
                 }else{
                     record.setMeetTheConditions("满"+byId.getMeetTheConditions()+"元可用");
                 }
+                record.setCoverPicture(byId.getCoverPicture());
+                record.setDetailsPicture(byId.getDetailsPicture());
             }
         }
         return AjaxResult.ok(data);
     }
+
+
+    @Autowired
+    private IRegionService regionService;
     @ApiOperation(tags = {"管理后台-优惠券管理"},value = "发放优惠券")
-    @GetMapping(value = "/grantCoupon")
+    @PostMapping(value = "/grantCoupon")
     public AjaxResult grantCoupon(@RequestBody GrantCouponDto dto) {
         TCoupon byId = tCouponService.getById(dto.getCouponId());
         Integer waysToObtain = byId.getWaysToObtain();
@@ -104,6 +132,27 @@
             case 2:
                 dto.setEndTime(LocalDateTime.now().plusDays(byId.getDays()));
                 break;
+        }
+        if (StringUtils.hasLength(dto.getProvinceCode())){
+            for (String s : dto.getProvinceCode().split(",")) {
+                Region code = regionService.getOne(new QueryWrapper<Region>()
+                        .eq("code", s));
+                List<String> collect = regionService.list(new QueryWrapper<Region>()
+                        .eq("parent_id", code.getId())).stream().map(Region::getCode).collect(Collectors.toList());
+                StringBuilder temp = new StringBuilder();
+                for (String string : collect) {
+                    temp.append(string).append(",");
+                }
+                if (StringUtils.hasLength(dto.getCityCode())){
+                    String s1 = dto.getCityCode() + "," + temp;
+                    // 去除最后一位字符
+                    dto.setCityCode(s1.substring(0, s1.length() - 1));
+                }else{
+                    String substring = temp.substring(0, temp.length() - 1);
+                    dto.setCityCode(substring);
+                }
+            }
+
         }
         appCouponClient.grantCoupon(dto);
         return AjaxResult.success();
@@ -124,31 +173,20 @@
             TCoupon byId = tCouponService.getById(couponListVOVO.getCouponId());
             BeanUtils.copyProperties(byId,couponListVOVO);
             couponListVOVO.setCouponName(byId.getName());
-            // 根据预付金额 判断是否满足
-            if (byId.getMeetTheConditions().compareTo(BigDecimal.ZERO) == 0){
-                // 无门槛
-                couponListVOVO.setIsUse(1);
-            }else if (couponListVOVO.getPayMoney().compareTo(byId.getMeetTheConditions()) < 0){
-                couponListVOVO.setIsUse(0);
-            }else{
-                couponListVOVO.setIsUse(1);
-            }
-            // 根据优惠券类型和预付金额 判断哪一个优惠券减免的金额最大 将其排在第一位
-            if (couponListVOVO.getIsUse() == 1){
-                switch (byId.getPreferentialMode()){
-                    case 1:
-                            couponListVOVO.setMoney(byId.getDiscountAmount());
-                        break;
-                    case 2:
-                        
-                        break;
-                }
-            }else{
-                couponListVOVO.setMoney(BigDecimal.ZERO);
-            }
-
         }
         return R.ok(list);
     }
+
+    /**
+     * 根据id获取优惠券信息
+     * @param id
+     * @return
+     */
+    @PostMapping(value = "/getCouponById1/{id}")
+    public R<TCoupon> getCouponById1(@PathVariable(value = "id") Integer id){
+        TCoupon coupon = tCouponService.getById(id);
+        return R.ok(coupon);
+    }
+
 }
 

--
Gitblit v1.7.1