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.java
pull/3/head
fengshuonan 2021-01-12 21:18:25 +08:00
commit 42fad0f3ef
8 changed files with 47 additions and 16 deletions

View File

@ -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>

View File

@ -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);
}
} }

View File

@ -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 {
// 密码不为空,则将密码加密存储到库中 // 密码不为空,则将密码加密存储到库中

View File

@ -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

View File

@ -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;
} }

View File

@ -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);
/** /**
* *
* *

View File

@ -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) {

View File

@ -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;
} }