mirror of https://gitee.com/stylefeng/roses
Merge remote-tracking branch 'origin/group2-user'
# Conflicts: # kernel-s-system/system-business-user/src/main/java/cn/stylefeng/roses/kernel/system/modular/user/service/impl/SysUserServiceImpl.javapull/3/head
commit
42fad0f3ef
|
@ -110,16 +110,6 @@ public class AuthConfigExpander {
|
||||||
return ConfigContext.me().getSysConfigValueWithDefault("SYS_AUTH_PARAM_NAME", String.class, DEFAULT_AUTH_PARAM_NAME);
|
return ConfigContext.me().getSysConfigValueWithDefault("SYS_AUTH_PARAM_NAME", String.class, DEFAULT_AUTH_PARAM_NAME);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取默认密码
|
|
||||||
*
|
|
||||||
* @author luojie
|
|
||||||
* @date 2020/11/6 10:05
|
|
||||||
*/
|
|
||||||
public static String getDefaultPassWord() {
|
|
||||||
return ConfigContext.me().getSysConfigValueWithDefault("SYS_DEFAULT_PASSWORD", String.class, DEFAULT_PASSWORD);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 会话信息是否增加保存在 cookie 中
|
* 会话信息是否增加保存在 cookie 中
|
||||||
* <p>
|
* <p>
|
||||||
|
|
|
@ -3,6 +3,8 @@ package cn.stylefeng.roses.kernel.system.expander;
|
||||||
import cn.stylefeng.roses.kernel.config.api.context.ConfigContext;
|
import cn.stylefeng.roses.kernel.config.api.context.ConfigContext;
|
||||||
import cn.stylefeng.roses.kernel.system.constants.SystemConstants;
|
import cn.stylefeng.roses.kernel.system.constants.SystemConstants;
|
||||||
|
|
||||||
|
import static cn.stylefeng.roses.kernel.auth.api.constants.AuthConstants.DEFAULT_PASSWORD;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统的一些基础信息
|
* 系统的一些基础信息
|
||||||
*
|
*
|
||||||
|
@ -51,4 +53,14 @@ public class SystemConfigExpander {
|
||||||
return ConfigContext.me().getSysConfigValueWithDefault("SYS_SYSTEM_NAME", String.class, SystemConstants.DEFAULT_SYSTEM_NAME);
|
return ConfigContext.me().getSysConfigValueWithDefault("SYS_SYSTEM_NAME", String.class, SystemConstants.DEFAULT_SYSTEM_NAME);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取默认密码
|
||||||
|
*
|
||||||
|
* @author luojie
|
||||||
|
* @date 2020/11/6 10:05
|
||||||
|
*/
|
||||||
|
public static String getDefaultPassWord() {
|
||||||
|
return ConfigContext.me().getSysConfigValueWithDefault("SYS_DEFAULT_PASSWORD", String.class, DEFAULT_PASSWORD);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,11 +3,11 @@ package cn.stylefeng.roses.kernel.system.modular.user.factory;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import cn.hutool.extra.spring.SpringUtil;
|
import cn.hutool.extra.spring.SpringUtil;
|
||||||
import cn.stylefeng.roses.kernel.auth.api.expander.AuthConfigExpander;
|
|
||||||
import cn.stylefeng.roses.kernel.auth.api.password.PasswordStoredEncryptApi;
|
import cn.stylefeng.roses.kernel.auth.api.password.PasswordStoredEncryptApi;
|
||||||
import cn.stylefeng.roses.kernel.rule.enums.SexEnum;
|
import cn.stylefeng.roses.kernel.rule.enums.SexEnum;
|
||||||
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
||||||
import cn.stylefeng.roses.kernel.system.enums.UserStatusEnum;
|
import cn.stylefeng.roses.kernel.system.enums.UserStatusEnum;
|
||||||
|
import cn.stylefeng.roses.kernel.system.expander.SystemConfigExpander;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUser;
|
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUser;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.user.request.SysUserRequest;
|
import cn.stylefeng.roses.kernel.system.pojo.user.request.SysUserRequest;
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@ public class SysUserCreateFactory {
|
||||||
// 密码为空则设置为默认密码
|
// 密码为空则设置为默认密码
|
||||||
PasswordStoredEncryptApi passwordStoredEncryptApi = SpringUtil.getBean(PasswordStoredEncryptApi.class);
|
PasswordStoredEncryptApi passwordStoredEncryptApi = SpringUtil.getBean(PasswordStoredEncryptApi.class);
|
||||||
if (ObjectUtil.isEmpty(sysUser.getPassword())) {
|
if (ObjectUtil.isEmpty(sysUser.getPassword())) {
|
||||||
String defaultPassword = AuthConfigExpander.getDefaultPassWord();
|
String defaultPassword = SystemConfigExpander.getDefaultPassWord();
|
||||||
sysUser.setPassword(passwordStoredEncryptApi.encrypt(defaultPassword));
|
sysUser.setPassword(passwordStoredEncryptApi.encrypt(defaultPassword));
|
||||||
} else {
|
} else {
|
||||||
// 密码不为空,则将密码加密存储到库中
|
// 密码不为空,则将密码加密存储到库中
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
and suser.status_flag like concat('%',#{sysUserRequest.statusFlag},'%')
|
and suser.status_flag like concat('%',#{sysUserRequest.statusFlag},'%')
|
||||||
</if>
|
</if>
|
||||||
<if test="sysUserRequest.orgId != null and sysUserRequest.orgId != ''">
|
<if test="sysUserRequest.orgId != null and sysUserRequest.orgId != ''">
|
||||||
and suorg.org_id = #{sysUserRequest.orgId}
|
and suorg.org_id in(select org_id from hr_organization where org_pids like CONCAT('%[',#{sysUserRequest.orgId},']%') or org_id=#{sysUserRequest.orgId})
|
||||||
</if>
|
</if>
|
||||||
and suser.del_flag = 'N'
|
and suser.del_flag = 'N'
|
||||||
order by suser.create_time desc
|
order by suser.create_time desc
|
||||||
|
|
|
@ -4,6 +4,7 @@ import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统用户结果
|
* 系统用户结果
|
||||||
|
@ -80,4 +81,8 @@ public class SysUserResponse {
|
||||||
*/
|
*/
|
||||||
private Integer statusFlag;
|
private Integer statusFlag;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户角色id
|
||||||
|
*/
|
||||||
|
private List<Long> grantRoleIdList;
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,6 +23,16 @@ public interface SysUserRoleService extends IService<SysUserRole> {
|
||||||
*/
|
*/
|
||||||
List<SysUserRole> getUserRoles(Long userId);
|
List<SysUserRole> getUserRoles(Long userId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取账号绑定的角色id集合
|
||||||
|
*
|
||||||
|
* @param userId 用户id
|
||||||
|
* @return 角色id集合
|
||||||
|
* @author chenjinlong
|
||||||
|
* @date 2021/1/12 19:42
|
||||||
|
*/
|
||||||
|
List<Long> getUserRoleIds(Long userId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 给某个用户授权角色
|
* 给某个用户授权角色
|
||||||
*
|
*
|
||||||
|
|
|
@ -4,8 +4,8 @@ import cn.stylefeng.roses.kernel.system.exception.SystemModularException;
|
||||||
import cn.stylefeng.roses.kernel.system.exception.enums.SysUserExceptionEnum;
|
import cn.stylefeng.roses.kernel.system.exception.enums.SysUserExceptionEnum;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserRole;
|
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserRole;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.mapper.SysUserRoleMapper;
|
import cn.stylefeng.roses.kernel.system.modular.user.mapper.SysUserRoleMapper;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.user.request.SysUserRequest;
|
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.service.SysUserRoleService;
|
import cn.stylefeng.roses.kernel.system.modular.user.service.SysUserRoleService;
|
||||||
|
import cn.stylefeng.roses.kernel.system.pojo.user.request.SysUserRequest;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
@ -13,6 +13,7 @@ import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 系统用户角色service接口实现类
|
* 系统用户角色service接口实现类
|
||||||
|
@ -37,6 +38,14 @@ public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUs
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Long> getUserRoleIds(Long userId) {
|
||||||
|
LambdaQueryWrapper<SysUserRole> wrapper = new LambdaQueryWrapper<>();
|
||||||
|
wrapper.eq(SysUserRole::getUserId, userId);
|
||||||
|
List<SysUserRole> list = this.list(wrapper);
|
||||||
|
return list.stream().map(SysUserRole::getRoleId).collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void grantRole(SysUserRequest sysUserRequest) {
|
public void grantRole(SysUserRequest sysUserRequest) {
|
||||||
|
|
|
@ -5,7 +5,6 @@ import cn.hutool.core.util.ObjectUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import cn.stylefeng.roses.kernel.auth.api.SessionManagerApi;
|
import cn.stylefeng.roses.kernel.auth.api.SessionManagerApi;
|
||||||
import cn.stylefeng.roses.kernel.auth.api.context.LoginContext;
|
import cn.stylefeng.roses.kernel.auth.api.context.LoginContext;
|
||||||
import cn.stylefeng.roses.kernel.auth.api.expander.AuthConfigExpander;
|
|
||||||
import cn.stylefeng.roses.kernel.auth.api.password.PasswordStoredEncryptApi;
|
import cn.stylefeng.roses.kernel.auth.api.password.PasswordStoredEncryptApi;
|
||||||
import cn.stylefeng.roses.kernel.auth.api.pojo.login.LoginUser;
|
import cn.stylefeng.roses.kernel.auth.api.pojo.login.LoginUser;
|
||||||
import cn.stylefeng.roses.kernel.auth.api.pojo.login.basic.SimpleUserInfo;
|
import cn.stylefeng.roses.kernel.auth.api.pojo.login.basic.SimpleUserInfo;
|
||||||
|
@ -23,6 +22,7 @@ import cn.stylefeng.roses.kernel.system.RoleServiceApi;
|
||||||
import cn.stylefeng.roses.kernel.system.enums.UserStatusEnum;
|
import cn.stylefeng.roses.kernel.system.enums.UserStatusEnum;
|
||||||
import cn.stylefeng.roses.kernel.system.exception.SystemModularException;
|
import cn.stylefeng.roses.kernel.system.exception.SystemModularException;
|
||||||
import cn.stylefeng.roses.kernel.system.exception.enums.SysUserExceptionEnum;
|
import cn.stylefeng.roses.kernel.system.exception.enums.SysUserExceptionEnum;
|
||||||
|
import cn.stylefeng.roses.kernel.system.expander.SystemConfigExpander;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUser;
|
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUser;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserDataScope;
|
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserDataScope;
|
||||||
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserRole;
|
import cn.stylefeng.roses.kernel.system.modular.user.entity.SysUserRole;
|
||||||
|
@ -39,10 +39,12 @@ import cn.stylefeng.roses.kernel.system.pojo.organization.DataScopeResponse;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.role.response.SysRoleResponse;
|
import cn.stylefeng.roses.kernel.system.pojo.role.response.SysRoleResponse;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.user.OnlineUserResponse;
|
import cn.stylefeng.roses.kernel.system.pojo.user.OnlineUserResponse;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.user.SysUserDTO;
|
import cn.stylefeng.roses.kernel.system.pojo.user.SysUserDTO;
|
||||||
|
import cn.stylefeng.roses.kernel.system.pojo.user.SysUserDTO;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.user.SysUserOrgResponse;
|
import cn.stylefeng.roses.kernel.system.pojo.user.SysUserOrgResponse;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.user.UserLoginInfoDTO;
|
import cn.stylefeng.roses.kernel.system.pojo.user.UserLoginInfoDTO;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.user.request.OnlineUserRequest;
|
import cn.stylefeng.roses.kernel.system.pojo.user.request.OnlineUserRequest;
|
||||||
import cn.stylefeng.roses.kernel.system.pojo.user.request.SysUserRequest;
|
import cn.stylefeng.roses.kernel.system.pojo.user.request.SysUserRequest;
|
||||||
|
import cn.stylefeng.roses.kernel.system.pojo.user.request.SysUserRequest;
|
||||||
import cn.stylefeng.roses.kernel.system.util.DataScopeUtil;
|
import cn.stylefeng.roses.kernel.system.util.DataScopeUtil;
|
||||||
import com.alibaba.excel.support.ExcelTypeEnum;
|
import com.alibaba.excel.support.ExcelTypeEnum;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
@ -213,7 +215,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||||
SysUser sysUser = this.querySysUser(sysUserRequest);
|
SysUser sysUser = this.querySysUser(sysUserRequest);
|
||||||
|
|
||||||
// 获取系统配置的默认密码
|
// 获取系统配置的默认密码
|
||||||
String password = AuthConfigExpander.getDefaultPassWord();
|
String password = SystemConfigExpander.getDefaultPassWord();
|
||||||
sysUser.setPassword(passwordStoredEncryptApi.encrypt(password));
|
sysUser.setPassword(passwordStoredEncryptApi.encrypt(password));
|
||||||
|
|
||||||
this.updateById(sysUser);
|
this.updateById(sysUser);
|
||||||
|
@ -317,6 +319,9 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||||
sysUserResponse.setOrgId(userOrgInfo.getOrgId());
|
sysUserResponse.setOrgId(userOrgInfo.getOrgId());
|
||||||
sysUserResponse.setPositionId(userOrgInfo.getPositionId());
|
sysUserResponse.setPositionId(userOrgInfo.getPositionId());
|
||||||
|
|
||||||
|
// 获取用户角色信息
|
||||||
|
sysUserResponse.setGrantRoleIdList(sysUserRoleService.getUserRoleIds(sysUser.getUserId()));
|
||||||
|
|
||||||
return sysUserResponse;
|
return sysUserResponse;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue