|
|
@@ -836,6 +836,101 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
|
|
return HttpResult.ok("新增成功");
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public HttpResult saveUserInfoByPartner(SysUser2Vo sysUserVo) {
|
|
|
+ SysUser sysUser = sysUserVo.getSysUser();
|
|
|
+ // 手机号
|
|
|
+ List<SysUser> mobileList = lambdaQuery().eq(SysUser::getMobile, sysUser.getMobile()).list();
|
|
|
+ if (!mobileList.isEmpty()) {
|
|
|
+ throw new SystemException("手机号已经注册请更换手机号。");
|
|
|
+ }
|
|
|
+ // 身份证号
|
|
|
+ List<SysUser> identityList = lambdaQuery().eq(SysUser::getIdentity, sysUser.getIdentity()).list();
|
|
|
+ if (!identityList.isEmpty()) {
|
|
|
+ throw new SystemException("身份证号已经注册请更换身份证号。");
|
|
|
+ }
|
|
|
+
|
|
|
+ //处理密码
|
|
|
+ if (StringUtils.isNotEmpty(sysUser.getPassword())) {
|
|
|
+ String salt = PasswordUtils.getSalt();
|
|
|
+ String pwd = PasswordUtils.encode(sysUser.getPassword(), salt);
|
|
|
+ sysUser.setPassword(pwd);
|
|
|
+ sysUser.setSalt(salt);
|
|
|
+ } else {
|
|
|
+ return HttpResult.error("密码不能为空");
|
|
|
+ }
|
|
|
+ String userId = "";
|
|
|
+ if ("19".equals(sysUser.getRoleId())) {//19 出单员 校验机构和业务员机构是否一致
|
|
|
+ // add by hxl 2024-08-20
|
|
|
+ // return checkChuDanUser(sysUser);
|
|
|
+ if (StringUtils.isEmpty(sysUser.getReferrerId())) {
|
|
|
+ return HttpResult.error("业务员工号不能为空");
|
|
|
+ }
|
|
|
+ //归属业务员和出单员部门必须一致
|
|
|
+ SysUser user = getById(sysUser.getReferrerId());
|
|
|
+ if (user == null || !user.getDeptId().equals(sysUser.getDeptId())) {
|
|
|
+ return HttpResult.error("出单员机构必须和归属业务员机构一致");
|
|
|
+ }
|
|
|
+ sysUser.setOperatorCode(sysUser.getReferrerId());
|
|
|
+ if (StringUtils.isEmpty(sysUser.getId())) {
|
|
|
+ userId = gainNextUserId(sysUser.getDeptId());
|
|
|
+ sysUser.setId(userId);
|
|
|
+ save(sysUser);
|
|
|
+ //角色配置
|
|
|
+ SysUserRole userRole = new SysUserRole();
|
|
|
+ userRole.setUserId(sysUser.getId());
|
|
|
+ userRole.setRoleId(StringUtils.toLong(sysUser.getRoleId()));
|
|
|
+ sysUserRoleService.save(userRole);
|
|
|
+ } else {
|
|
|
+ userId = sysUser.getId();
|
|
|
+ updateById(sysUser);
|
|
|
+ }
|
|
|
+ SysUserInfo userInfo = sysUserVo.getSysUserInfo();
|
|
|
+ userInfo.setId(sysUser.getId());
|
|
|
+ sysUserInfoService.save(userInfo);
|
|
|
+ } else {
|
|
|
+ userId = gainNextUserId(sysUser.getDeptId());
|
|
|
+
|
|
|
+ if (RoleConstants.R22.getCode().equals(sysUser.getRoleId())) {//22 后线人员
|
|
|
+ if (!SysConstants.isAdministration(userId)) {
|
|
|
+ throw new SystemException("后线人员只能公司部门中");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ sysUser.setId(userId);
|
|
|
+ save(sysUser);
|
|
|
+
|
|
|
+ //角色配置
|
|
|
+ SysUserRole userRole = new SysUserRole();
|
|
|
+ userRole.setUserId(sysUser.getId());
|
|
|
+ userRole.setRoleId(StringUtils.toLong(sysUser.getRoleId()));
|
|
|
+ sysUserRoleService.save(userRole);
|
|
|
+ if (StringUtils.isNotEmpty(sysUser.getReferrerId())) {
|
|
|
+ //推荐人
|
|
|
+ esmUserReferrerService.addReferrer(sysUser.getReferrerId(), userId);
|
|
|
+ } else if ("20".equals(sysUser.getRoleId()) || "21".equals(sysUser.getRoleId())) {
|
|
|
+ //如果是 团队长或代码人 并且没有推荐人 则默认推荐人为自己
|
|
|
+ esmUserReferrerService.addReferrer(sysUser.getId(), userId);
|
|
|
+ }
|
|
|
+ SysUserInfo userInfo = sysUserVo.getSysUserInfo();
|
|
|
+ if (userInfo != null) {
|
|
|
+ if (null != userInfo.getLiveAddressString() && userInfo.getLiveAddressString().length > 0) {
|
|
|
+ sysUserVo.getSysUserInfo().setLiveAddress(Arrays.stream(userInfo.getLiveAddressString()).map(item -> item.toString()).collect(Collectors.joining(",")));
|
|
|
+ }
|
|
|
+ userInfo.setId(sysUser.getId());
|
|
|
+ }
|
|
|
+// userInfo.setId(sysUser.getId());
|
|
|
+ sysUserInfoService.save(userInfo);
|
|
|
+ }
|
|
|
+ List<EsmUserImageVo> esmUserImageVo = sysUserVo.getEsmUserImageVo();
|
|
|
+ String finalUserId = userId;
|
|
|
+ List<EsmUserImage> esmUserImages = esmUserImageVo.stream().map(x -> new EsmUserImage(x, finalUserId)).collect(Collectors.toList());
|
|
|
+ esmUserImageService.saveBatch(esmUserImages);
|
|
|
+ SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, null);
|
|
|
+ return HttpResult.ok("新增成功");
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public HttpResult saveUserInfo1(SysUser2Vo sysUserVo, SysDeptVo sysDeptVo) {
|
|
|
@@ -929,7 +1024,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
|
|
String finalUserId = userId;
|
|
|
List<EsmUserImage> esmUserImages = esmUserImageVo.stream().map(x -> new EsmUserImage(x, finalUserId)).collect(Collectors.toList());
|
|
|
esmUserImageService.saveBatch(esmUserImages);
|
|
|
- SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, BaseController.getUserName());
|
|
|
+ SpringUtil.getBean(RecordUserUtils.class).addRecord(userId, null);
|
|
|
return HttpResult.ok("新增成功");
|
|
|
}
|
|
|
|