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/resources/mapper/data/DirMapper.xml | 69 +++++++++++++++++++++++++++------- 1 files changed, 55 insertions(+), 14 deletions(-) diff --git a/src/main/resources/mapper/data/DirMapper.xml b/src/main/resources/mapper/data/DirMapper.xml index e28e032..8a4106c 100644 --- a/src/main/resources/mapper/data/DirMapper.xml +++ b/src/main/resources/mapper/data/DirMapper.xml @@ -4,39 +4,80 @@ <select id="selectDir" resultType="com.lf.server.entity.data.DirEntity"> select a.*, fn_get_fullname(a.code, 2) fullName from lf.sys_dir a where id = #{id} </select> + <select id="selectByCode" resultType="com.lf.server.entity.data.DirEntity"> + select a.*, fn_get_fullname(a.code, 2) fullName from lf.sys_dir a where code = #{code} + </select> <select id="selectDirAll" resultType="com.lf.server.entity.data.DirEntity"> select a.*, fn_get_fullname(a.code, 2) fullName from lf.sys_dir a order by order_num; </select> <select id="selectDirRoot" resultType="com.lf.server.entity.data.DirEntity"> - select a.*, fn_get_fullname(a.code, 2) fullName from lf.sys_dir a where pid = 0 order by order_num; + select a.*, fn_get_fullname(a.code, 2) fullName + from lf.sys_dir a + where pid = 0 + order by order_num, code; </select> <select id="selectProject" resultType="com.lf.server.entity.data.DirEntity"> - select a.*, fn_get_fullname(a.code, 2) fullName from lf.sys_dir a where pid = 0 and id > 1 order by order_num; + select a.*, fn_get_fullname(a.code, 2) fullName + from lf.sys_dir a + <where> + pid = 0 and id > 1 + <if test="name != null"> + and upper(name) like #{name} + </if> + </where> + order by order_num, code; </select> <select id="selectDirRecursive" 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 name = #{name} - 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 a.*, fn_get_fullname(a.code, 2) fullName from lf.sys_dir a where name = #{name} + 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, code; </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 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 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> + + <select id="selectMaxOrderNum" resultType="java.lang.Integer"> + select coalesce(max(order_num), 0) + 1 from lf.sys_dir; + </select> + + <select id="selectDirByName" resultType="com.lf.server.entity.data.DirEntity"> + select * from lf.sys_dir + <where> + upper(name) = #{name} + <if test="pid != null"> + and pid = #{pid} + </if> + </where> + </select> + + <select id="selectNameByCode" resultType="java.lang.String"> + select name from lf.sys_dir where code = #{code}; </select> <!-- 鎻掑叆涓�鏉� --> @@ -48,7 +89,7 @@ insert into lf.sys_dir (pid,name,exts,descr,level,order_num,create_user,create_time,checks,bak,code) values - (#{pid},#{name},#{exts},#{descr},#{level},#{orderNum},#{createUser},now(),#{checks},#{bak},#{code}) + (#{pid},#{name},#{exts},#{descr},#{level},#{orderNum},#{createUser},now(),#{checks},#{bak},#{code}); </insert> <!-- 鎻掑叆澶氭潯 --> @@ -61,7 +102,7 @@ </foreach> </insert> - <delete id="deleteDir" > + <delete id="deleteDir"> delete from lf.sys_dir where id = #{id} </delete> -- Gitblit v1.9.3