根据组织代码获取认证人

release
路明慧 2 years ago
parent bed94e9fe8
commit 9566e2c4fd
  1. 6
      dxhy-admin/src/main/java/com/dxhy/admin/sys/dao/SysUserDao.java
  2. 4
      dxhy-admin/src/main/java/com/dxhy/admin/sys/model/UserModel.java
  3. 56
      dxhy-admin/src/main/java/com/dxhy/admin/sys/service/impl/SysUserServiceImpl.java
  4. 17
      dxhy-admin/src/main/resources/mapper/sys/SysUserDao.xml

@ -89,11 +89,11 @@ public interface SysUserDao extends BaseMapper<SysUserEntity> {
/**
* 根据公司编码获取税号
*
* @param id
* 公司id
* @param
*
* @return 税号
*/
List<UserModel> getUserAuthList(@Param("deptId") String deptId);
List<UserModel> getUserAuthList(@Param("deptId") String deptId,@Param("deptIdList")List<Long> deptIdList);
/**
* 根据邮箱获取用户信息

@ -2,6 +2,8 @@ package com.dxhy.admin.sys.model;
import lombok.Data;
import java.util.List;
/**
* @author jiaohongyang焦红阳
* @date 2020-11-11
@ -29,4 +31,6 @@ public class UserModel {
private String deptId;
private String dId;
private List<String> deptIdList;
}

@ -354,55 +354,41 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserDao, SysUserEntity> i
@NotNull
private List<UserModel> setUserModels(SysUserEntity userEntity, long userId) {
// user.setUserModels(this.getUserCompanyList(userEntity.getCompany()));
List<SysDeptEntity> deptEntities = sysUserOrgService.queryOrgCodes(userId);
List<UserModel> userModels = new ArrayList<>();
for (SysDeptEntity entity : deptEntities){
List<UserModel> models = this.getUserAuthList(String.valueOf(entity.getDeptId()));
for(UserModel model : models) {
if(userModels.stream().noneMatch(e -> model.getUserId().equals(e.getUserId()) && model.getDeptId().equals(e.getDeptId()))) {
userModels.add(model);
// if(!model.getDeptId().equals(model.getDId())){
// UserModel userModel = new UserModel();
// userModel.setUserId(model.getUserId());
// userModel.setLoginname(model.getLoginname());
// userModel.setUsername(model.getUsername());
// userModel.setDeptId(model.getDId());
// userModels.add(userModel);
// }
}
}
List<Long> deptIds = deptEntities.stream().map(SysDeptEntity::getDeptId).collect(Collectors.toList());
List<UserModel> models = this.getUserAuthList(String.valueOf(userId),deptIds);
//每个deptId手动增加一个admin
models.forEach(e->e.setDeptIdList(Arrays.asList(e.getDId().split(","))));
//手动添加Admin
List<String> depts = new ArrayList<>();
deptIds.forEach(e->depts.add(String.valueOf(e)));
if (models.stream().noneMatch(e -> "admin".equals(e.getUsername()))) {
UserModel userModel = new UserModel();
userModel.setUserId("10086");
userModel.setLoginname("admin");
userModel.setUsername("admin");
userModel.setDeptId(String.valueOf(entity.getDeptId()));
userModels.add(userModel);
userModel.setDeptIdList(depts);
models.add(userModel);
}else {
for (UserModel model : models) {
if ("admin".equals(model.getUsername())){
model.setDeptIdList(depts);
}
}
if(userModels.stream().noneMatch(e -> userEntity.getUserId().equals(e.getUserId()) && userEntity.getDeptId().equals(e.getDeptId()))) {
//当前登录用户手动增加一个admin
UserModel userModel = new UserModel();
userModel.setUserId(String.valueOf(userEntity.getUserId()));
userModel.setLoginname("admin");
userModel.setUsername("admin");
userModel.setDeptId(String.valueOf(userEntity.getDeptId()));
userModels.add(userModel);
}
log.info("userModels={}",userModels);
return userModels;
log.info("models={}",models);
return models;
}
private List<UserModel> getUserCompanyList(String company) {
return baseMapper.getUserCompanyList(company);
}
private List<UserModel> getUserAuthList(String deptId) {
DynamicContextHolder.push(DbConstant.BASICS_READ);
return baseMapper.getUserAuthList(deptId);
private List<UserModel> getUserAuthList(String deptId,List<Long> deptIds) {
return baseMapper.getUserAuthList(deptId,deptIds);
}
private MenuModel setMetnuRedis(long userId) {

@ -70,17 +70,18 @@
</select>
<select id="getUserAuthList" resultType="com.dxhy.admin.sys.model.UserModel">
SELECT
u.user_id,
select u.user_id,
u.username,
u.loginname,
u.dept_id as dId,
GROUP_CONCAT(d.dept_id) as dId,
d.dept_id
FROM
sys_user u
INNER JOIN sys_user_org d ON u.user_id = d.userid
WHERE
d.dept_id = #{deptId}
from sys_user u inner join sys_user_org uo on u.user_id = uo.userid
inner join sys_dept d on d.dept_id = uo.dept_id
where d.dept_id in
<foreach collection="deptIdList" item="deptId" open="(" close=")" separator=",">
#{deptId}
</foreach>
group by u.user_id
</select>
<select id="queryUserByEmail" resultType="com.dxhy.admin.sys.entity.SysUserEntity">

Loading…
Cancel
Save