From 83cc589740899a441685a9350b85925fa8fd0a3b Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期六, 18 二月 2023 14:03:27 +0800 Subject: [PATCH] 1 --- src/main/java/com/lf/server/mapper/data/DirMapper.java | 8 ++++ src/main/resources/mapper/data/DirMapper.xml | 9 ++++ data/update.sql | 65 ++++++++++++++------------------ src/main/java/com/lf/server/service/all/BaseUploadService.java | 8 ++- src/main/java/com/lf/server/service/data/DirService.java | 5 ++ 5 files changed, 55 insertions(+), 40 deletions(-) diff --git a/data/update.sql b/data/update.sql index ef543a9..87b9655 100644 --- a/data/update.sql +++ b/data/update.sql @@ -204,7 +204,34 @@ order by c.id limit 1; select * from lf.sys_role; ---------------------------------------------------------- 09 淇敼琛ㄧ粨鏋� +--------------------------------------------------------- 09 +select * from lf.sys_dir +select * from lf.sys_meta order by id desc; --1062,1398 + + + + + +--------------------------------------------------------- +-- 0100000000,02000000,030000,040100,0100000002,02000002,040102,0100000003,02000003,0100000001,02000001,040101,030001,01,02,02000001 +select * from lf.sys_meta where dircode like '01%' or dircode like '02%' or dircode like '030000%' + or dircode like '030001%' or dircode like '040100%' or dircode like '040101%' or dircode like '040102%'; + +select code "key", name "value" from lf.sys_dir where pid = 0 and id > 1; +select code "key", name "value" from lf.sys_dir where pid = 1; +select (select string_agg(code, ',') from lf.sys_dir where name = a.name) "key", name "value" from lf.sys_dir a + where name in ('娴嬮噺锛圗SV锛�', '鍕樺療锛圗GE锛�', '鍦扮伨锛圗GD锛�', '娲炲簱锛圗GD锛�') group by name order by name; + +select count(*) from bd.dlg_25w_aanp where 1 = 1 + +select a.*, fn_tab_count(a.ns, a.tab, '1=1') "rows" from +(select distinct ns,tab,fn_get_entity(tab) entity,tab_desc,tableType from lf.sys_dict +order by tab +limit 10 offset 0) a + +select dirid,depid from bd.dlg_25w_resa group by dirid,depid +select * from lf.sys_dict where tab='dlg_25w_resa' +--------------------------------------------------------- A0 淇敼琛ㄧ粨鏋� -- drop function fn_alter_tab_fields(); create or replace function fn_alter_tab_fields() returns integer as $$ @@ -251,39 +278,3 @@ select gid,depid,dirid from bd.dlg_25w_resa limit 10; select gid,depid,dirid from bd.dlg_25w_boul limit 10; --------------------------------------------------------- -select count(*) from bd.b_borehole; - -select gid,depid,dirid,verid from bd.b_borehole; -- 357824 -select * from lf.sys_dir where id=0; -select * from lf.sys_dep where id=0; ---------------------------------------------------------- --- 0100000000,02000000,030000,040100,0100000002,02000002,040102,0100000003,02000003,0100000001,02000001,040101,030001,01,02,02000001 -select * from lf.sys_meta where dircode like '01%' or dircode like '02%' or dircode like '030000%' - or dircode like '030001%' or dircode like '040100%' or dircode like '040101%' or dircode like '040102%'; - -select code "key", name "value" from lf.sys_dir where pid = 0 and id > 1; -select code "key", name "value" from lf.sys_dir where pid = 1; -select (select string_agg(code, ',') from lf.sys_dir where name = a.name) "key", name "value" from lf.sys_dir a - where name in ('娴嬮噺锛圗SV锛�', '鍕樺療锛圗GE锛�', '鍦扮伨锛圗GD锛�', '娲炲簱锛圗GD锛�') group by name order by name; - -select count(*) from bd.dlg_25w_aanp where 1 = 1 - -select a.*, fn_tab_count(a.ns, a.tab, '1=1') "rows" from -(select distinct ns,tab,fn_get_entity(tab) entity,tab_desc,tableType from lf.sys_dict -order by tab -limit 10 offset 0) a - -select dirid,depid from bd.dlg_25w_resa group by dirid,depid -select * from lf.sys_dict where tab='dlg_25w_resa' - - - - - - - - - - - - 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 255e6d5..2e08807 100644 --- a/src/main/java/com/lf/server/mapper/data/DirMapper.java +++ b/src/main/java/com/lf/server/mapper/data/DirMapper.java @@ -99,4 +99,12 @@ * @return */ public List<DirEntity> selectDirRecursive(String name); + + /** + * 閫掑綊鏌ヨ + * + * @param id + * @return + */ + public List<DirEntity> selectRecursiveById(Integer id); } diff --git a/src/main/java/com/lf/server/service/all/BaseUploadService.java b/src/main/java/com/lf/server/service/all/BaseUploadService.java index 2d88ea8..414654a 100644 --- a/src/main/java/com/lf/server/service/all/BaseUploadService.java +++ b/src/main/java/com/lf/server/service/all/BaseUploadService.java @@ -196,7 +196,7 @@ } List<MetaFileEntity> list = new ArrayList<>(); - List<DirEntity> dirs = dirService.selectDirRecursive(dir.getName()); + List<DirEntity> dirs = dirService.selectRecursiveById(dir.getId()); for (MetaFileEntity meta : metas) { meta.setEventid(StringHelper.getGuid()); meta.setDircode(dir.getCode()); @@ -353,8 +353,10 @@ filePath = filePath.replace("/", "\\"); } + fileName = fileName.toLowerCase(); + filePath = filePath.toLowerCase(); for (DirEntity entity : dirs) { - if (filePath.contains(entity.getFullName() + "\\" + fileName)) { + if (filePath.contains(entity.getFullName().toLowerCase() + "\\" + fileName)) { return entity.getCode(); } } @@ -514,7 +516,7 @@ * Enumeration<String> attributes = req.getAttributeNames(); */ public Map<String, String> getParams(StandardMultipartHttpServletRequest req) { - Map<String, String> map = new HashMap<String, String>(3); + Map<String, String> map = new HashMap<>(3); Enumeration<String> enumeration = req.getParameterNames(); while (enumeration.hasMoreElements()) { 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 37686af..e09e139 100644 --- a/src/main/java/com/lf/server/service/data/DirService.java +++ b/src/main/java/com/lf/server/service/data/DirService.java @@ -72,4 +72,9 @@ public List<DirEntity> selectDirRecursive(String name) { return dirMapper.selectDirRecursive(name); } + + @Override + public List<DirEntity> selectRecursiveById(Integer id) { + return dirMapper.selectRecursiveById(id); + } } diff --git a/src/main/resources/mapper/data/DirMapper.xml b/src/main/resources/mapper/data/DirMapper.xml index 5de7d96..bbfa9e2 100644 --- a/src/main/resources/mapper/data/DirMapper.xml +++ b/src/main/resources/mapper/data/DirMapper.xml @@ -25,6 +25,15 @@ ) select * from rs order by order_num; </select> + + <select id="selectRecursiveById" resultType="com.lf.server.entity.data.DirEntity"> + with recursive rs as( + select a.*, fn_get_fullname(a.code, 2) fullName from lf.sys_dir a where id = #{id} + union + select b.*, fn_get_fullname(b.code, 2) fullName from lf.sys_dir b, rs c where b.pid = c.id + ) + select * from rs order by order_num; + </select> <!-- 鎻掑叆涓�鏉� --> <insert id="insert" parameterType="com.lf.server.entity.data.DirEntity"> <selectKey resultType="java.lang.Integer" order="AFTER" keyProperty="id"> -- Gitblit v1.9.3