刘帅
2026-09-22 652951bd0ce1eebcae43221e50d4cfda99c10aba
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/OperatorController.java
@@ -145,9 +145,14 @@
        TOperator byId = operatorService.getById(id);
        // 运营商名称
        model.addAttribute(byId.getName());
        User byId1 = userService.getById(byId.getUserId());
        model.addAttribute("userName",byId1.getName());
        model.addAttribute("phone",byId1.getPhone());
        // 历史数据可能存在 t_operator.userId 未同步的情况,不能因此让编辑页手机号丢失。
        User byId1 = byId.getUserId() == null ? null : userService.getById(byId.getUserId());
        if (byId1 == null) {
            byId1 = userService.getOne(new QueryWrapper<User>()
                    .eq("objectId", id).eq("objectType", 2));
        }
        model.addAttribute("userName", byId1 == null ? "" : byId1.getName());
        model.addAttribute("phone", byId1 == null ? "" : byId1.getPhone());
        model.addAttribute("data",byId);
        // 获取全部的省
        List<TOperatorCity> list = operatorCityService.list(new QueryWrapper<TOperatorCity>().eq("operatorId", id).eq("pid",0));
@@ -1434,13 +1439,17 @@
    @RequestMapping(value = "/updateOperator")
    public ResultUtil updateOperator(Integer id,String name,String userName
            ,String phone,Integer type ,@RequestParam String comArr) {
        List<User> list = userService.lambdaQuery().eq(User::getPhone, phone).ne(User::getId, id).list();
        // id 是运营商 ID,不是 sys_user.id;按运营商 ID 排除会把当前管理员误判为手机号重复。
        User user = userService.getOne(new QueryWrapper<User>().eq("objectId", id)
                .eq("objectType", 2));
        if (user == null) {
            return ResultUtil.error("运营商关联管理员不存在");
        }
        List<User> list = userService.lambdaQuery().eq(User::getPhone, phone).ne(User::getId, user.getId()).list();
        if (!list.isEmpty()){
            return ResultUtil.error("当前管理员手机号已存在!");
        }
        operatorCityService.remove(new QueryWrapper<TOperatorCity>().eq("operatorId",id));
        User user = userService.getOne(new QueryWrapper<User>().eq("objectId", id).
                eq("objectType", 2));
        user.setName(userName);
        user.setAccount(phone);
        user.setPhone(phone);