From 5fdfa6d4bfdb656255732e0bed2fcefb922ff439 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期四, 20 七月 2023 15:08:53 +0800 Subject: [PATCH] 根据角色ID查询资源 --- src/main/java/com/moon/server/entity/sys/RoleResEntity.java | 40 ++++++++++++++----- src/main/java/com/moon/server/controller/sys/RoleResController.java | 16 ++++++++ src/main/java/com/moon/server/mapper/sys/RoleResMapper.java | 10 ++++ src/main/java/com/moon/server/service/sys/RoleResService.java | 9 +++- src/main/java/com/moon/server/service/sys/ProxyService.java | 2 pom.xml | 11 +++++ src/main/resources/mapper/sys/RoleResMapper.xml | 20 ++++++--- 7 files changed, 86 insertions(+), 22 deletions(-) diff --git a/pom.xml b/pom.xml index df89ebd..00b069f 100644 --- a/pom.xml +++ b/pom.xml @@ -86,6 +86,17 @@ <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> + <exclusions> + <!--杩囨护lettuce锛屼娇鐢╦edis浣滀负redis瀹㈡埛绔�--> + <exclusion> + <groupId>io.lettuce</groupId> + <artifactId>lettuce-core</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>redis.clients</groupId> + <artifactId>jedis</artifactId> </dependency> <!--postgresql--> <dependency> diff --git a/src/main/java/com/moon/server/controller/sys/RoleResController.java b/src/main/java/com/moon/server/controller/sys/RoleResController.java index f46065e..0df9031 100644 --- a/src/main/java/com/moon/server/controller/sys/RoleResController.java +++ b/src/main/java/com/moon/server/controller/sys/RoleResController.java @@ -36,6 +36,22 @@ PermsService permsService; @SysLog() + @ApiOperation(value = "鏍规嵁瑙掕壊ID鏌ヨ璧勬簮") + @ApiImplicitParams({ + @ApiImplicitParam(name = "roleid", value = "瑙掕壊ID", dataType = "Integer", paramType = "query", example = "1") + }) + @GetMapping(value = "/selectResByRole") + public ResponseMsg<List<RoleResEntity>> selectResByRole(Integer roleid) { + try { + List<RoleResEntity> rs = roleResService.selectResByRole(roleid); + + return success(null == rs ? 0 : rs.size(), rs); + } catch (Exception ex) { + return fail(ex, null); + } + } + + @SysLog() @ApiOperation(value = "鏌ヨ璁板綍鏁�") @ApiImplicitParams({ @ApiImplicitParam(name = "roleid", value = "瑙掕壊ID", dataType = "Integer", paramType = "query", required = false, example = "") diff --git a/src/main/java/com/moon/server/entity/sys/RoleResEntity.java b/src/main/java/com/moon/server/entity/sys/RoleResEntity.java index 3349223..c7f04c3 100644 --- a/src/main/java/com/moon/server/entity/sys/RoleResEntity.java +++ b/src/main/java/com/moon/server/entity/sys/RoleResEntity.java @@ -24,11 +24,13 @@ private Timestamp updateTime; - private String resName; + private String cnName; -private String server; + private Integer pid; + private Integer level; + private Integer sort; public RoleResEntity() { } @@ -89,19 +91,35 @@ this.updateTime = updateTime; } - public String getResName() { - return resName; + public String getCnName() { + return cnName; } - public void setResName(String resName) { - this.resName = resName; - } - public String getServer() { - return server; + public void setCnName(String cnName) { + this.cnName = cnName; } - public void setServer(String server) { - this.server = server; + public Integer getPid() { + return pid; } + public void setPid(Integer pid) { + this.pid = pid; + } + + public Integer getLevel() { + return level; + } + + public void setLevel(Integer level) { + this.level = level; + } + + public Integer getSort() { + return sort; + } + + public void setSort(Integer sort) { + this.sort = sort; + } } diff --git a/src/main/java/com/moon/server/mapper/sys/RoleResMapper.java b/src/main/java/com/moon/server/mapper/sys/RoleResMapper.java index c2f7c38..b442ffd 100644 --- a/src/main/java/com/moon/server/mapper/sys/RoleResMapper.java +++ b/src/main/java/com/moon/server/mapper/sys/RoleResMapper.java @@ -14,6 +14,14 @@ @Repository public interface RoleResMapper { /** + * 鏍规嵁瑙掕壊ID鏌ヨ璧勬簮 + * + * @param roleid + * @return + */ + public List<RoleResEntity> selectResByRole(Integer roleid); + + /** * 鏌ヨ璁板綍鏁� * * @param roleid 瑙掕壊ID @@ -24,7 +32,7 @@ /** * 鍒嗛〉鏌ヨ * - * @param roleid 瑙掕壊ID + * @param roleid 瑙掕壊ID * @param limit 璁板綍鏁� * @param offset 鍋忕Щ閲� * @return 鍒楄〃 diff --git a/src/main/java/com/moon/server/service/sys/ProxyService.java b/src/main/java/com/moon/server/service/sys/ProxyService.java index be70788..ba3845e 100644 --- a/src/main/java/com/moon/server/service/sys/ProxyService.java +++ b/src/main/java/com/moon/server/service/sys/ProxyService.java @@ -57,7 +57,7 @@ // 9.鑾峰彇璧勬簮瀹炰綋 ResEntity entity = getResEntity(ue, resId); - if (null == entity) { + if (null == entity || entity.getType() != 3|| StringHelper.isNull(entity.getProxy())||StringHelper.isNull(entity.getUrl())) { WebHelper.writeStr2Page(res, ILLEGAL_RESOURCE); return; } diff --git a/src/main/java/com/moon/server/service/sys/RoleResService.java b/src/main/java/com/moon/server/service/sys/RoleResService.java index de4900a..92bcc7d 100644 --- a/src/main/java/com/moon/server/service/sys/RoleResService.java +++ b/src/main/java/com/moon/server/service/sys/RoleResService.java @@ -2,9 +2,9 @@ import com.moon.server.entity.sys.RoleResEntity; import com.moon.server.mapper.sys.RoleResMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.util.List; /** @@ -13,10 +13,15 @@ */ @Service public class RoleResService implements RoleResMapper { - @Autowired + @Resource RoleResMapper roleResMapper; @Override + public List<RoleResEntity> selectResByRole(Integer roleid) { + return roleResMapper.selectResByRole(roleid); + } + + @Override public Integer selectCount(Integer roleid) { return roleResMapper.selectCount(roleid); } diff --git a/src/main/resources/mapper/sys/RoleResMapper.xml b/src/main/resources/mapper/sys/RoleResMapper.xml index 2084631..1638a1f 100644 --- a/src/main/resources/mapper/sys/RoleResMapper.xml +++ b/src/main/resources/mapper/sys/RoleResMapper.xml @@ -1,6 +1,12 @@ <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.moon.server.mapper.sys.RoleResMapper"> + <select id="selectResByRole" resultType="com.moon.server.entity.sys.RoleResEntity"> + with rs as (select id, resid from lf.sys_role_res where roleid = #{roleid}) + select (select id from rs b where b.resid = a.id) "id", a.id "resid", a.cn_name, a.pid, a.level, a.sort + from lf.sys_res a; + </select> + <select id="selectCount" resultType="java.lang.Integer"> select count(*) from lf.sys_role_res <where> @@ -11,14 +17,14 @@ </select> <select id="selectByPage" resultType="com.moon.server.entity.sys.RoleResEntity"> - select a.*,b.name as resName from lf.sys_role_res a inner join lf.sys_res b - on a.resid = b.id + select a.* + from lf.sys_role_res a <where> <if test="roleid != null"> a.roleid = #{roleid} </if> </where> - order by id + order by a.id limit #{limit} offset #{offset} </select> @@ -27,7 +33,7 @@ </select> <select id="selectById" resultType="com.moon.server.entity.sys.RoleResEntity"> - select * from lf.sys_role_res where id = #{id} + select * from lf.sys_role_res where id = #{id}; </select> <insert id="insert" parameterType="com.moon.server.entity.sys.RoleResEntity"> @@ -58,9 +64,9 @@ </delete> <update id="update"> - update lf.sys_role_res - set roleid=#{roleid},resid=#{resid},update_user=#{updateUser},update_time=now() - where id=#{id} + update lf.sys_role_res + set roleid=#{roleid},resid=#{resid},update_user=#{updateUser},update_time=now() + where id=#{id} </update> <update id="updates"> -- Gitblit v1.9.3