Commit a7cb5970 by guojuxing

根据人查询功能模块

parent 040d8030
......@@ -3,6 +3,7 @@ package com.gic.cloud.service;
import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.cloud.dto.FunctionDTO;
import com.gic.cloud.dto.FunctionModuleDTO;
import java.util.List;
......@@ -27,5 +28,5 @@ public interface FunctionApiService {
ServiceResponse<FunctionDTO> getFunction(Integer functionId);
ServiceResponse<FunctionDTO> getFunctionByUserId(Integer userId);
ServiceResponse<List<FunctionModuleDTO>> getFunctionByUserId(Integer userId);
}
......@@ -4,10 +4,13 @@ import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.cloud.constants.FunctionEnum;
import com.gic.cloud.dto.FunctionDTO;
import com.gic.cloud.dto.FunctionModuleDTO;
import com.gic.cloud.dto.UserDTO;
import com.gic.cloud.entity.TabSysFunction;
import com.gic.cloud.entity.TabSysFunctionModule;
import com.gic.cloud.entity.TabSysUser;
import com.gic.cloud.service.FunctionApiService;
import com.gic.cloud.service.FunctionModuleService;
import com.gic.cloud.service.FunctionService;
import com.gic.cloud.service.UserService;
import com.gic.commons.util.EntityUtil;
......@@ -28,6 +31,8 @@ public class FunctionApiServiceImpl implements FunctionApiService{
private FunctionService functionService;
@Autowired
private UserService userService;
@Autowired
private FunctionModuleService functionModuleService;
@Override
public ServiceResponse<Integer> saveFunction(FunctionDTO dto) {
......@@ -92,12 +97,23 @@ public class FunctionApiServiceImpl implements FunctionApiService{
}
@Override
public ServiceResponse<FunctionDTO> getFunctionByUserId(Integer userId) {
public ServiceResponse<List<FunctionModuleDTO>> getFunctionByUserId(Integer userId) {
TabSysUser user = userService.getUser(userId);
if (user == null) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "用户不存在");
}
return getFunction(user.getFunctionAuthId());
TabSysFunction record = functionService.getFunction(user.getFunctionAuthId());
if (record != null) {
List<TabSysFunctionModule> moduleList = functionModuleService.listFunctionModule(null);
Map<String, TabSysFunctionModule> map = moduleList.stream().collect(Collectors.toMap(e -> e.getFunctionModuleCode(), e -> e));
return ServiceResponse.success(Arrays.stream(record.getFunctionComponent()
.split("_"))
.filter(e -> StringUtils.isNotBlank(e))
.map(e -> EntityUtil.changeEntityNew(FunctionModuleDTO.class, map.get(e)))
.collect(Collectors.toList()));
}
return ServiceResponse.success(Collections.emptyList());
}
private ServiceResponse<Void> validParam(FunctionDTO dto) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment