|
|
|
@ -8,6 +8,7 @@ import javax.annotation.Resource; |
|
|
|
|
import com.dxhy.common.util.StringHelper; |
|
|
|
|
import org.apache.commons.lang.RandomStringUtils; |
|
|
|
|
import org.apache.commons.lang.StringUtils; |
|
|
|
|
import org.jetbrains.annotations.NotNull; |
|
|
|
|
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; |
|
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
@ -339,7 +340,8 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserDao, SysUserEntity> i |
|
|
|
|
user.setUserOrg(userOrgEntity); |
|
|
|
|
user.setUserBusiness(businessList); |
|
|
|
|
user.setCompanyCodes(companyEntitys); |
|
|
|
|
user.setUserModels(this.getUserCompanyList(userEntity.getCompany())); |
|
|
|
|
List<UserModel> userModels = setUserModels(userEntity, userId); |
|
|
|
|
user.setUserModels(userModels); |
|
|
|
|
// 刷新菜单缓存处理
|
|
|
|
|
this.setMetnuRedis(userEntity.getUserId()); |
|
|
|
|
user.setEmailCodes(emailCodes); |
|
|
|
@ -350,10 +352,45 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserDao, SysUserEntity> i |
|
|
|
|
return user; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@NotNull |
|
|
|
|
private List<UserModel> setUserModels(SysUserEntity userEntity, long userId) { |
|
|
|
|
|
|
|
|
|
List<SysDeptEntity> deptEntities = sysUserOrgService.queryOrgCodes(userId); |
|
|
|
|
|
|
|
|
|
List<Long> deptIds = deptEntities.stream().map(SysDeptEntity::getDeptId).collect(Collectors.toList()); |
|
|
|
|
|
|
|
|
|
List<UserModel> models = this.getUserAuthList(String.valueOf(userId),deptIds); |
|
|
|
|
|
|
|
|
|
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.setUsername("admin"); |
|
|
|
|
userModel.setDeptIdList(depts); |
|
|
|
|
models.add(userModel); |
|
|
|
|
}else { |
|
|
|
|
for (UserModel model : models) { |
|
|
|
|
if ("admin".equals(model.getUsername())){ |
|
|
|
|
model.setDeptIdList(depts); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
log.info("models={}",models); |
|
|
|
|
return models; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private List<UserModel> getUserCompanyList(String company) { |
|
|
|
|
return baseMapper.getUserCompanyList(company); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private List<UserModel> getUserAuthList(String deptId,List<Long> deptIds) { |
|
|
|
|
return baseMapper.getUserAuthList(deptId,deptIds); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private MenuModel setMetnuRedis(long userId) { |
|
|
|
|
MenuModel menuModel = new MenuModel(); |
|
|
|
|
List<SysMenuEntity> userMenuList = sysMenuService.getUserMenuList(userId); |
|
|
|
|