From 9486766c806fe1d9e082b2fd02ea1cc558f1b443 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期四, 08 五月 2025 09:21:57 +0800
Subject: [PATCH] bug修改

---
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java |   79 +++++++++++++++++++++++++--------------
 1 files changed, 51 insertions(+), 28 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java
index fd80080..8d60d0d 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TCompetitionController.java
@@ -37,10 +37,7 @@
 import java.text.DateFormat;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -142,7 +139,6 @@
     @RequestMapping("/tCompetition_add")
     public String tCompetitionAdd(Model model) {
         List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
-        model.addAttribute("list",list);
 
         List<TOperator> list1 = tOperatorService.list();
         model.addAttribute("yysList",list1);
@@ -155,13 +151,12 @@
             // 查询这个运营商管理的省
             TOperator id = tOperatorService.getOne(new QueryWrapper<TOperator>().eq("id", UserExt.getUser().getObjectId()));
             if (id.getType()==1){
-                // 全国
-                List<TCity> list3 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
-                model.addAttribute("province",list3);
+
             }else{
                 // 找到他管理的省
                 List<TOperatorCity> list4 = operatorCityService.list(new QueryWrapper<TOperatorCity>().eq("operatorId", UserExt.getUser().getObjectId()).eq("pid", 0));
-                model.addAttribute("province",list4);
+                List<Integer> collect = list4.stream().map(TOperatorCity::getCode).collect(Collectors.toList());
+                 list = cityService.list(new LambdaQueryWrapper<TCity>().in(TCity::getCode, collect));
             }
             model.addAttribute("operator",objectId);
             // 查询当前运营商管理了哪些门店
@@ -175,6 +170,8 @@
         if (UserExt.getUser().getObjectType()==3) model.addAttribute("operator",byId.getOperatorId());
         List<TOperator> list2 = tOperatorService.list();
         model.addAttribute("yysList",list2);
+        model.addAttribute("list",list);
+
         return PREFIX + "TCompetition_add.html";
     }
 
@@ -209,10 +206,39 @@
         model.addAttribute("storeIds",integers);
 
         List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
+
         TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, competition.getProvinceCode()));
         List<TCity> list1 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one.getId()));
 
         List<TStore> list2 = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getCityCode,competition.getCityCode()));
+        if (UserExt.getUser().getObjectType()==2){
+            // 查询这个运营商管理的省
+            TOperator id1 = tOperatorService.getOne(new QueryWrapper<TOperator>().eq("id", UserExt.getUser().getObjectId()));
+            if (id1.getType()==1){
+
+            }else{
+                // 找到他管理的省
+                List<TOperatorCity> list4 = operatorCityService.list(new QueryWrapper<TOperatorCity>().eq("operatorId", UserExt.getUser().getObjectId()).eq("pid", 0));
+                List<Integer> collect = list4.stream().map(TOperatorCity::getCode).collect(Collectors.toList());
+                list = cityService.list(new LambdaQueryWrapper<TCity>().in(TCity::getCode, collect));
+                // 找到他管理的市
+                TOperatorCity one1 = operatorCityService.lambdaQuery().eq(TOperatorCity::getCode, competition.getProvinceCode())
+                        .eq(TOperatorCity::getOperatorId, UserExt.getUser().getObjectId()).one();
+
+                List<TOperatorCity> list3 = operatorCityService.lambdaQuery().eq(TOperatorCity::getPid, one1.getId())
+                        .eq(TOperatorCity::getOperatorId, UserExt.getUser().getObjectId()).list();
+                if (list3.isEmpty()){
+                    // 管理整个市区
+                }else{
+                    List<Integer> collect1 = list3.stream().map(TOperatorCity::getCode).collect(Collectors.toList());
+                    list1 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one.getId())
+                            .in(TCity::getCode, collect1));
+                }
+
+            }
+            list2 = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getCityCode,competition.getCityCode())
+                    .eq(TStore::getOperatorId,UserExt.getUser().getObjectId()));
+        }
         model.addAttribute("list",list);
         model.addAttribute("list1",list1);
         model.addAttribute("list2",list2);
@@ -287,19 +313,6 @@
         Page<Competition> competitions = competitionClient.list(listQuery);
         List<Competition> records = new ArrayList<>();
         for (Competition competition : competitions.getRecords()) {
-//            // 当前时间小于开始时间
-//            if (competition.getStartTime().after(new Date())){
-//                competition.setStatus(1);
-//            }
-//            if (competition.getStartTime().before(new Date())){
-//
-//
-//                if (competition.getEndTime().after(new Date())){
-//                    competition.setStatus(2);
-//                }else{
-//                    competition.setStatus(3);
-//                }
-//            }
             if (competition.getStatus()!=state && state != null){
             }else{
                 records.add(competition);
@@ -327,10 +340,8 @@
     @ResponseBody
     public Object listUser(@PathVariable Integer id,Integer state, Integer offset,Integer limit) {
         try {
-//            Page<Object> page = new PageFactory<>().defaultPage();
-//            Page<CompetitionUser> data =  competitionClient.getPeopleFromId(new GetPeopleQuery(limit,offset,id,state));
-            List <CompetitionUser> data =  competitionClient.getPeopleFromId1(new GetPeopleQuery(limit,offset,id,state));
-            return  data;
+            Page<CompetitionUser> page = competitionClient.getPeopleFromId1(new GetPeopleQuery(limit, offset, id, state));
+            return super.packForBT(page);
         }catch (Exception e){
             e.printStackTrace();
             return ERROR;
@@ -431,11 +442,11 @@
     @ResponseBody
     public Object onChange(Integer oneId) {
         System.out.println("======"+oneId);
-        List<TOperatorCity> list = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>().eq(TOperatorCity::getOperatorId, oneId).eq(TOperatorCity::getType, 2));
+        List<TOperatorCity> list = operatorCityService.list(new LambdaQueryWrapper<TOperatorCity>()
+                .eq(TOperatorCity::getOperatorId, oneId).eq(TOperatorCity::getType, 2));
             if (list.size()!=0){
                 return list;
             }
-
         try {
             TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, oneId));
             return cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one.getId()));
@@ -444,10 +455,22 @@
             return ERROR;
         }
     }
+
+    @RequestMapping(value = "/onChange3")
+    @ResponseBody
+    public Object onChange3(String oneId) {
+        TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, oneId));
+        return cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId,one.getId()));
+    }
     @RequestMapping(value = "/oneChangeNext")
     @ResponseBody
     public Object oneChangeNext(Integer oneId) {
         try {
+            if (UserExt.getUser().getObjectType() == 2){
+                return storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getCityCode, oneId)
+                        .eq(TStore::getOperatorId, UserExt.getUser().getObjectId()));
+
+            }
             return storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getCityCode, oneId));
         }catch (Exception e){
             e.printStackTrace();

--
Gitblit v1.7.1