getUserIdByRegionIdWithRolePriority

This commit is contained in:
wangxiaopeng
2024-04-19 17:53:28 +08:00
parent 36a7365811
commit f3dd491565
2 changed files with 27 additions and 0 deletions

View File

@@ -1,12 +1,15 @@
package com.cool.store.service.impl;
import com.cool.store.entity.EnterpriseUserDO;
import com.cool.store.entity.SysRoleDO;
import com.cool.store.enums.Role;
import com.cool.store.enums.RoleSourceEnum;
import com.cool.store.enums.UserRoleEnum;
import com.cool.store.mapper.SysRoleMapper;
import com.cool.store.service.SysRoleService;
import com.cool.store.service.UserAuthMappingService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.ListUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
@@ -28,6 +31,9 @@ public class SysRoleServiceImpl implements SysRoleService {
@Resource
private SysRoleMapper sysRoleMapper;
@Resource
private UserAuthMappingService userAuthMappingService;
@Override
public Boolean checkIsAdmin(String userId) {
// 1.取出所有用户角色
@@ -50,6 +56,15 @@ public class SysRoleServiceImpl implements SysRoleService {
@Override
public String getUserIdByRegionIdWithRolePriority(Long regionId, List<UserRoleEnum> roleList) {
if(CollectionUtils.isEmpty(roleList)){
return null;
}
for(UserRoleEnum roleEnum: roleList){
EnterpriseUserDO enterpriseUserDO = userAuthMappingService.getUserByRoleEnumAndRegionId(roleEnum, regionId);
if(enterpriseUserDO != null){
return enterpriseUserDO.getUserId();
}
}
return null;
}

View File

@@ -1,14 +1,18 @@
package com.cool.store.controller.webb;
import com.cool.store.enums.UserRoleEnum;
import com.cool.store.response.ResponseResult;
import com.cool.store.service.SysRoleService;
import com.google.common.collect.Lists;
import io.swagger.annotations.Api;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@RestController
@@ -24,4 +28,12 @@ public class SysRoleController {
return ResponseResult.success(sysRoleService.getXfsgRoles());
}
@GetMapping(path = "/getUserIdByRegionIdWithRolePriority")
public ResponseResult<String> getUserIdByRegionIdWithRolePriority(@RequestParam(value = "regionId", required = true) Long regionId) {
List<UserRoleEnum > roleList = Lists.newArrayList();
roleList.add(UserRoleEnum.THEATER_MANAGER);
roleList.add(UserRoleEnum.OPERATIONS_MANAGER);
roleList.add(UserRoleEnum.REGION_MANAGER);
return ResponseResult.success(sysRoleService.getUserIdByRegionIdWithRolePriority(regionId, roleList));
}
}