【7.6.0】更新公司返回部门名称

dev-7.6.0-portal
fengshuonan 2023-06-21 10:49:19 +08:00
parent f28cd8d10e
commit bd502d4723
2 changed files with 28 additions and 3 deletions

View File

@ -54,9 +54,16 @@ public class HrOrganizationDTO {
/**
*
* <p>
*
*/
private String orgName;
/**
*
*/
private String deptName;
/**
*
*/

View File

@ -31,6 +31,7 @@ import cn.stylefeng.roses.kernel.auth.api.pojo.login.LoginUser;
import cn.stylefeng.roses.kernel.cache.api.CacheOperatorApi;
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
import cn.stylefeng.roses.kernel.system.api.OrganizationServiceApi;
import cn.stylefeng.roses.kernel.system.api.enums.OrgTypeEnum;
import cn.stylefeng.roses.kernel.system.api.exception.SystemModularException;
import cn.stylefeng.roses.kernel.system.api.exception.enums.user.SysUserOrgExceptionEnum;
import cn.stylefeng.roses.kernel.system.api.pojo.organization.HrOrganizationDTO;
@ -235,12 +236,29 @@ public class SysUserOrgServiceServiceImpl extends ServiceImpl<SysUserOrgMapper,
userOrgResponse.setUserId(loginUser.getUserId());
List<SysUserOrg> sysUserOrgList = this.findList(userOrgResponse);
for (SysUserOrg sysUserOrg : sysUserOrgList) {
// 获取用户的公司信息
HrOrganizationDTO companyInfo = organizationServiceApi.getOrgCompanyInfo(sysUserOrg.getOrgId());
if (companyInfo == null) {
// 获取组织机构信息
Long orgId = sysUserOrg.getOrgId();
HrOrganizationDTO orgDetail = organizationServiceApi.getOrgDetail(orgId);
if (orgDetail == null) {
continue;
}
// 如果当前机构是公司,则直接填充公司信息
HrOrganizationDTO companyInfo = null;
if (OrgTypeEnum.COMPANY.getCode().equals(orgDetail.getOrgType())) {
companyInfo = orgDetail;
} else {
// 获取用户的公司信息
companyInfo = organizationServiceApi.getOrgCompanyInfo(sysUserOrg.getOrgId());
if (companyInfo == null) {
continue;
}
// 设置部门名称
companyInfo.setDeptName(orgDetail.getOrgName());
}
// 填充用户的职务名称positionName
companyInfo.setPositionName(hrPositionService.getPositionName(sysUserOrg.getPositionId()));