From 0c8cd957630d43aa71183d34ecb1faf60689f8a4 Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期三, 18 十二月 2024 11:30:15 +0800 Subject: [PATCH] 1 --- src/main/java/com/lf/server/mapper/data/DirMapper.java | 8 ++++++++ src/main/resources/mapper/data/DirMapper.xml | 9 +++++++++ src/main/java/com/lf/server/controller/data/DirController.java | 32 ++++++++++++++++++++++++++++++++ src/main/java/com/lf/server/service/data/DirService.java | 7 +++++++ 4 files changed, 56 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/lf/server/controller/data/DirController.java b/src/main/java/com/lf/server/controller/data/DirController.java index 550d4df..7444279 100644 --- a/src/main/java/com/lf/server/controller/data/DirController.java +++ b/src/main/java/com/lf/server/controller/data/DirController.java @@ -209,4 +209,36 @@ log.error(ex.getMessage(), ex); } } + + @SysLog() + @ApiOperation(value = "鏌ヨ椤圭洰") + @ApiImplicitParams({ + @ApiImplicitParam(name = "name", value = "鍚嶇О", dataType = "String", paramType = "query", example = "瑗�") + }) + @GetMapping(value = "/selectProject") + public ResponseMsg<List<DirEntity>> selectProject(String name) { + try { + List<DirEntity> list = dirService.selectProject(name); + + return success(list); + } catch (Exception ex) { + return fail(ex, null); + } + } + + @SysLog() + @ApiOperation(value = "閫掑綊鏌ヨ") + @ApiImplicitParams({ + @ApiImplicitParam(name = "pid", value = "鐖禝D", dataType = "Integer", paramType = "query", example = "1") + }) + @GetMapping(value = "/selectByPid") + public ResponseMsg<List<DirEntity>> selectByPid(int pid) { + try { + List<DirEntity> list = dirService.selectByPid(pid); + + return success(list); + } catch (Exception ex) { + return fail(ex, null); + } + } } diff --git a/src/main/java/com/lf/server/mapper/data/DirMapper.java b/src/main/java/com/lf/server/mapper/data/DirMapper.java index edd4793..9766c60 100644 --- a/src/main/java/com/lf/server/mapper/data/DirMapper.java +++ b/src/main/java/com/lf/server/mapper/data/DirMapper.java @@ -110,6 +110,14 @@ public List<DirEntity> selectRecursiveById(Integer id); /** + * 閫掑綊鏌ヨ + * + * @param pid + * @return + */ + public List<DirEntity> selectByPid(int pid); + + /** * 鏌ヨ椤圭洰鐩綍鏍� * * @return diff --git a/src/main/java/com/lf/server/service/data/DirService.java b/src/main/java/com/lf/server/service/data/DirService.java index d9fd76b..faac358 100644 --- a/src/main/java/com/lf/server/service/data/DirService.java +++ b/src/main/java/com/lf/server/service/data/DirService.java @@ -117,6 +117,13 @@ } @Override + public List<DirEntity> selectByPid(int pid) { + List<DirEntity> list = dirMapper.selectByPid(pid); + + return null == list ? new ArrayList<>() : list; + } + + @Override public List<DirEntity> selectDirsForPrj() { String key = RedisCacheKey.dataDirKey("selectDirsForPrj"); List<DirEntity> list = redisService.getListByKey(key); diff --git a/src/main/resources/mapper/data/DirMapper.xml b/src/main/resources/mapper/data/DirMapper.xml index b0affef..8a4106c 100644 --- a/src/main/resources/mapper/data/DirMapper.xml +++ b/src/main/resources/mapper/data/DirMapper.xml @@ -49,6 +49,15 @@ order by code; </select> + <select id="selectByPid" resultType="com.lf.server.entity.data.DirEntity"> + with recursive rs as( + select a.* from lf.sys_dir a where id = #{pid} + union + select b.* from lf.sys_dir b, rs c where b.pid = c.id) + select * from rs + order by code; + </select> + <select id="selectDirsForPrj" resultType="com.lf.server.entity.data.DirEntity"> select a.* from lf.sys_dir a where code not like '00%' order by code; </select> -- Gitblit v1.9.3