diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/RoleFunctionController.java b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/RoleFunctionController.java index 8293f3784..9d6a7bb27 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/controller/RoleFunctionController.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/controller/RoleFunctionController.java @@ -6,6 +6,8 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.response.HttpResult; import com.njcn.common.utils.HttpResultUtil; import com.njcn.common.utils.LogUtil; +import com.njcn.user.pojo.po.Function; +import com.njcn.user.pojo.vo.FunctionVO; import com.njcn.user.service.IRoleFunctionService; import com.njcn.web.controller.BaseController; import io.swagger.annotations.Api; @@ -42,10 +44,10 @@ public class RoleFunctionController extends BaseController { @PostMapping("/getFunctionsByRoleIndex") @ApiOperation("根据角色id查询相关联的资源") @ApiImplicitParam(name = "id", value = "角色id", required = true) - public HttpResult> getFunctionsByRoleIndex(@RequestParam("id") String id) { + public HttpResult> getFunctionsByRoleIndex(@RequestParam("id") String id) { String methodDescribe = getMethodDescribe("getFunctionsByRoleIndex"); LogUtil.njcnDebug(log, "{},传入的角色id:{}", methodDescribe,id); - List list = roleFunctionService.getFunctionsByRoleIndex(id); + List list = roleFunctionService.getFunctionsByRoleIndex(id); if(list.isEmpty()){ return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.NO_DATA, list, methodDescribe); }else { diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/FunctionMapper.java b/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/FunctionMapper.java index 77a40e38a..cf13ea993 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/FunctionMapper.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/FunctionMapper.java @@ -23,4 +23,6 @@ public interface FunctionMapper extends BaseMapper { List getUserFunctionsByList(@Param("list")List functionList); + List getByList(@Param("list")List functionList); + } diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/mapping/FunctionMapper.xml b/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/mapping/FunctionMapper.xml index dca916bdd..6c0e6210a 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/mapping/FunctionMapper.xml +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/mapper/mapping/FunctionMapper.xml @@ -60,4 +60,24 @@ + + diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/service/IFunctionService.java b/pqs-user/user-boot/src/main/java/com/njcn/user/service/IFunctionService.java index dccf2a6f1..cbc314a31 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/service/IFunctionService.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/service/IFunctionService.java @@ -113,4 +113,10 @@ public interface IFunctionService extends IService { */ List getUserFunctionTree(); + /** + * 根据菜单集合获取数据 + * @author xy + */ + List getFunctionByList(List list); + } diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/service/IRoleFunctionService.java b/pqs-user/user-boot/src/main/java/com/njcn/user/service/IRoleFunctionService.java index 69211fa04..e0abee405 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/service/IRoleFunctionService.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/service/IRoleFunctionService.java @@ -1,7 +1,9 @@ package com.njcn.user.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.njcn.user.pojo.po.Function; import com.njcn.user.pojo.po.RoleFunction; +import com.njcn.user.pojo.vo.FunctionVO; import java.util.List; @@ -14,7 +16,7 @@ import java.util.List; * @since 2021-12-13 */ public interface IRoleFunctionService extends IService { - List getFunctionsByRoleIndex(String id); + List getFunctionsByRoleIndex(String id); /** * 功能描述: 根据角色集合获取菜单方法 diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/FunctionServiceImpl.java b/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/FunctionServiceImpl.java index b503b8399..4e1690a89 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/FunctionServiceImpl.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/FunctionServiceImpl.java @@ -236,6 +236,11 @@ public class FunctionServiceImpl extends ServiceImpl i return result; } + @Override + public List getFunctionByList(List list) { + return this.lambdaQuery().in(Function::getId,list).list(); + } + /** * 根据角色删除资源 * @param roleIndex diff --git a/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/RoleFunctionServiceImpl.java b/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/RoleFunctionServiceImpl.java index ebc4ac52c..d774a2c80 100644 --- a/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/RoleFunctionServiceImpl.java +++ b/pqs-user/user-boot/src/main/java/com/njcn/user/service/impl/RoleFunctionServiceImpl.java @@ -1,10 +1,16 @@ package com.njcn.user.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.njcn.user.mapper.FunctionMapper; import com.njcn.user.mapper.RoleFunctionMapper; +import com.njcn.user.pojo.po.Function; import com.njcn.user.pojo.po.RoleFunction; +import com.njcn.user.pojo.vo.FunctionVO; +import com.njcn.user.service.IFunctionService; import com.njcn.user.service.IRoleFunctionService; +import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import java.util.ArrayList; @@ -20,15 +26,22 @@ import java.util.stream.Collectors; * @since 2021-12-13 */ @Service +@AllArgsConstructor public class RoleFunctionServiceImpl extends ServiceImpl implements IRoleFunctionService { + private final FunctionMapper functionMapper; + @Override - public List getFunctionsByRoleIndex(String id) { + public List getFunctionsByRoleIndex(String id) { + List result = new ArrayList<>(); List functionList = new ArrayList<>(); QueryWrapper componentQueryWrapper = new QueryWrapper<>(); componentQueryWrapper.eq("sys_role_function.role_id",id); functionList = this.baseMapper.selectList(componentQueryWrapper).stream().map(RoleFunction::getFunctionId).collect(Collectors.toList()); - return functionList; + if (CollectionUtil.isNotEmpty(functionList)){ + result = functionMapper.getByList(functionList); + } + return result; } @Override