jinlin
2024-02-23 1772fc5e211f9e9e0ab4cdc6c29b436aac178c2a
zt/core/src/main/resources/mapper/log/SysLogOperationDao.xml
@@ -6,13 +6,13 @@
    <sql id="custom_where">
        <choose>
            <when test="startCreateTime!=null and endCreateTime!=null">
                and a.CREATE_DATE between #{startCreateTime} and #{endCreateTime}
                and a.create_date between #{startCreateTime} and #{endCreateTime}
            </when>
            <when test="startCreateTime!=null">
                and a.CREATE_DATE &gt;= #{startCreateTime}
                and a.create_date &gt;= #{startCreateTime}
            </when>
            <when test="endCreateTime!=null">
                and a.CREATE_DATE &lt;= #{endCreateTime}
                and a.create_date &lt;= #{endCreateTime}
            </when>
            <otherwise>
            </otherwise>
@@ -20,11 +20,8 @@
    </sql>
    <select id="getList" resultType="com.zt.modules.log.model.SysLogOperation">
        select * from (
        select a.*
        ,(SELECT replace(GROUP_CONCAT(aa.name),',',';') FROM SYS_ROLE aa,SYS_ROLE_USER bb WHERE aa.id=bb.ROLE_ID AND bb.USER_ID = a.CREATOR) AS role_names
        from SYS_LOG_OPERATION a
        ) a
            from sys_log_operation a
        <where>
            <if test="whereSql!=null">
                ${whereSql}
@@ -33,58 +30,38 @@
                and 1 = 1
            </if>
            <if test="action == 'xtbmybm'">
                and role_names NOT LIKE '%xtgly%'  OR role_names NOT LIKE '%xtsjy%'
                and REQUEST_URI not IN (
                SELECT
                a.DICT_LABEL AS urlLabel
                FROM
                SYS_DICT_DATA a,
                SYS_DICT_TYPE b
                WHERE 1=1
                AND b.DICT_TYPE = 'adminURL'
                AND b.ID = a.DICT_TYPE_ID
                AND b.IS_DELETE = 0
                )
                and a.creator not in (select user_id from sys_role_user
                where role_id in (select id from sys_role where code in ('xtglybm','xtbmybm','xtsjybm')))
            </if>
            <if test="action == 'xtsjybm'">
                and role_names LIKE '%xtgly%'  OR role_names LIKE '%xtsjy%'
                and REQUEST_URI IN (
                SELECT
                a.DICT_LABEL AS urlLabel
                FROM
                SYS_DICT_DATA a,
                SYS_DICT_TYPE b
                WHERE 1=1
                AND b.DICT_TYPE = 'adminURL'
                AND b.ID = a.DICT_TYPE_ID
                AND b.IS_DELETE = 0
                )
                and a.creator in (select user_id from sys_role_user
                where role_id in (select id from sys_role where code in ('xtglybm','xtbmybm')))
            </if>
            <if test="action == 'other'">
                and a.CREATOR = ${currentUserId}
                and a.creator = ${currentUserId}
            </if>
            <if test="status != null">
                and a.status = ${status}
            </if>
            <if test="startCreateTime!=null and endCreateTime!=null and startCreateTime!=''and endCreateTime!=''">
                and a.CREATE_DATE between #{startCreateTime} and #{endCreateTime}
                and a.create_date between #{startCreateTime} and #{endCreateTime}
            </if>
            <if test="startCreateTime!=null and startCreateTime!=''">
                and a.CREATE_DATE &gt;= #{startCreateTime}
                and a.create_date &gt;= #{startCreateTime}
            </if>
            <if test="endCreateTime!=null and endCreateTime!=''">
                and a.CREATE_DATE &lt;= #{endCreateTime}
                and a.create_date &lt;= #{endCreateTime}
            </if>
            and IS_DELETE = 0
            ORDER BY a.CREATE_DATE DESC
            and is_delete = 0
            ORDER BY a.create_date DESC
        </where>
    </select>
    <update id="deleteCondition">
        <foreach collection="list" item="item" index="index" open="" close="" separator=";">
        update SYS_LOG_OPERATION
        update sys_log_operation
        <set>
            IS_DELETE = 1
            is_delete = 1
        </set>
        where id = ${item.id}
        </foreach>