<?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="cn.wisenergy.chnmuseum.party.mapper.AuditMapper">

    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="cn.wisenergy.chnmuseum.party.model.Audit">
        <id column="id" property="id"/>
        <result column="content" property="content"/>
        <result column="organ_id" property="organId"/>
        <result column="ref_item_id" property="refItemId"/>
        <result column="user_id" property="userId"/>
        <result column="type" property="type"/>
        <result column="operation" property="operation"/>
        <result column="status" property="status"/>
        <result column="create_time" property="createTime"/>
        <result column="update_time" property="updateTime"/>
        <result column="is_deleted" property="isDeleted"/>
        <result column="remarks" property="remarks"/>
    </resultMap>

    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, content, organ_id, ref_item_id, user_id, type, operation, status, create_time, update_time, is_deleted, remarks
    </sql>

    <select id="getUserList" resultMap="BaseResultMap">
        select a.*,o.name org_name,u.user_name user_name
        from t_audit a
        left join t_organ o on o.id = a.organ_id
        left join t_user u on u.id = a.user_id
        where 1 = 1
        <if test="user.userName != null and user.userName != ''">
            and (u.user_name LIKE concat('%', #{user.userName}, '%') or a.content LIKE concat('%', #{user.userName}, '%'))
        </if>
        <if test="user.status != null and user.status != ''">
            and a.status = #{user.status}
        </if>
        <if test="user.auditStatus != null and user.auditStatus != ''">
            and a.level = #{user.auditStatus}
        </if>
         <if test="user.orgCode != null and user.orgCode != ''">
            and o.code LIKE concat(#{user.orgCode}, '%')
        </if>
        and a.is_deleted = false
        and a.type = 'ACCOUNT'
        and a.operation = 'DISABLE'
        order by a.create_time desc
    </select>

</mapper>