From b97afc77d2ec07865aa98ccd203149fa5e0cd5d0 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 22 八月 2024 10:27:32 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TCouponController.java |   35 +++++++++++++++++++++++++++++------
 1 files changed, 29 insertions(+), 6 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 08f6eae..1f3fdde 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,10 +10,12 @@
 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;
@@ -23,6 +26,7 @@
 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;
@@ -31,6 +35,7 @@
 import java.util.Arrays;
 import java.util.List;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -112,7 +117,8 @@
     }
 
 
-
+    @Autowired
+    private IRegionService regionService;
     @ApiOperation(tags = {"管理后台-优惠券管理"},value = "发放优惠券")
     @GetMapping(value = "/grantCoupon")
     public AjaxResult grantCoupon(@RequestBody GrantCouponDto dto) {
@@ -127,18 +133,36 @@
                 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();
     }
-
-
 
     @ApiOperation(tags = {"管理后台-优惠券管理"},value = "优惠券列表分页查询")
     @PostMapping(value = "/pageList")
     public AjaxResult<PageInfo<TCoupon>> pageList(@RequestBody CouponQuery dto) {
         return AjaxResult.ok(tCouponService.pageList(dto));
     }
-
 
     /**
      * 小程序远程调用 获取优惠券信息
@@ -153,8 +177,6 @@
         return R.ok(list);
     }
 
-    
-    
     /**
      * 根据id获取优惠券信息
      * @param id
@@ -165,5 +187,6 @@
         TCoupon coupon = tCouponService.getById(id);
         return R.ok(coupon);
     }
+
 }
 

--
Gitblit v1.7.1