From eb6b6dbb35a9f029e0b7d269773685c19fd40976 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 11 七月 2024 10:47:51 +0800
Subject: [PATCH] 玩湃微信商户认证代码

---
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java |  181 +++++++++++++++++++++++++++++++++++----------
 1 files changed, 140 insertions(+), 41 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java
index bf6aacd..d632d4f 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCouponController.java
@@ -3,6 +3,7 @@
 
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.dsh.course.feignClient.account.AppUserClient;
 import com.dsh.course.feignClient.account.CityManagerClient;
@@ -18,12 +19,10 @@
 import com.dsh.guns.core.base.tips.SuccessTip;
 import com.dsh.guns.core.common.constant.factory.PageFactory;
 import com.dsh.guns.core.util.ToolUtil;
-import com.dsh.guns.modular.system.model.CouponDataVo;
-import com.dsh.guns.modular.system.model.Region;
-import com.dsh.guns.modular.system.model.TStore;
-import com.dsh.guns.modular.system.service.IRegionService;
-import com.dsh.guns.modular.system.service.IStoreService;
+import com.dsh.guns.modular.system.model.*;
+import com.dsh.guns.modular.system.service.*;
 import com.dsh.guns.modular.system.util.OBSUploadUtil;
+import com.dsh.guns.modular.system.util.OssUploadUtil;
 import com.dsh.guns.modular.system.util.ResultUtil;
 import org.apache.commons.beanutils.ConvertUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -47,10 +46,7 @@
 @RequestMapping("/tCouponManage")
 public class TCouponController {
 
-
-
     private String PREFIX = "/system/tCoupon/";
-
 
     @Resource
     private IRegionService regiService;
@@ -66,14 +62,19 @@
 
     @Autowired
     private AppUserClient appUserClient;
-
-
+    @Autowired
+    private IUserService userService;
+    @Autowired
+    private TOperatorService operatorService;
+    @Autowired
+    private TOperatorCityService operatorCityService;
 
     /**
      * 跳转到优惠券管理首页
      */
     @RequestMapping("")
     public String index(Model model) {
+        model.addAttribute("objectType",UserExt.getUser().getObjectType());
         return PREFIX + "TCoupon.html";
     }
 
@@ -85,9 +86,8 @@
         Integer objectType = UserExt.getUser().getObjectType();
         System.out.println(objectType);
         model.addAttribute("userType",objectType);
-        return PREFIX + "TQuestionAdd.html";
+        return PREFIX + "TCouponAdd.html";
     }
-
 
     @RequestMapping("/coupon_record/{id}")
     public String memberCouponAdd(@PathVariable Integer id,Model model) {
@@ -97,8 +97,6 @@
         model.addAttribute("type",coupon.getType());
         return PREFIX + "TCouponRecord.html";
     }
-
-
 
     @RequestMapping("/coupon_detail/{id}")
     public String memberCouponDetail(@PathVariable Integer id,Model model) {
@@ -125,16 +123,29 @@
             list = client.queryCity(coupon.getId());
         }
         if(coupon.getUseScope()==3){
+            // 门店ids
             list1 = client.queryStore(coupon.getId());
+            // 门店集合
             list2 = storeService.list(new LambdaQueryWrapper<TStore>().in(TStore::getId, list1));
             for (TStore tStore : list2) {
-                CityManager cityManager = cmgrClient.queryCityManagerById(tStore.getCityManagerId());
-                if (ToolUtil.isNotEmpty(cityManager)){
-                    tStore.setProvince(tStore.getProvince()+tStore.getCity());
-                    tStore.setPhone(cityManager.getName()+"-"+cityManager.getPhone());
+                if (coupon.getPublisherType() == 1){
+                    // 获取运营商id
+                    Integer operatorId = tStore.getOperatorId();
+                    TOperator operator = operatorService.getById(operatorId);
+                    User user = userService.getById(operator.getUserId());
+                    if (ToolUtil.isNotEmpty(user)){
+                        tStore.setProvince(tStore.getProvince()+tStore.getCity());
+                        tStore.setPhone(user.getName()+"-"+user.getPhone());
+                    }
+                }
+                if (coupon.getPublisherType() == 2) {
+                    User byId = userService.getById(tStore.getStoreStaffId());
+
+                    tStore.setProvince(tStore.getProvince() + tStore.getCity());
+                        tStore.setPhone(byId.getName() + "-" + byId.getPhone());
+
                 }
             }
-
         }
         model.addAttribute("city",list);
         model.addAttribute("store",list2);
@@ -153,6 +164,7 @@
         Integer objectType = UserExt.getUser().getObjectType();
         System.out.println(objectType);
         model.addAttribute("item",coupon);
+        model.addAttribute("objectType",objectType);
         return PREFIX + "TCouponInfo.html";
     }
 
@@ -163,7 +175,7 @@
      */
     @RequestMapping("/storeList")
     public String storePage(Model model) {
-        return PREFIX + "TQuestionEdit.html";
+        return PREFIX + "TStoreList.html";
     }
     @RequestMapping("/updateType")
     @ResponseBody
@@ -174,33 +186,35 @@
 
     @RequestMapping("/storeDetailsOfSearch")
     @ResponseBody
-    public Object listOfStore(Integer provinceId,Integer cityId,Integer cityManagerId,String storeName){
-        System.out.println("provinceId"+provinceId);
-        System.out.println("cityId"+cityId);
-        System.out.println("cityManagerId"+cityManagerId);
-        System.out.println("storeName"+storeName);
-        String provinceCode = null;
-        String cityCode = null;
-        if (ToolUtil.isNotEmpty(provinceId)){
-            Region provinceRegion = regiService.getById(provinceId);
-            provinceCode = provinceRegion.getCode();
-        }
-        if (ToolUtil.isNotEmpty(cityId)){
-            Region cityRegion = regiService.getById(cityId);
-            cityCode = cityRegion.getCode();
+    public Object listOfStore(String provinceId,String cityId,Integer operatorId,String storeName){
+        if (UserExt.getUser().getObjectType()== 2){
+            // 筛选这个运营商下的门店
+            operatorId = UserExt.getUser().getObjectId();
         }
         Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
-        List<Map<String,Object>> storeList = storeService.queryListOfpage(provinceCode,cityCode,cityManagerId,storeName,page);
+        List<Map<String,Object>> storeList = storeService.queryListOfpage(provinceId,cityId,operatorId,storeName,page);
         if (storeList.size() > 0 ){
             for (Map<String, Object> stringObjectMap : storeList) {
                 String provinceName = (String) stringObjectMap.get("province");
                 String cityName = (String) stringObjectMap.get("city");
                 stringObjectMap.put("provinceCity",provinceName+cityName);
-                Integer managerId = (Integer) stringObjectMap.get("cityManagerId");
-                CityManager cityManager = cmgrClient.queryCityManagerById(managerId);
-                if (ToolUtil.isNotEmpty(cityManager)){
-                    stringObjectMap.put("accountName",cityManager.getName()+"+"+cityManager.getPhone());
+                Integer managerId = (Integer) stringObjectMap.get("operatorId");
+                if (managerId == null){
+                    stringObjectMap.put("accountName","平台");
+                }else{
+                    if (managerId==0){
+                        stringObjectMap.put("accountName","平台");
+                    }else{
+                        TOperator operator = operatorService.getOne(new QueryWrapper<TOperator>().eq("id", managerId));
+                        if (ToolUtil.isNotEmpty(operator)){
+                            stringObjectMap.put("accountName",operator.getName());
+                        }else{
+                            stringObjectMap.put("accountName","平台");
+                        }
+                    }
                 }
+
+
             }
         }
         return storeList;
@@ -221,8 +235,55 @@
         ofSearch.setUserPopulation(userPopulation);
         ofSearch.setStatus(status);
         ofSearch.setState(state);
-        return client.getCouponListOfSearch(ofSearch);
+        if (UserExt.getUser().getObjectType()==2) {
+            // 门店ids
+            List<Integer> storeIds = storeService.list(new QueryWrapper<TStore>().eq("operatorId", UserExt.getUser().getObjectId()))
+                    .stream().map(TStore::getId).collect(Collectors.toList());
+            ofSearch.setStoreIds(storeIds);
+            ofSearch.setObjType(UserExt.getUser().getObjectType());
+            ofSearch.setOperatorId(UserExt.getUser().getObjectId());
+            // 查询当前门店属于哪个运营商
+            List<TOperatorCity> operatorId = operatorCityService.list(new QueryWrapper<TOperatorCity>().eq("operatorId", UserExt.getUser().getObjectId()));
+            ofSearch.setOperatorCities(operatorId);
+        }
+        if (UserExt.getUser().getObjectType()==3) {
+            ofSearch.setStoreId(UserExt.getUser().getObjectId());
+            ofSearch.setObjType(UserExt.getUser().getObjectType());
+        }
+        // 运营商可以查看平台添加的优惠券应只展示使用范围为全国通用、
+        // 指定城市有运营商管辖的、指定门店有运营商旗下门店
+        List<Map<String, Object>> couponListOfSearch = client.getCouponListOfSearch(ofSearch);
+
+        return couponListOfSearch;
     }
+    /**
+     * 根据运营商ID 获取运营商管理的省市
+     */
+
+    /**
+     * 获取 优惠券管理
+     */
+    @RequestMapping(value = "/list1")
+    @ResponseBody
+    public Object listOfDatas1(String name, Integer type, Integer distributionMethod , Integer userPopulation, Integer status, Integer state,String cityCode,Integer storeId) {
+        Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
+        CouponListOfSearch ofSearch = new CouponListOfSearch();
+        ofSearch.setPage(page);
+        ofSearch.setName(name);
+        ofSearch.setType(type);
+        ofSearch.setDistributionMethod(distributionMethod);
+        ofSearch.setUserPopulation(userPopulation);
+        ofSearch.setStatus(status);
+        ofSearch.setState(state);
+        ofSearch.setCityCode(cityCode);
+        ofSearch.setStoreId(storeId);
+        ofSearch.setObjType(UserExt.getUser().getObjectType());
+        ofSearch.setOperatorId(UserExt.getUser().getObjectId());
+        return client.getCouponListOfSearch1(ofSearch);
+    }
+
+
+
     @RequestMapping(value = "/listRecord")
     @ResponseBody
     public Object listRecord(Integer id,String name, Integer type, String phone) {
@@ -273,6 +334,26 @@
         return regiService.list(new LambdaQueryWrapper<Region>()
                 .eq(Region::getParentId,province));
     }
+    @RequestMapping(value = "/getCity1")
+    @ResponseBody
+    public Object getCity1(String province){
+        // 获取省的id
+        Integer code = regiService.getOne(new QueryWrapper<Region>().eq("code", province)).getId();
+        return regiService.list(new LambdaQueryWrapper<Region>()
+                .eq(Region::getParentId,code));
+    }
+    // 通过市 获取运营商
+    @RequestMapping(value = "/getOperator")
+    @ResponseBody
+    public Object getOperator(String city){
+        List<TOperatorCity> name = operatorCityService.list(new QueryWrapper<TOperatorCity>().eq("name", city));
+        List<Integer> collect = name.stream().map(TOperatorCity::getOperatorId)
+                .collect(Collectors.toList());
+        if (collect.size()==0){
+            return new ArrayList<>();
+        }
+        return operatorService.list(new QueryWrapper<TOperator>().in("id",collect));
+    }
 
     @RequestMapping(value = "/uploadPic")
     @ResponseBody
@@ -280,7 +361,7 @@
         if (imgFile != null){
         String originalFilename = imgFile.getOriginalFilename();
         String newName = originalFilename.substring(imgFile.getOriginalFilename().lastIndexOf("."));
-        String url = OBSUploadUtil.inputStreamUpload(imgFile);
+        String url = OssUploadUtil.ossUpload("img/",imgFile);
         Map<String, String> map = new HashMap<String, String>();
         //是否上传成功
         map.put("state", "SUCCESS");
@@ -309,9 +390,24 @@
         System.out.println(dataVo);
         Integer objectType = UserExt.getUser().getObjectType();
         dataVo.setUserType(objectType);
+        dataVo.setCityManagerId(UserExt.getUser().getObjectId());
+        if(UserExt.getUser().getObjectType()==2){
+            dataVo.setCompany(3);
+            dataVo.setUserType(2);
+            dataVo.setCityManagerId(UserExt.getUser().getObjectId());
+        }else if(UserExt.getUser().getObjectType()==3){
+            dataVo.setStoreIds(UserExt.getUser().getObjectId().toString());
+            dataVo.setCompany(3);
+            dataVo.setUserType(3);
+        }else{
+            dataVo.setUserType(1);
+        }
+        dataVo.setObjType(UserExt.getUser().getObjectType());
         client.insertIntoData(dataVo);
         return new SuccessTip<>();
     }
+
+
     @PostMapping(value = "/update")
     @ResponseBody
     public Object update( Integer id,Integer num,Integer num1,String text){
@@ -319,6 +415,9 @@
         coupon.setQuantityIssued(num);
         coupon.setPickUpQuantity(num1);
         coupon.setIllustrate(text);
+        if (UserExt.getUser().getObjectType()==3) {
+            coupon.setAuditStatus(1);
+        }
         client.updateCouponData(coupon);
         return new SuccessTip<>();
     }

--
Gitblit v1.7.1