getUserByRoleEnumAndRegionId

This commit is contained in:
wangxiaopeng
2024-04-19 10:08:28 +08:00
parent fdb98aff43
commit c89d713f09
6 changed files with 45 additions and 7 deletions

View File

@@ -35,7 +35,16 @@ public interface UserAuthMappingService {
* @param wantShopAreaId
* @return
*/
EnterpriseUserDO getUserByRoleEnumAndAreaId(UserRoleEnum userRoleEnum, Long wantShopAreaId);
EnterpriseUserDO getUserByRoleEnumAndWantShopAreaId(UserRoleEnum userRoleEnum, Long wantShopAreaId);
/**
* 获取有区域权限和职位 的人
* @param userRoleEnum
* @param regionId
* @return
*/
EnterpriseUserDO getUserByRoleEnumAndRegionId(UserRoleEnum userRoleEnum, Long regionId);
/**
* 跟进角色和战区获取用户id

View File

@@ -75,7 +75,7 @@ public class JoinIntentionServiceImpl extends LineFlowService implements JoinInt
}
LineInfoDO lineInfoDO = lineInfoMapper.getByLineId(request.getLineId());
if ((Objects.nonNull(request.getAreaCode()) && Objects.nonNull(lineInfoDO) && StringUtils.isBlank(lineInfoDO.getInvestmentManager())) || (Objects.isNull(lineInfoDO))){
EnterpriseUserDO userByRoleNameAndAreaId = userAuthMappingService.getUserByRoleEnumAndAreaId(UserRoleEnum.INVESTMENT_COMMISSIONER, Long.valueOf(request.getAreaCode()));
EnterpriseUserDO userByRoleNameAndAreaId = userAuthMappingService.getUserByRoleEnumAndWantShopAreaId(UserRoleEnum.INVESTMENT_COMMISSIONER, Long.valueOf(request.getAreaCode()));
lineInfoParam.setInvestmentManager(userByRoleNameAndAreaId.getUserId());
}
//todo 目前写死为进入私海

View File

@@ -129,7 +129,7 @@ public class LineInterviewServiceImpl extends LineFlowService implements LineInt
InterviewTypeEnum interviewType = WorkflowSubStageEnum.getInterviewType(lineInfo.getWorkflowSubStage());
String interviewerUserId = lineInfo.getInvestmentManager(), firstInterviewer = null, secondInterviewer = null;
if(!InterviewTypeEnum.MEET.equals(interviewType)){
EnterpriseUserDO enterpriseUser = userAuthMappingService.getUserByRoleEnumAndAreaId(UserRoleEnum.REGION_MANAGER, lineInfo.getWantShopAreaId());
EnterpriseUserDO enterpriseUser = userAuthMappingService.getUserByRoleEnumAndWantShopAreaId(UserRoleEnum.REGION_MANAGER, lineInfo.getWantShopAreaId());
interviewerUserId = Optional.ofNullable(enterpriseUser).map(EnterpriseUserDO::getUserId).orElse(null);
}
firstInterviewer = InterviewTypeEnum.INTERVIEW.equals(interviewType) ? interviewerUserId : null;
@@ -419,7 +419,7 @@ public class LineInterviewServiceImpl extends LineFlowService implements LineInt
updateLine.setId(lineInfo.getId());
updateLine.setWorkflowStage(WorkflowStageEnum.STORE.getCode());
updateLine.setWorkflowSubStageStatus(WorkflowSubStageStatusEnum.SECOND_INTERVIEWS_125.getCode());
EnterpriseUserDO enterpriseUser = userAuthMappingService.getUserByRoleEnumAndAreaId(UserRoleEnum.SELECT_SITE_MANAGER, lineInfo.getWantShopAreaId());
EnterpriseUserDO enterpriseUser = userAuthMappingService.getUserByRoleEnumAndWantShopAreaId(UserRoleEnum.SELECT_SITE_MANAGER, lineInfo.getWantShopAreaId());
String developmentManager = Optional.ofNullable(enterpriseUser).map(EnterpriseUserDO::getUserId).orElse(null);
updateLine.setDevelopmentManager(developmentManager);
updateLine.setUpdateUserId(userId);

View File

@@ -405,7 +405,7 @@ public class LineServiceImpl implements LineService {
if (StringUtils.isNotBlank(addLineRequest.getInvestmentManagerUserId())){
userId = addLineRequest.getInvestmentManagerUserId();
}else {
EnterpriseUserDO user = userAuthMappingService.getUserByRoleEnumAndAreaId(UserRoleEnum.INVESTMENT_COMMISSIONER, addLineRequest.getWantShopAreaId());
EnterpriseUserDO user = userAuthMappingService.getUserByRoleEnumAndWantShopAreaId(UserRoleEnum.INVESTMENT_COMMISSIONER, addLineRequest.getWantShopAreaId());
userId = user.getUserId();
}
Long regionId = regionAreaConfigDao.getByWantShopAreaId(addLineRequest.getWantShopAreaId());

View File

@@ -86,7 +86,7 @@ public class UserAuthMappingServiceImpl implements UserAuthMappingService {
* @return
*/
@Override
public EnterpriseUserDO getUserByRoleEnumAndAreaId(UserRoleEnum userRoleEnum, Long wantShopAreaId) {
public EnterpriseUserDO getUserByRoleEnumAndWantShopAreaId(UserRoleEnum userRoleEnum, Long wantShopAreaId) {
log.info("getUserByRoleEnumAndAreaId{}wantShopAreaId{}", userRoleEnum, wantShopAreaId);
if(Objects.isNull(userRoleEnum) || Objects.isNull(wantShopAreaId)){
return null;
@@ -124,6 +124,35 @@ public class UserAuthMappingServiceImpl implements UserAuthMappingService {
return userDO;
}
/**
* 获取有区域权限和职位 的人
* @param userRoleEnum
* @param regionId
* @return
*/
@Override
public EnterpriseUserDO getUserByRoleEnumAndRegionId(UserRoleEnum userRoleEnum, Long regionId) {
// 查找有区域权限的人
List<String> authRegionUserIdList = authWarRegionUser(regionId);
if(CollectionUtils.isEmpty(authRegionUserIdList)){
return null;
}
Long roleId = userRoleEnum.getCode();
List<String> hasRoleUserIdList = sysRoleMapper.getPositionUserIds(Collections.singletonList(String.valueOf(roleId)));
if(CollectionUtils.isEmpty(hasRoleUserIdList)){
return null;
}
authRegionUserIdList.retainAll(hasRoleUserIdList);
if(CollectionUtils.isEmpty(authRegionUserIdList)){
return null;
}
if(CollectionUtils.isNotEmpty(authRegionUserIdList)){
EnterpriseUserDO userDO = enterpriseUserDAO.getUserInfoById(authRegionUserIdList.get(0));
return userDO;
}
return null;
}
private EnterpriseUserDO fillDefaultUser(UserRoleEnum userRoleEnum) {
// 如果找不到招商专员,则分配给默认的招商经理
if(UserRoleEnum.INVESTMENT_COMMISSIONER.equals(userRoleEnum)){

View File

@@ -35,7 +35,7 @@ public class UserAuthMappingController {
public ResponseResult<EnterpriseUserDO> getUserByRoleNameAndAreaId(@RequestParam(value = "roleName", required = true) String roleName,
@RequestParam(value = "wantShopAreaId", required = true) Long wantShopAreaId) {
UserRoleEnum roleEnum = UserRoleEnum.getByDesc(roleName);
return ResponseResult.success(userAuthMappingService.getUserByRoleEnumAndAreaId(roleEnum, wantShopAreaId));
return ResponseResult.success(userAuthMappingService.getUserByRoleEnumAndWantShopAreaId(roleEnum, wantShopAreaId));
}
@ApiOperation("找意向区域")