1、注册申请提交后自动通过并设置角色为普通客户;

2、注册申请审核接口增加角色id数组参数,修改用户角色
This commit is contained in:
liangwen 2025-09-11 17:02:41 +08:00
parent 03d1f54b9a
commit efcff29963
4 changed files with 46 additions and 18 deletions

View File

@ -1,10 +1,5 @@
package com.ruoyi.framework.web.service; package com.ruoyi.framework.web.service;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.system.domain.SysRegisterRequest;
import com.ruoyi.system.service.ISysRegisterRequestService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import com.ruoyi.common.constant.CacheConstants; import com.ruoyi.common.constant.CacheConstants;
import com.ruoyi.common.constant.Constants; import com.ruoyi.common.constant.Constants;
import com.ruoyi.common.constant.UserConstants; import com.ruoyi.common.constant.UserConstants;
@ -18,11 +13,12 @@ import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.framework.manager.AsyncManager; import com.ruoyi.framework.manager.AsyncManager;
import com.ruoyi.framework.manager.factory.AsyncFactory; import com.ruoyi.framework.manager.factory.AsyncFactory;
import com.ruoyi.system.domain.SysRegisterRequest;
import com.ruoyi.system.service.ISysConfigService; import com.ruoyi.system.service.ISysConfigService;
import com.ruoyi.system.service.ISysRegisterRequestService;
import com.ruoyi.system.service.ISysUserService; import com.ruoyi.system.service.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.Random; import org.springframework.stereotype.Component;
import java.util.concurrent.TimeUnit;
/** /**
* 注册校验方法 * 注册校验方法
@ -101,7 +97,9 @@ public class SysRegisterService
sysUser.setCompany(company); sysUser.setCompany(company);
sysUser.setPosition(position); sysUser.setPosition(position);
sysUser.setPassword(SecurityUtils.encryptPassword(password)); sysUser.setPassword(SecurityUtils.encryptPassword(password));
sysUser.setStatus("3"); //设置为审核中 sysUser.setStatus("0");
// 设置普通客户角色
sysUser.setRoleIds(new Long[]{81L});
boolean regFlag = userService.registerUser(sysUser); boolean regFlag = userService.registerUser(sysUser);
if (!regFlag) if (!regFlag)
{ {

View File

@ -63,7 +63,8 @@ public interface ISysRegisterRequestService
* 审核注册申请 * 审核注册申请
* @param requestId 申请id * @param requestId 申请id
* @param approve 是否通过审核 true通过 false驳回 * @param approve 是否通过审核 true通过 false驳回
* @param remark * @param remark 备注
* @param roleIds 角色id数组
*/ */
public void approve(Long requestId, boolean approve, String remark); public void approve(Long requestId, boolean approve, String remark, Long[] roleIds);
} }

View File

@ -1,12 +1,16 @@
package com.ruoyi.system.service.impl; package com.ruoyi.system.service.impl;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils; import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.domain.SysUserRole;
import com.ruoyi.system.mapper.SysUserMapper; import com.ruoyi.system.mapper.SysUserMapper;
import com.ruoyi.system.mapper.SysUserRoleMapper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.SysRegisterRequestMapper; import com.ruoyi.system.mapper.SysRegisterRequestMapper;
@ -29,6 +33,9 @@ public class SysRegisterRequestServiceImpl implements ISysRegisterRequestService
@Autowired @Autowired
private SysUserMapper sysUserMapper; private SysUserMapper sysUserMapper;
@Autowired
private SysUserRoleMapper userRoleMapper;
/** /**
* 查询注册申请 * 查询注册申请
* *
@ -105,23 +112,42 @@ public class SysRegisterRequestServiceImpl implements ISysRegisterRequestService
@Transactional @Transactional
@Override @Override
public void approve(Long requestId, boolean approve, String remark) { public void approve(Long requestId, boolean approve, String remark, Long[] roleIds) {
SysRegisterRequest request = sysRegisterRequestMapper.selectSysRegisterRequestByRequestId(requestId); SysRegisterRequest request = sysRegisterRequestMapper.selectSysRegisterRequestByRequestId(requestId);
if (request == null) { if (request == null) {
throw new RuntimeException("申请不存在"); throw new RuntimeException("注册申请不存在");
} }
SysUser user = sysUserMapper.selectUserById(request.getUserId()); SysUser user = sysUserMapper.selectUserById(request.getUserId());
user.setRoleIds(roleIds);
if (user == null) { if (user == null) {
new RuntimeException("用户不存在"); new RuntimeException("用户不存在");
} }
if (approve) { if (approve) {
request.setStatus("1"); request.setStatus("1"); // 人工审核通过
user.setStatus("0"); // 删除用户与角色关联
userRoleMapper.deleteUserRoleByUserId(user.getUserId());
// 新增用户与角色管理
if (StringUtils.isNotEmpty(roleIds))
{
// 新增用户与角色管理
List<SysUserRole> list = new ArrayList<SysUserRole>(roleIds.length);
for (Long roleId : roleIds)
{
SysUserRole ur = new SysUserRole();
ur.setUserId(user.getUserId());
ur.setRoleId(roleId);
list.add(ur);
}
userRoleMapper.batchUserRole(list);
}
} else { } else {
request.setStatus("2"); request.setStatus("2"); // 已驳回
user.setDelFlag("2"); // 删除 user.setDelFlag("2"); // 设置为删除
// TODO 发送邮箱告知注册审核被驳回
} }
request.setRemark(remark); request.setRemark(remark);
request.setUpdateTime(DateUtils.getNowDate()); request.setUpdateTime(DateUtils.getNowDate());

View File

@ -274,7 +274,10 @@ public class SysUserServiceImpl implements ISysUserService
@Override @Override
public boolean registerUser(SysUser user) public boolean registerUser(SysUser user)
{ {
return userMapper.insertUser(user) > 0; int rows = userMapper.insertUser(user);
// 设置角色
insertUserRole(user);
return rows > 0;
} }
/** /**