ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysUserController.java
@@ -13,6 +13,7 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.ruoyi.common.annotation.Anonymous; import com.ruoyi.common.core.domain.entity.sysUserInfo; import com.ruoyi.common.utils.uuid.UUID; import com.ruoyi.domain.*; import com.ruoyi.domain.dto.MarryInfoDto; import com.ruoyi.service.*; @@ -219,6 +220,13 @@ infoUser.setSpouseId(user.getSpouseId()); } String originalString=user.getUserName()+"-"+user.getPhonenumber(); String uniqueId = UUID.nameUUIDFromBytes(originalString.getBytes()).toString(); infoUser.setUaid(uniqueId); zInfoUserService.setUaidSame(user.getPhonenumber(),user.getUserName(),uniqueId); // ----- 2.2 家族关系继承逻辑 ----- // 优先获取当前数据库记录 ZInfoUser byId = zInfoUserService.getById(user); @@ -388,6 +396,7 @@ user.setRemark(userAll.getRemark()); // 备注信息 user.setUpdateBy(userAll.getUpdateBy()); // 更新人 user.setClanId(userAll.getClanId()); // 家族ID user.setPaid(userAll.getPaid()); // ===================== 2. 唯一性校验(登录名/手机号/邮箱) ===================== // 2.1 登录名校验 @@ -395,9 +404,10 @@ return error("新增用户'" + user.getNickName() + "'失败,登录账号已存在"); } // 2.2 手机号校验(非空时验证) else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) { return error("新增用户'" + user.getUserName() + "'失败,手机号码已存在"); } // else if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) { // // return error("新增用户'" + user.getUserName() + "'失败,手机号码已存在"); // } // 2.3 邮箱校验(非空时验证) else if (StringUtils.isNotEmpty(user.getEmail()) && !userService.checkEmailUnique(user)) { return error("新增用户'" + user.getUserName() + "'失败,邮箱账号已存在"); @@ -426,6 +436,14 @@ infoUser.setNickName(userAll.getNickName()); // 当前昵称 infoUser.setOldName(userAll.getUserName()); // 历史名称(保留记录) infoUser.setPhoneNumber(userAll.getPhonenumber()); // 联系方式 String originalString=userAll.getUserName()+"-"+userAll.getPhonenumber(); String uniqueId = UUID.nameUUIDFromBytes(originalString.getBytes()).toString(); infoUser.setUaid(uniqueId); if (StringUtils.isNotEmpty(user.getPhonenumber()) && !userService.checkPhoneUnique(user)) { zInfoUserService.setUaidSame(user.getPhonenumber(),user.getUserName(),uniqueId); } // 性别格式转换(String → Integer) infoUser.setSex(userAll.getSex().equals("0") ? 0 : 1); infoUser.setSpouseId(userAll.getSpouseId()); // 配偶ID ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.domain.ZInfoUser; @@ -78,6 +79,9 @@ @Resource private ZInfoUserService zInfoUserService; @Override public List<String> findUserNames(Long[] ids) { List<String> usNames = userMapper.findUserNames(ids).stream().map(SysUser::getUserName).collect(Collectors.toList()); zhang-content/src/main/java/com/ruoyi/domain/sysUserAndUserInfo.java
@@ -78,4 +78,7 @@ /** 婚姻状况(0:未婚,1:已婚,2:离婚) */ private Integer maritalStatus; /** 是否会员(0否 1是) 默认否*/ private Integer paid; } zhang-content/src/main/java/com/ruoyi/service/ZInfoUserService.java
@@ -22,6 +22,8 @@ public interface ZInfoUserService extends IService<ZInfoUser> { void setUaidSame(String phone, String username,String uniqueId); void setSpouseOnly(Long spouse); AjaxResult selectInfoList(ZInfoUser zInfoUser, Integer pageNum, Integer pageSize); zhang-content/src/main/java/com/ruoyi/service/impl/ZInfoUserServiceImpl.java
@@ -3,7 +3,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -12,6 +11,7 @@ import com.ruoyi.common.utils.MapUtils; import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.uuid.UUID; import com.ruoyi.domain.*; import com.ruoyi.domain.dto.*; import com.ruoyi.mapper.ZInfoUserMapper; @@ -54,6 +54,19 @@ private ZfClanService zfClanService; /** 使相同用户名+电话号码相同的用户对应的uaid同步*/ @Override public void setUaidSame(String phone, String username,String uniqueId){ UpdateWrapper<ZInfoUser> wrapper = new UpdateWrapper<>(); wrapper.eq(phone!=null,"phone_number", phone) .eq(username!=null,"old_name",username) .set("uaid",uniqueId ); this.update(null, wrapper); // 执行更新 } @Override public void setSpouseOnly(Long spouse){ UpdateWrapper<ZInfoUser> wrapper = new UpdateWrapper<>();