From e54482b4adb770966a35cb84e7da2425f6574158 Mon Sep 17 00:00:00 2001 From: fengshuonan <sn93@qq.com> Date: Sat, 19 Dec 2020 17:22:03 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90resource=E3=80=91=E6=95=B4=E7=90=86res?= =?UTF-8?q?ource=E6=A8=A1=E5=9D=97=E7=9A=84=E5=AD=97=E6=AE=B5=E5=92=8C?= =?UTF-8?q?=E4=B8=9A=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/pojo/resource/ResourceDefinition.java | 47 +++++++++---------- .../resource/scanner/ApiResourceScanner.java | 17 ++++--- .../scanner/DefaultResourceCollector.java | 10 ++-- .../controller/ResourceController.java | 28 +++++++++++ .../resource/modular/entity/SysResource.java | 22 ++++----- .../modular/factory/ResourceFactory.java | 28 +++++------ .../mapper/mapping/SysResourceMapper.xml | 23 --------- .../service/impl/SysResourceServiceImpl.java | 36 +++++--------- 8 files changed, 93 insertions(+), 118 deletions(-) diff --git a/kernel-d-scanner/scanner-api/src/main/java/cn/stylefeng/roses/kernel/resource/api/pojo/resource/ResourceDefinition.java b/kernel-d-scanner/scanner-api/src/main/java/cn/stylefeng/roses/kernel/resource/api/pojo/resource/ResourceDefinition.java index a55bdb36d..55917d3f7 100644 --- a/kernel-d-scanner/scanner-api/src/main/java/cn/stylefeng/roses/kernel/resource/api/pojo/resource/ResourceDefinition.java +++ b/kernel-d-scanner/scanner-api/src/main/java/cn/stylefeng/roses/kernel/resource/api/pojo/resource/ResourceDefinition.java @@ -20,6 +20,16 @@ public class ResourceDefinition implements Serializable { */ private String appCode; + /** + * 资源的标识 + */ + private String resourceCode; + + /** + * 资源名称 + */ + private String resourceName; + /** * 项目编码(如果您不设置的话,默认使用spring.application.name填充) * <p> @@ -50,14 +60,9 @@ public class ResourceDefinition implements Serializable { private String modularName; /** - * 资源的标识 + * 初始化资源的机器的ip地址 */ - private String code; - - /** - * 资源名称 - */ - private String name; + private String ipAddress; /** * 资源的请求路径 @@ -69,30 +74,15 @@ public class ResourceDefinition implements Serializable { */ private String httpMethod; - /** - * 是否是菜单(true-是,false-否) - */ - private Boolean menuFlag; - /** * 是否需要登录 */ - private Boolean requiredLogin; + private Boolean requiredLoginFlag; /** * 是否需要鉴权 */ - private Boolean requiredPermission; - - /** - * 资源添加日期 - */ - private Date createTime; - - /** - * 初始化资源的机器的ip地址 - */ - private String ipAddress; + private Boolean requiredPermissionFlag; /** * 需要进行参数校验的分组 @@ -102,11 +92,16 @@ public class ResourceDefinition implements Serializable { /** * 接口参数的字段描述 */ - private Set<FieldMetadata> paramFieldMetadata; + private Set<FieldMetadata> paramFieldDescriptions; /** * 接口返回结果的字段描述 */ - private Set<FieldMetadata> responseFieldMetadata; + private Set<FieldMetadata> responseFieldDescriptions; + + /** + * 资源添加日期 + */ + private Date createTime; } diff --git a/kernel-d-scanner/scanner-sdk-scanner/src/main/java/cn/stylefeng/roses/kernel/resource/scanner/ApiResourceScanner.java b/kernel-d-scanner/scanner-sdk-scanner/src/main/java/cn/stylefeng/roses/kernel/resource/scanner/ApiResourceScanner.java index b95208e60..b27f19f8e 100644 --- a/kernel-d-scanner/scanner-sdk-scanner/src/main/java/cn/stylefeng/roses/kernel/resource/scanner/ApiResourceScanner.java +++ b/kernel-d-scanner/scanner-sdk-scanner/src/main/java/cn/stylefeng/roses/kernel/resource/scanner/ApiResourceScanner.java @@ -206,9 +206,9 @@ public class ApiResourceScanner implements BeanPostProcessor { // 如果没有填写code则用"模块名称_方法名称"为默认的标识 String code = invokeAnnotationMethod(apiResource, "code", String.class); if (StrUtil.isEmpty(code)) { - resourceDefinition.setCode(resourceDefinition.getAppCode() + scannerProperties.getLinkSymbol() + StrUtil.toUnderlineCase(modular) + scannerProperties.getLinkSymbol() + StrUtil.toUnderlineCase(method.getName())); + resourceDefinition.setResourceCode(resourceDefinition.getAppCode() + scannerProperties.getLinkSymbol() + StrUtil.toUnderlineCase(modular) + scannerProperties.getLinkSymbol() + StrUtil.toUnderlineCase(method.getName())); } else { - resourceDefinition.setCode(resourceDefinition.getAppCode() + scannerProperties.getLinkSymbol() + StrUtil.toUnderlineCase(modular) + scannerProperties.getLinkSymbol() + StrUtil.toUnderlineCase(code)); + resourceDefinition.setResourceCode(resourceDefinition.getAppCode() + scannerProperties.getLinkSymbol() + StrUtil.toUnderlineCase(modular) + scannerProperties.getLinkSymbol() + StrUtil.toUnderlineCase(code)); } // 填充其他属性 @@ -219,10 +219,9 @@ public class ApiResourceScanner implements BeanPostProcessor { Boolean requiredLogin = invokeAnnotationMethod(apiResource, "requiredLogin", Boolean.class); Boolean requiredPermission = invokeAnnotationMethod(apiResource, "requiredPermission", Boolean.class); - resourceDefinition.setRequiredLogin(requiredLogin); - resourceDefinition.setRequiredPermission(requiredPermission); - resourceDefinition.setMenuFlag(menuFlag); - resourceDefinition.setName(name); + resourceDefinition.setRequiredLoginFlag(requiredLogin); + resourceDefinition.setRequiredPermissionFlag(requiredPermission); + resourceDefinition.setResourceName(name); resourceDefinition.setUrl(getControllerClassRequestPath(clazz, path[0])); StringBuilder methodNames = new StringBuilder(); for (RequestMethod requestMethod : requestMethods) { @@ -257,15 +256,15 @@ public class ApiResourceScanner implements BeanPostProcessor { // @ApiResource注解上标识了responseClass属性,则用responseClass的值为准,否则按真实方法的返回值class Class<?> responseClass = invokeAnnotationMethod(apiResource, "responseClass", Class.class); if (!Void.class.equals(responseClass)) { - resourceDefinition.setResponseFieldMetadata(ClassReflectUtil.getClassFieldDescription(responseClass)); + resourceDefinition.setResponseFieldDescriptions(ClassReflectUtil.getClassFieldDescription(responseClass)); } else { Class<?> methodReturnClass = MethodReflectUtil.getMethodReturnClass(method); - resourceDefinition.setResponseFieldMetadata(ClassReflectUtil.getClassFieldDescription(methodReturnClass)); + resourceDefinition.setResponseFieldDescriptions(ClassReflectUtil.getClassFieldDescription(methodReturnClass)); } // 填充方法的请求参数字段的详细信息 Class<?> firstParamClass = MethodReflectUtil.getMethodFirstParamClass(method); - resourceDefinition.setParamFieldMetadata(ClassReflectUtil.getClassFieldDescription(firstParamClass)); + resourceDefinition.setParamFieldDescriptions(ClassReflectUtil.getClassFieldDescription(firstParamClass)); return resourceDefinition; } diff --git a/kernel-d-scanner/scanner-sdk-scanner/src/main/java/cn/stylefeng/roses/kernel/resource/scanner/DefaultResourceCollector.java b/kernel-d-scanner/scanner-sdk-scanner/src/main/java/cn/stylefeng/roses/kernel/resource/scanner/DefaultResourceCollector.java index b377d89a8..be03444a9 100644 --- a/kernel-d-scanner/scanner-sdk-scanner/src/main/java/cn/stylefeng/roses/kernel/resource/scanner/DefaultResourceCollector.java +++ b/kernel-d-scanner/scanner-sdk-scanner/src/main/java/cn/stylefeng/roses/kernel/resource/scanner/DefaultResourceCollector.java @@ -39,25 +39,25 @@ public class DefaultResourceCollector implements ResourceCollectorApi { public void collectResources(List<ResourceDefinition> apiResource) { if (apiResource != null && apiResource.size() > 0) { for (ResourceDefinition resourceDefinition : apiResource) { - ResourceDefinition alreadyFlag = resourceDefinitions.get(resourceDefinition.getCode()); + ResourceDefinition alreadyFlag = resourceDefinitions.get(resourceDefinition.getResourceCode()); if (alreadyFlag != null) { throw new RuntimeException("资源扫描过程中存在重复资源!\n已存在资源:" + alreadyFlag + "\n新资源为: " + resourceDefinition); } - resourceDefinitions.put(resourceDefinition.getCode(), resourceDefinition); + resourceDefinitions.put(resourceDefinition.getResourceCode(), resourceDefinition); urlDefineResources.put(resourceDefinition.getUrl(), resourceDefinition); // 存储模块资源 Map<String, ResourceDefinition> modularResources = modularResourceDefinitions.get(StrUtil.toUnderlineCase(resourceDefinition.getModularCode())); if (modularResources == null) { modularResources = new HashMap<>(); - modularResources.put(resourceDefinition.getCode(), resourceDefinition); + modularResources.put(resourceDefinition.getResourceCode(), resourceDefinition); modularResourceDefinitions.put(StrUtil.toUnderlineCase(resourceDefinition.getModularCode()), modularResources); } else { - modularResources.put(resourceDefinition.getCode(), resourceDefinition); + modularResources.put(resourceDefinition.getResourceCode(), resourceDefinition); } // 添加资源code-中文名称字典 - this.bindResourceName(resourceDefinition.getCode(), resourceDefinition.getName()); + this.bindResourceName(resourceDefinition.getResourceCode(), resourceDefinition.getResourceName()); } } } diff --git a/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/controller/ResourceController.java b/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/controller/ResourceController.java index 303f2ada0..6472b3629 100644 --- a/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/controller/ResourceController.java +++ b/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/controller/ResourceController.java @@ -2,13 +2,17 @@ package cn.stylefeng.roses.kernel.resource.modular.controller; import cn.stylefeng.roses.kernel.resource.api.annotation.ApiResource; import cn.stylefeng.roses.kernel.resource.api.annotation.GetResource; +import cn.stylefeng.roses.kernel.resource.api.pojo.resource.ResourceDefinition; import cn.stylefeng.roses.kernel.resource.modular.entity.SysResource; +import cn.stylefeng.roses.kernel.resource.modular.pojo.ResourceTreeNode; import cn.stylefeng.roses.kernel.resource.modular.service.SysResourceService; +import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest; import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData; import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData; import cn.stylefeng.roses.kernel.system.pojo.resource.request.ResourceRequest; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RestController; import java.util.List; @@ -50,4 +54,28 @@ public class ResourceController { return new SuccessResponseData(menuResourceList); } + /** + * 获取资源树列表,用于接口文档页面 + * + * @author fengshuonan + * @date 2020/12/18 15:50 + */ + @GetResource(name = "获取资源树列表,用于接口文档页面", path = "/resource/getTree", requiredLogin = false, requiredPermission = false) + public ResponseData getTree() { + List<ResourceTreeNode> resourceTree = sysResourceService.getResourceTree(); + return new SuccessResponseData(resourceTree); + } + + /** + * 获取接口详情 + * + * @author fengshuonan + * @date 2020/12/18 15:50 + */ + @GetResource(name = "获取接口详情", path = "/resource/getDetail", requiredLogin = false, requiredPermission = false) + public ResponseData getResourceDetail(@Validated(BaseRequest.detail.class) ResourceRequest resourceRequest) { + ResourceDefinition resourceDetail = sysResourceService.getResourceDetail(resourceRequest); + return new SuccessResponseData(resourceDetail); + } + } diff --git a/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/entity/SysResource.java b/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/entity/SysResource.java index 04f6e0e4b..b0345b3cd 100644 --- a/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/entity/SysResource.java +++ b/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/entity/SysResource.java @@ -21,8 +21,8 @@ public class SysResource extends BaseEntity { /** * 资源id */ - @TableId("id") - private String id; + @TableId("resource_id") + private Long resourceId; /** * 应用编码 @@ -33,14 +33,14 @@ public class SysResource extends BaseEntity { /** * 资源编码 */ - @TableField("code") - private String code; + @TableField("resource_code") + private String resourceCode; /** * 资源名称 */ - @TableField("name") - private String name; + @TableField("resource_name") + private String resourceName; /** * 项目编码 @@ -91,19 +91,13 @@ public class SysResource extends BaseEntity { private String httpMethod; /** - * 是否是方法(Y-页面,N-API接口) - */ - @TableField("menu_flag") - private String menuFlag; - - /** - * 是否需要登录(Y-是,N-否) + * 是否需要登录:Y-是,N-否 */ @TableField("required_login_flag") private String requiredLoginFlag; /** - * 是否需要鉴权(Y-是,N-否) + * 是否需要鉴权:Y-是,N-否 */ @TableField("required_permission_flag") private String requiredPermissionFlag; diff --git a/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/factory/ResourceFactory.java b/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/factory/ResourceFactory.java index e23c30599..f2fec0c80 100644 --- a/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/factory/ResourceFactory.java +++ b/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/factory/ResourceFactory.java @@ -30,21 +30,15 @@ public class ResourceFactory { public static SysResource createResource(ResourceDefinition resourceDefinition) { SysResource resource = new SysResource(); BeanUtils.copyProperties(resourceDefinition, resource); - resource.setId(resourceDefinition.getCode()); + resource.setResourceCode(resourceDefinition.getResourceCode()); - if (resourceDefinition.getMenuFlag()) { - resource.setMenuFlag(YesOrNotEnum.Y.name()); - } else { - resource.setMenuFlag(YesOrNotEnum.N.name()); - } - - if (resourceDefinition.getRequiredLogin()) { + if (resourceDefinition.getRequiredLoginFlag()) { resource.setRequiredLoginFlag(YesOrNotEnum.Y.name()); } else { resource.setRequiredLoginFlag(YesOrNotEnum.N.name()); } - if (resourceDefinition.getRequiredPermission()) { + if (resourceDefinition.getRequiredPermissionFlag()) { resource.setRequiredPermissionFlag(YesOrNotEnum.Y.name()); } else { resource.setRequiredPermissionFlag(YesOrNotEnum.N.name()); @@ -56,13 +50,13 @@ public class ResourceFactory { } // 转化接口参数的字段描述 - if (ObjectUtil.isNotEmpty(resourceDefinition.getParamFieldMetadata())) { - resource.setParamFieldDescriptions(JSON.toJSONString(resourceDefinition.getParamFieldMetadata(), SerializerFeature.WriteClassName)); + if (ObjectUtil.isNotEmpty(resourceDefinition.getParamFieldDescriptions())) { + resource.setParamFieldDescriptions(JSON.toJSONString(resourceDefinition.getParamFieldDescriptions(), SerializerFeature.WriteClassName)); } // 转化接口返回结果的字段描述 - if (ObjectUtil.isNotEmpty(resourceDefinition.getResponseFieldMetadata())) { - resource.setResponseFieldDescriptions(JSON.toJSONString(resourceDefinition.getResponseFieldMetadata(), SerializerFeature.WriteClassName)); + if (ObjectUtil.isNotEmpty(resourceDefinition.getResponseFieldDescriptions())) { + resource.setResponseFieldDescriptions(JSON.toJSONString(resourceDefinition.getResponseFieldDescriptions(), SerializerFeature.WriteClassName)); } return resource; @@ -82,10 +76,10 @@ public class ResourceFactory { BeanUtil.copyProperties(sysResource, resourceDefinition, CopyOptions.create().ignoreError()); // 设置是否需要登录标识,Y为需要登录 - resourceDefinition.setRequiredLogin(YesOrNotEnum.Y.name().equals(sysResource.getRequiredLoginFlag())); + resourceDefinition.setRequiredLoginFlag(YesOrNotEnum.Y.name().equals(sysResource.getRequiredLoginFlag())); // 设置是否需要权限认证标识,Y为需要权限认证 - resourceDefinition.setRequiredPermission(YesOrNotEnum.Y.name().equals(sysResource.getRequiredPermissionFlag())); + resourceDefinition.setRequiredPermissionFlag(YesOrNotEnum.Y.name().equals(sysResource.getRequiredPermissionFlag())); // 转化校验组 if (ObjectUtil.isNotEmpty(sysResource.getValidateGroups())) { @@ -94,12 +88,12 @@ public class ResourceFactory { // 转化接口参数的字段描述 if (ObjectUtil.isNotEmpty(sysResource.getParamFieldDescriptions())) { - resourceDefinition.setParamFieldMetadata(JSON.parseObject(sysResource.getParamFieldDescriptions(), Set.class, Feature.SupportAutoType)); + resourceDefinition.setParamFieldDescriptions(JSON.parseObject(sysResource.getParamFieldDescriptions(), Set.class, Feature.SupportAutoType)); } // 转化接口返回结果的字段描述 if (ObjectUtil.isNotEmpty(sysResource.getResponseFieldDescriptions())) { - resourceDefinition.setResponseFieldMetadata(JSON.parseObject(sysResource.getResponseFieldDescriptions(), Set.class, Feature.SupportAutoType)); + resourceDefinition.setResponseFieldDescriptions(JSON.parseObject(sysResource.getResponseFieldDescriptions(), Set.class, Feature.SupportAutoType)); } return resourceDefinition; diff --git a/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/mapper/mapping/SysResourceMapper.xml b/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/mapper/mapping/SysResourceMapper.xml index 8618cf6cd..8d3bf96bf 100644 --- a/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/mapper/mapping/SysResourceMapper.xml +++ b/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/mapper/mapping/SysResourceMapper.xml @@ -2,27 +2,4 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <mapper namespace="cn.stylefeng.roses.kernel.resource.modular.mapper.SysResourceMapper"> - <!-- 通用查询映射结果 --> - <resultMap id="BaseResultMap" type="cn.stylefeng.roses.kernel.resource.modular.entity.SysResource"> - <id column="id" property="id"/> - <result column="app_code" property="appCode"/> - <result column="code" property="code"/> - <result column="name" property="name"/> - <result column="project_code" property="projectCode"/> - <result column="class_name" property="className"/> - <result column="method_name" property="methodName"/> - <result column="modular_code" property="modularCode"/> - <result column="modular_name" property="modularName"/> - <result column="ip_address" property="ipAddress"/> - <result column="url" property="url"/> - <result column="http_method" property="httpMethod"/> - <result column="menu_flag" property="menuFlag"/> - <result column="required_login_flag" property="requiredLoginFlag"/> - <result column="required_permission_flag" property="requiredPermissionFlag"/> - <result column="create_user" property="createUser"/> - <result column="create_time" property="createTime"/> - <result column="update_user" property="updateUser"/> - <result column="update_time" property="updateTime"/> - </resultMap> - </mapper> \ No newline at end of file diff --git a/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/service/impl/SysResourceServiceImpl.java b/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/service/impl/SysResourceServiceImpl.java index 7056f218f..867a7fd61 100644 --- a/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/service/impl/SysResourceServiceImpl.java +++ b/kernel-s-system/system-business-resource/src/main/java/cn/stylefeng/roses/kernel/resource/modular/service/impl/SysResourceServiceImpl.java @@ -60,18 +60,15 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe LambdaQueryWrapper<SysResource> wrapper = createWrapper(resourceRequest); - // 查询为菜单的 - wrapper.eq(SysResource::getMenuFlag, YesOrNotEnum.Y.getCode()); - // 只查询code和name - wrapper.select(SysResource::getCode, SysResource::getName); + wrapper.select(SysResource::getResourceCode, SysResource::getResourceName); List<SysResource> menuResourceList = this.list(wrapper); // 增加返回虚拟菜单的情况 SysResource sysResource = new SysResource(); - sysResource.setCode(""); - sysResource.setName("虚拟目录(空)"); + sysResource.setResourceCode(""); + sysResource.setResourceName("虚拟目录(空)"); menuResourceList.add(0, sysResource); return menuResourceList; @@ -89,7 +86,7 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe // 1. 获取所有的资源 LambdaQueryWrapper<SysResource> sysResourceLambdaQueryWrapper = new LambdaQueryWrapper<>(); - sysResourceLambdaQueryWrapper.select(SysResource::getAppCode, SysResource::getModularCode, SysResource::getModularName, SysResource::getCode, SysResource::getUrl, SysResource::getName); + sysResourceLambdaQueryWrapper.select(SysResource::getAppCode, SysResource::getModularCode, SysResource::getModularName, SysResource::getResourceCode, SysResource::getUrl, SysResource::getResourceName); List<SysResource> allResource = this.list(sysResourceLambdaQueryWrapper); // 2. 按应用和模块编码设置map @@ -102,7 +99,7 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe @Override public ResourceDefinition getResourceDetail(ResourceRequest resourceRequest) { LambdaQueryWrapper<SysResource> sysResourceLambdaQueryWrapper = new LambdaQueryWrapper<>(); - sysResourceLambdaQueryWrapper.eq(SysResource::getCode, resourceRequest.getResourceCode()); + sysResourceLambdaQueryWrapper.eq(SysResource::getResourceCode, resourceRequest.getResourceCode()); SysResource sysResource = this.getOne(sysResourceLambdaQueryWrapper); if (sysResource != null) { return ResourceFactory.createResourceDefinition(sysResource); @@ -161,15 +158,11 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe // 获取是否需要登录的标记, 判断是否需要登录,如果是则设置为true,否则为false String requiredLoginFlag = resource.getRequiredLoginFlag(); - resourceDefinition.setRequiredLogin(YesOrNotEnum.Y.name().equals(requiredLoginFlag)); + resourceDefinition.setRequiredLoginFlag(YesOrNotEnum.Y.name().equals(requiredLoginFlag)); // 获取请求权限的标记,判断是否有权限,如果有则设置为true,否则为false String requiredPermissionFlag = resource.getRequiredPermissionFlag(); - resourceDefinition.setRequiredPermission(YesOrNotEnum.Y.name().equals(requiredPermissionFlag)); - - // 获取是否是菜单的flag,如果是则设置为true,否则为false - String menuFlag = resource.getMenuFlag(); - resourceDefinition.setMenuFlag(YesOrNotEnum.Y.name().equals(menuFlag)); + resourceDefinition.setRequiredPermissionFlag(YesOrNotEnum.Y.name().equals(requiredPermissionFlag)); return resourceDefinition; } @@ -187,7 +180,7 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe // 拼接in条件 LambdaQueryWrapper<SysResource> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.in(SysResource::getId, resourceIds); + queryWrapper.in(SysResource::getResourceId, resourceIds); // 获取资源详情 List<SysResource> list = this.list(queryWrapper); @@ -210,7 +203,7 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe // 拼接in条件 LambdaQueryWrapper<SysResource> queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.in(SysResource::getId, resourceIds); + queryWrapper.in(SysResource::getResourceId, resourceIds); queryWrapper.select(SysResource::getUrl); // 获取资源详情 @@ -235,12 +228,7 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe // 根据资源名称 if (ObjectUtil.isNotEmpty(resourceRequest.getResourceName())) { - queryWrapper.like(SysResource::getName, resourceRequest.getResourceName()); - } - - // 根据是否是菜单查询 - if (ObjectUtil.isNotEmpty(resourceRequest.getMenuFlag())) { - queryWrapper.like(SysResource::getMenuFlag, resourceRequest.getMenuFlag()); + queryWrapper.like(SysResource::getResourceName, resourceRequest.getResourceName()); } } @@ -276,8 +264,8 @@ public class SysResourceServiceImpl extends ServiceImpl<SysResourceMapper, SysRe // 将当前资源放入资源集合 ResourceTreeNode resourceTreeNode = new ResourceTreeNode(); resourceTreeNode.setResourceFlag(true); - resourceTreeNode.setNodeName(sysResource.getUrl() + "(" + sysResource.getName() + ")"); - resourceTreeNode.setCode(sysResource.getCode()); + resourceTreeNode.setNodeName(sysResource.getUrl() + "(" + sysResource.getResourceName() + ")"); + resourceTreeNode.setCode(sysResource.getResourceCode()); resourceTreeNode.setParentCode(sysResource.getModularCode()); resourceTreeNodes.add(resourceTreeNode);