zhangf
2024-09-11 1a316551c8e46b793904090cfa84781bf77fef2a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?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.ruoyi.system.mapper.SysOperateTypeMapper">
 
    <resultMap type="com.ruoyi.system.domain.SysOperateType" id="SysOperateTypeResult">
        <id     property="id"     column="id"     />
        <result property="parentId"   column="parent_id"   />
        <result property="ancestors"  column="ancestors"   />
        <result property="code"   column="code"   />
        <result property="name"   column="name"   />
        <result property="type"     column="type"      />
        <result property="delFlag"    column="del_flag"    />
        <result property="createBy"   column="create_by"   />
        <result property="createTime" column="create_time" />
        <result property="updateBy"   column="update_by"   />
        <result property="updateTime" column="update_time" />
    </resultMap>
 
    <sql id="selectOperateTypeCommon">
        select id, parent_id, ancestors, code, name, type, del_flag, create_by, create_time,update_by,update_time
        from sys_operate_type
    </sql>
    <update id="updateOperateTypeChildren">
        update sys_dept set ancestors =
        <foreach collection="sysOperateTypes" item="item" index="index"
                 separator=" " open="case id" close="end">
            when #{item.id} then #{item.ancestors}
        </foreach>
        where id in
        <foreach collection="sysOperateTypes" item="item" index="index"
                 separator="," open="(" close=")">
            #{item.id}
        </foreach>
    </update>
    <delete id="deleteOperateTypeById">
        update sys_operate_type set del_flag = '2' where id = #{id}
    </delete>
 
    <select id="selectOperateTypeById" resultType="com.ruoyi.system.domain.SysOperateType">
        <include refid="selectOperateTypeCommon"/>
        where del_flag = '0'
        <if test="id != null">
            AND id = #{id}
        </if>
    </select>
 
    <select id="selectChildrenOperateTypeById" resultType="com.ruoyi.system.domain.SysOperateType">
        select * from sys_operate_type where find_in_set(#{id}, ancestors)
    </select>
    <select id="hasChildByOperateTypeId" resultType="java.lang.Integer">
        select count(1) from sys_operate_type
        where del_flag = '0' and parent_id = #{id} limit 1
    </select>
 
    <select id="selectOperateTypeByIds" resultType="com.ruoyi.system.domain.SysOperateType">
        <include refid="selectOperateTypeCommon"/>
        where del_flag = '0' and  id in
        <foreach collection="list" item="id" index="index"
                 separator="," open="(" close=")">
            #{id}
        </foreach>
    </select>
</mapper>