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 |  165 ++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 134 insertions(+), 31 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 0bd890d..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
@@ -3,6 +3,7 @@
 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.model.TAppUser;
 import com.dsh.course.feignClient.competition.CompetitionClient;
 import com.dsh.course.feignClient.competition.model.*;
 import com.dsh.guns.config.UserExt;
@@ -18,7 +19,9 @@
 import com.dsh.guns.modular.system.service.IStoreService;
 import com.dsh.guns.modular.system.service.TOperatorCityService;
 import com.dsh.guns.modular.system.service.TOperatorService;
+import com.dsh.guns.modular.system.util.ExcelUtil;
 import com.dsh.guns.modular.system.util.OBSUploadUtil;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
@@ -28,11 +31,13 @@
 import org.springframework.web.bind.annotation.ResponseBody;
 import sun.rmi.runtime.Log;
 
+import javax.jws.soap.SOAPBinding;
+import javax.servlet.http.HttpServletResponse;
+import java.io.OutputStream;
+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.*;
 import java.util.stream.Collectors;
 
 /**
@@ -56,7 +61,61 @@
     @Autowired
     private ICityService cityService;
 
+    /**
+     * 导出赛事已报名用户列表
+     */
 
+    @RequestMapping(value = "/export")
+    @ResponseBody
+    public void exportUserInfo(Integer id, Integer state, HttpServletResponse response) {
+        try {
+            Competition byId = competitionClient.queryById(id);
+            String name = byId.getName();
+            Date date = new Date();
+            DateFormat format = new SimpleDateFormat("yyyyMMdd");
+            String time1 = format.format(date);
+            String fileName =name+"报名信息.xls";
+            String[] title = new String[] {"姓名","性别","联系电话","身份证号","状态"};
+            GetPeopleQuery query = new GetPeopleQuery();
+            query.setId(id);
+            query.setState(state);
+            List<CompetitionUser> list = competitionClient.getPeoples(query);
+            String[][] values = new String[list.size()][];
+            for (int i = 0; i < list.size(); i++) {
+                CompetitionUser d = list.get(i);
+                values[i] = new String[title.length];
+                values[i][0] = d.getName();
+                Integer sex = d.getSex();
+                if(Objects.nonNull(sex)){
+                    if(1 == sex){
+                        values[i][1] = "男";
+                    }else if(2 == sex){
+                        values[i][1] = "女";
+                    }
+                }else {
+                    values[i][1] = "未知";
+                }
+                values[i][2] = d.getPhone();
+                values[i][3] = d.getIdCard();
+                Integer state1 = d.getState();
+                if(1 == state1){
+                    values[i][4] = "正常";
+                }else if(2 == state1){
+                    values[i][4] = "冻结";
+                }else {
+                    values[i][4] = "删除";
+                }
+            }
+            HSSFWorkbook wb = ExcelUtil.getHSSFWorkbook("Variance"+time1, title, values, null);
+            ExcelUtil.setResponseHeader(response, fileName);
+            OutputStream os = response.getOutputStream();
+            wb.write(os);
+            os.flush();
+            os.close();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
 
 
     /**
@@ -80,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);
@@ -93,15 +151,27 @@
             // 查询这个运营商管理的省
             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);
+            // 查询当前运营商管理了哪些门店
+            List<TStore> stores = storeService
+                    .list(new QueryWrapper<TStore>()
+                            .eq("operatorId", UserExt.getUser().getObjectId()));
+            model.addAttribute("stores",stores);
         }
+        if (UserExt.getUser().getObjectType()==1) model.addAttribute("operator",0);
+        TStore byId = storeService.getById(UserExt.getUser().getObjectId());
+        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";
     }
 
@@ -136,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);
@@ -210,21 +309,10 @@
             ids = operatorId;
         }
         Page<Competition> page = new PageFactory<Competition>().defaultPage();
-        ListQuery listQuery = new ListQuery(page.getSize(),page.getCurrent(),provinceCode,cityCode,eventName,time,state,registerCondition,ids);
+        ListQuery listQuery = new ListQuery(page.getSize(),page.getCurrent(),provinceCode,cityCode,eventName,time,state,registerCondition,ids,UserExt.getUser().getObjectType());
         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);
@@ -250,11 +338,10 @@
 
     @RequestMapping(value = "/listUser/{id}")
     @ResponseBody
-    public Object listUser(@PathVariable Integer id,Integer state) {
+    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(page.getSize(),page.getCurrent(),id,state));
-            return  super.packForBT(data);
+            Page<CompetitionUser> page = competitionClient.getPeopleFromId1(new GetPeopleQuery(limit, offset, id, state));
+            return super.packForBT(page);
         }catch (Exception e){
             e.printStackTrace();
             return ERROR;
@@ -276,8 +363,9 @@
 
             if (UserExt.getUser().getObjectType() == 1){
                 competition.setAuditStatus(2);
-            }else {
+            }else if (UserExt.getUser().getObjectType() == 2){
                 competition.setAuditStatus(1);
+                competition.setOperatorId(UserExt.getUser().getObjectId());
             }
 
 //            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@@ -324,18 +412,18 @@
         }
     }
 
-
+    @ResponseBody
     @RequestMapping(value = "/cancel")
-    public Object cancel(Integer id) {
+    public Object cancel(Integer TCompetitionId) {
         try {
-            competitionClient.cancel(id);
+            competitionClient.cancel(TCompetitionId);
             return SUCCESS_TIP;
         }catch (Exception e){
             e.printStackTrace();
             return ERROR;
         }
     }
-
+    @ResponseBody
     @RequestMapping(value = "/getPeopleFromId")
     public Object getPeopleFromId(Integer id,Integer state) {
         try {
@@ -354,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()));
@@ -367,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();
@@ -379,4 +479,7 @@
     }
 
 
+
+
+
 }

--
Gitblit v1.7.1