<?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.lf.server.mapper.data.DirMapper">
|
<select id="selectDir" resultType="com.lf.server.entity.data.DirEntity">
|
select a.*, fn_rec_query(a.id, 'dir') fullName from lf.sys_dir a where id = #{id}
|
</select>
|
|
<select id="selectDirAll" resultType="com.lf.server.entity.data.DirEntity">
|
select a.*, fn_rec_query(a.id, 'dir') fullName from lf.sys_dir a order by order_num;
|
</select>
|
|
<select id="selectDirRoot" resultType="com.lf.server.entity.data.DirEntity">
|
select a.*, fn_rec_query(a.id, 'dir') fullName from lf.sys_dir a where pid = 0 order by order_num;
|
</select>
|
|
<select id="selectDirRecursive" resultType="com.lf.server.entity.data.DirEntity">
|
with recursive rs as(
|
select a.*, fn_rec_query(a.id, 'dir') fullName from lf.sys_dir a where name = #{name}
|
union
|
select b.*, fn_rec_query(b.id, 'dir') fullName from lf.sys_dir b, rs c where b.pid = c.id
|
)
|
select * from rs order by order_num;
|
</select>
|
|
<insert id="insertDir" parameterType="com.lf.server.entity.data.DirEntity">
|
insert into lf.sys_dir
|
(pid,name,code,descr,level,order_num,create_user,create_time,bak)
|
values
|
(#{pid},#{name},#{code},#{descr},#{level} ,#{orderNum},#{createUser},now(),#{bak});
|
</insert>
|
|
<insert id="insertDirs">
|
insert into lf.sys_dir
|
(pid,name,code,descr,level,order_num,create_user,create_time,bak)
|
values
|
<foreach collection="list" item="item" index="index" separator=",">
|
(#{item.pid},#{item.name},#{item.code},#{item.descr},#{item.level}
|
,#{item.orderNum},#{item.createUser},now(),#{item.bak})
|
</foreach>
|
</insert>
|
|
<delete id="deleteDir" >
|
delete from lf.sys_dir where id = #{id}
|
</delete>
|
|
<delete id="deleteDirs">
|
delete from lf.sys_dir where id in
|
<foreach item="id" collection="ids" index="index" open="(" separator="," close=")">
|
#{id}
|
</foreach>
|
</delete>
|
|
<update id="updateDir">
|
update lf.sys_dir set pid=#{pid},name=#{name},code=#{code},descr=#{descr},level=#{level},order_num=#{orderNum},
|
update_user=#{updateUser},update_time=now(),bak=#{bak} where id=#{id}
|
</update>
|
|
<update id="updateDirs">
|
<foreach collection="list" item="item" index="index" separator=";">
|
update lf.sys_dir
|
<set>
|
pid=#{item.pid},name=#{item.name},code=#{item.code},descr=#{item.descr},level=#{item.level},
|
order_num=#{item.orderNum},update_user=#{item.updateUser},update_time=now(),bak=#{item.bak}
|
</set>
|
where id = #{item.id}
|
</foreach>
|
</update>
|
</mapper>
|