From 3f45e8fdfa31d7b764d60a7c0cb5dd11944ed418 Mon Sep 17 00:00:00 2001
From: 刘帅 <rr.iii@qq.com>
Date: 星期一, 21 九月 2026 23:38:59 +0800
Subject: [PATCH] bug:统计数据修正

---
 cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java |   84 +++++++++++++++++++++++++-----------------
 1 files changed, 50 insertions(+), 34 deletions(-)

diff --git a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java
index 74d03b6..11dfa6a 100644
--- a/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java
+++ b/cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/system/TStudentController.java
@@ -9,6 +9,8 @@
 import com.dsh.course.feignClient.account.AppUserClient;
 import com.dsh.course.feignClient.account.StudentClient;
 import com.dsh.course.feignClient.account.model.TAppUser;
+import com.dsh.course.feignClient.communityWorldCup.Model.StoreIds;
+import com.dsh.course.feignClient.communityWorldCup.WorldCupClient;
 import com.dsh.course.feignClient.competition.CompetitionClient;
 import com.dsh.course.feignClient.competition.model.ListQuery;
 import com.dsh.course.feignClient.course.CoursePackageClient;
@@ -31,6 +33,7 @@
 import com.dsh.guns.modular.system.util.BigDecimalToChineseAmountUtil;
 import com.dsh.guns.modular.system.util.ResultUtil;
 import io.swagger.models.auth.In;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.ibatis.annotations.Param;
 import org.bouncycastle.math.raw.Mod;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -135,6 +138,7 @@
     public String index(Model model) {
         Integer objectType = UserExt.getUser().getObjectType();
         model.addAttribute("objectType",objectType);
+        model.addAttribute("isSuperAdmin", "admin".equalsIgnoreCase(UserExt.getUser().getAccount()));
         List<TCity> list = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
         model.addAttribute("list",list);
         return PREFIX + "tStudent.html";
@@ -329,17 +333,6 @@
 
         model.addAttribute("item", tStudentDto);
         if (tStudentDto.getLateralSurface()!=null&&!tStudentDto.equals("")) {
-//            String[] pics = tStudentDto.getLateralSurface().split(";");
-//            model.addAttribute("pic1", pics[0]);
-//            System.out.println("=====pic1==" + pics[0]);
-//            if (pics.length > 1) {
-//                model.addAttribute("pic2", pics[1]);
-//                System.out.println("=====pic2==" + pics[1]);
-//            }
-//            if (pics.length > 2) {
-//                model.addAttribute("pic3", pics[2]);
-//                System.out.println("=====pic3==" + pics[2]);
-//            }
             model.addAttribute("images",tStudentDto.getLateralSurface());
         }
 
@@ -359,7 +352,6 @@
             model.addAttribute("back",false);
         }else {
             model.addAttribute("back",true);
-
         }
 
         return PREFIX + "tStudentEdit.html";
@@ -401,6 +393,8 @@
     private ISiteBookingService siteBookingService;
     @Autowired
     private BallClient ballClient;
+    @Autowired
+    private WorldCupClient worldCupClient;
     /**
      * 获取列表
      */
@@ -410,11 +404,39 @@
         List<Integer> ids = new ArrayList<>();
 
         if(UserExt.getUser().getObjectType()==3){
+            List<Integer> storeIds = new ArrayList<>();
+            storeIds.add(UserExt.getUser().getObjectId());
+            ListQuery listQuery = new ListQuery();
+            listQuery.setIds(storeIds);
+            // 赛事
+            List<Integer> list = competitionClient.getUserIds(listQuery);
+            // 获取场地预约记录 拿到用户ids
+            List<Integer> siteUsers = siteBookingService.list(new QueryWrapper<SiteBooking>().in("storeId", storeIds))
+                    .stream().map(SiteBooking::getAppUserId).collect(Collectors.toList());
+            // 获取课程购买记录 拿到用户ids
+            List<Integer> cpUsers = coursePackageClient.getCoursePackageByStoreIds(storeIds);
+            // 获取游戏记录 拿到用户ids
+            List<Integer> gameUsers = ballClient.getGameByStoreIds(storeIds);
+            // 世界杯参与记录 拿到用户ids
+            StoreIds req = new StoreIds();
+            req.setStoreIds(storeIds);
+            List<Integer> studentIds = worldCupClient.getStudentIds(req);
+            // 用户ids
+            List<Integer> users = new ArrayList<>();
+            users.addAll(list);
+            users.addAll(siteUsers);
+            users.addAll(cpUsers);
+            users.addAll(gameUsers);
+            users.addAll(studentIds);
+            // 去重后的用户id
+            List<Integer> collect = users.stream().distinct().collect(Collectors.toList());
             ids = appUserClient.getUserStore(UserExt.getUser().getObjectId());
+            ids.addAll(collect);
+            List<Integer> collect1 = ids.stream().distinct().collect(Collectors.toList());
             if(ids.size()==0){
                 ids.add(-1);
             }
-            search.setIds(ids);
+            search.setIds(collect1);
         }
         if(UserExt.getUser().getObjectType()==2){
             // 获取运营商下的所有门店id集合
@@ -434,12 +456,17 @@
             List<Integer> cpUsers = coursePackageClient.getCoursePackageByStoreIds(storeIds);
             // 获取游戏记录 拿到用户ids
             List<Integer> gameUsers = ballClient.getGameByStoreIds(storeIds);
+            // 世界杯参与记录 拿到学员ids
+            StoreIds req = new StoreIds();
+            req.setStoreIds(storeIds);
+            List<Integer> studentIds = worldCupClient.getStudentIds(req);
             // 用户ids
             List<Integer> users = new ArrayList<>();
             users.addAll(list);
             users.addAll(siteUsers);
             users.addAll(cpUsers);
             users.addAll(gameUsers);
+            users.addAll(studentIds);
             // 去重后的用户id
             List<Integer> collect = users.stream().distinct().collect(Collectors.toList());
             ids = appUserClient.getUserYYs(UserExt.getUser().getObjectId());
@@ -468,9 +495,7 @@
     @RequestMapping("/listcom/{id}")
     @ResponseBody
     public List<Map<String,Object>> listcom(@PathVariable("id") Integer id) {
-
-        List<Map<String,Object>> maps =   studentClient.listCom(id);
-
+        List<Map<String,Object>> maps =  studentClient.listCom(id);
         return maps;
     }
 
@@ -599,11 +624,6 @@
     @RequestMapping("/changeStatus/{id}")
     @ResponseBody
     public ResultUtil changeStatus(@PathVariable Integer id) {
-//        InsertBackDto insertBackDto= new InsertBackDto();
-//        insertBackDto.setId(id);
-////        insertBackDto.setIds(ids);
-//        System.out.println("=====insertBackDto========"+insertBackDto);
-
         courseStuddentClient.changeStatus(id);
         courseStuddentClient.zeroClass(id);
 
@@ -614,14 +634,8 @@
     @RequestMapping("/noStatus/{id}")
     @ResponseBody
     public ResultUtil noStatus(@PathVariable Integer id) {
-//        InsertBackDto insertBackDto= new InsertBackDto();
-//        insertBackDto.setId(id);
-////        insertBackDto.setIds(ids);
-//        System.out.println("=====insertBackDto========"+insertBackDto);
-
         courseStuddentClient.noStatus(id);
         courseStuddentClient.backStausClass(id);
-//        courseStuddentClient.zeroClass(id);
 
         System.out.println("============学员查询接口=========");
         return new ResultUtil<>(0,0,"已拒绝",null,null);
@@ -635,13 +649,17 @@
 
     public ResultUtil update(@RequestBody TStudent tStudent) {
         List<String> strings = new ArrayList<>();
-        if (!tStudent.getImage1().isEmpty()){
+        // 编辑页不回显加密手机号;未填写表示保持原手机号,避免把空值或密文写回账户库。
+        if (StringUtils.isBlank(tStudent.getPhone())) {
+            tStudent.setPhone(null);
+        }
+        if (StringUtils.isNotBlank(tStudent.getImage1())){
             strings.add(tStudent.getImage1());
         }
-        if (!tStudent.getImage2().isEmpty()){
+        if (StringUtils.isNotBlank(tStudent.getImage2())){
             strings.add(tStudent.getImage2());
         }
-        if (!tStudent.getImage3().isEmpty()){
+        if (StringUtils.isNotBlank(tStudent.getImage3())){
             strings.add(tStudent.getImage3());
         }
         String result = String.join(";", strings);
@@ -834,14 +852,12 @@
         System.out.println("========ToHoliDto========="+resultUtil);
 
         if (resultUtil.equals("换课成功")) {
-//            return ResultUtil.success(resultUtil);
                         return new ResultUtil<>(0,0,resultUtil);
 
         }else {
-            return new ResultUtil<>(0,1,resultUtil);}
+            return new ResultUtil<>(0,1,resultUtil);
         }
-//        if (resultUtil==""){
-//        }else{
+    }
 
 
     //赠课

--
Gitblit v1.7.1