mirror of https://gitee.com/stylefeng/roses
【8.0】【sys】当前登录用户增加一个职务id字段
parent
0927501eac
commit
6464f90ba0
|
@ -73,6 +73,12 @@ public class LoginUser implements Serializable {
|
||||||
@ChineseDescription("当前用户激活的组织机构id(正在以哪个身份访问系统)")
|
@ChineseDescription("当前用户激活的组织机构id(正在以哪个身份访问系统)")
|
||||||
private Long currentOrgId;
|
private Long currentOrgId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 当前用户激活的职务id(正在以哪个身份访问系统)
|
||||||
|
*/
|
||||||
|
@ChineseDescription("当前用户激活的职务id(正在以哪个身份访问系统)")
|
||||||
|
private Long currentPositionId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 当前登录租户编码
|
* 当前登录租户编码
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -59,4 +59,12 @@ public interface SysUserOrgServiceApi {
|
||||||
*/
|
*/
|
||||||
List<Long> getPositionUserList(Long orgId, Long positionId);
|
List<Long> getPositionUserList(Long orgId, Long positionId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取用户在指定机构下的职务
|
||||||
|
*
|
||||||
|
* @author fengshuonan
|
||||||
|
* @since 2023/7/15 23:04
|
||||||
|
*/
|
||||||
|
Long getUserOrgPositionId(Long userId, Long orgId);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -229,6 +229,27 @@ public class SysUserOrgServiceImpl extends ServiceImpl<SysUserOrgMapper, SysUser
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Long getUserOrgPositionId(Long userId, Long orgId) {
|
||||||
|
|
||||||
|
if (ObjectUtil.isEmpty(userId) || ObjectUtil.isEmpty(orgId)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
SysUserOrgRequest sysUserOrgRequest = new SysUserOrgRequest();
|
||||||
|
sysUserOrgRequest.setUserId(userId);
|
||||||
|
sysUserOrgRequest.setOrgId(orgId);
|
||||||
|
LambdaQueryWrapper<SysUserOrg> wrapper = this.createWrapper(sysUserOrgRequest);
|
||||||
|
wrapper.select(SysUserOrg::getPositionId);
|
||||||
|
SysUserOrg sysUserOrg = this.getOne(wrapper, false);
|
||||||
|
|
||||||
|
if (sysUserOrg != null) {
|
||||||
|
return sysUserOrg.getPositionId();
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取信息
|
* 获取信息
|
||||||
*
|
*
|
||||||
|
@ -252,6 +273,9 @@ public class SysUserOrgServiceImpl extends ServiceImpl<SysUserOrgMapper, SysUser
|
||||||
private LambdaQueryWrapper<SysUserOrg> createWrapper(SysUserOrgRequest sysUserOrgRequest) {
|
private LambdaQueryWrapper<SysUserOrg> createWrapper(SysUserOrgRequest sysUserOrgRequest) {
|
||||||
LambdaQueryWrapper<SysUserOrg> queryWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<SysUserOrg> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
|
||||||
|
Long userId = sysUserOrgRequest.getUserId();
|
||||||
|
queryWrapper.eq(ObjectUtil.isNotNull(userId), SysUserOrg::getUserId, userId);
|
||||||
|
|
||||||
Long orgId = sysUserOrgRequest.getOrgId();
|
Long orgId = sysUserOrgRequest.getOrgId();
|
||||||
queryWrapper.eq(ObjectUtil.isNotNull(orgId), SysUserOrg::getOrgId, orgId);
|
queryWrapper.eq(ObjectUtil.isNotNull(orgId), SysUserOrg::getOrgId, orgId);
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,12 @@ public class IndexUserOrgInfo {
|
||||||
@ChineseDescription("组织机构id")
|
@ChineseDescription("组织机构id")
|
||||||
private Long orgId;
|
private Long orgId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 职务id,组织机构下对应的职务id
|
||||||
|
*/
|
||||||
|
@ChineseDescription("职务id,组织机构下对应的职务id")
|
||||||
|
private Long positionId;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 公司的名称
|
* 公司的名称
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -121,7 +121,13 @@ public class UserIndexInfoService {
|
||||||
throw new ServiceException(OrgExceptionEnum.UPDATE_LOGIN_USER_ORG_ERROR);
|
throw new ServiceException(OrgExceptionEnum.UPDATE_LOGIN_USER_ORG_ERROR);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 设置用户的当前组织机构id
|
||||||
loginUser.setCurrentOrgId(updateUserOrgAppRequest.getNewOrgId());
|
loginUser.setCurrentOrgId(updateUserOrgAppRequest.getNewOrgId());
|
||||||
|
|
||||||
|
// 设置用户在当前机构下的职位id
|
||||||
|
Long positionId = sysUserOrgServiceApi.getUserOrgPositionId(loginUser.getUserId(),
|
||||||
|
updateUserOrgAppRequest.getNewOrgId());
|
||||||
|
loginUser.setCurrentPositionId(positionId);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (updateUserOrgAppRequest.getNewAppId() != null) {
|
if (updateUserOrgAppRequest.getNewAppId() != null) {
|
||||||
|
@ -189,6 +195,8 @@ public class UserIndexInfoService {
|
||||||
|
|
||||||
indexUserOrgInfo.setCompanyName(userOrgItem.getCompanyName());
|
indexUserOrgInfo.setCompanyName(userOrgItem.getCompanyName());
|
||||||
indexUserOrgInfo.setDeptName(userOrgItem.getDeptName());
|
indexUserOrgInfo.setDeptName(userOrgItem.getDeptName());
|
||||||
|
|
||||||
|
indexUserOrgInfo.setPositionId(userOrgItem.getPositionId());
|
||||||
indexUserOrgInfo.setPositionName(userOrgItem.getPositionName());
|
indexUserOrgInfo.setPositionName(userOrgItem.getPositionName());
|
||||||
|
|
||||||
// 设置是否是主要任职部门
|
// 设置是否是主要任职部门
|
||||||
|
@ -206,6 +214,7 @@ public class UserIndexInfoService {
|
||||||
// 更新用户的当前组织机构id
|
// 更新用户的当前组织机构id
|
||||||
if (indexUserOrgInfo.getMainFlag()) {
|
if (indexUserOrgInfo.getMainFlag()) {
|
||||||
loginUser.setCurrentOrgId(indexUserOrgInfo.getOrgId());
|
loginUser.setCurrentOrgId(indexUserOrgInfo.getOrgId());
|
||||||
|
loginUser.setCurrentPositionId(indexUserOrgInfo.getPositionId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue