刘帅
2026-09-22 9bcbf4398202139b31de1df6599e362915f15682
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";
@@ -389,6 +393,8 @@
    private ISiteBookingService siteBookingService;
    @Autowired
    private BallClient ballClient;
    @Autowired
    private WorldCupClient worldCupClient;
    /**
     * 获取列表
     */
@@ -398,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集合
@@ -422,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());
@@ -456,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;
    }
@@ -612,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);