2026-07-16 11:21:59 +08:00
|
|
|
<?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.SysOperLogMapper">
|
|
|
|
|
|
|
|
|
|
<resultMap type="SysOperLog" id="SysOperLogResult">
|
|
|
|
|
<id property="operId" column="oper_id" />
|
|
|
|
|
<result property="title" column="title" />
|
|
|
|
|
<result property="businessType" column="business_type" />
|
|
|
|
|
<result property="method" column="method" />
|
|
|
|
|
<result property="requestMethod" column="request_method" />
|
|
|
|
|
<result property="operatorType" column="operator_type" />
|
|
|
|
|
<result property="operName" column="oper_name" />
|
|
|
|
|
<result property="deptName" column="dept_name" />
|
|
|
|
|
<result property="operUrl" column="oper_url" />
|
|
|
|
|
<result property="operIp" column="oper_ip" />
|
|
|
|
|
<result property="operLocation" column="oper_location" />
|
|
|
|
|
<result property="operParam" column="oper_param" />
|
|
|
|
|
<result property="jsonResult" column="json_result" />
|
|
|
|
|
<result property="status" column="status" />
|
|
|
|
|
<result property="errorMsg" column="error_msg" />
|
|
|
|
|
<result property="operTime" column="oper_time" />
|
|
|
|
|
<result property="costTime" column="cost_time" />
|
|
|
|
|
</resultMap>
|
|
|
|
|
|
|
|
|
|
<sql id="selectOperLogVo">
|
2026-09-15 16:41:53 +08:00
|
|
|
select sol.oper_id, sol.title, sol.business_type, sol.method, sol.request_method, sol.operator_type,
|
|
|
|
|
coalesce(su.nick_name, sol.oper_name) as oper_name, sol.dept_name, sol.oper_url, sol.oper_ip,
|
|
|
|
|
sol.oper_location, sol.oper_param, sol.json_result, sol.status, sol.error_msg, sol.oper_time, sol.cost_time
|
|
|
|
|
from sys_oper_log sol
|
|
|
|
|
left join sys_user su on su.user_name = sol.oper_name
|
2026-07-16 11:21:59 +08:00
|
|
|
</sql>
|
|
|
|
|
|
|
|
|
|
<insert id="insertOperlog" parameterType="SysOperLog">
|
|
|
|
|
insert into sys_oper_log(title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, cost_time, oper_time)
|
|
|
|
|
values (#{title}, #{businessType}, #{method}, #{requestMethod}, #{operatorType}, #{operName}, #{deptName}, #{operUrl}, #{operIp}, #{operLocation}, #{operParam}, #{jsonResult}, #{status}, #{errorMsg}, #{costTime}, sysdate())
|
|
|
|
|
</insert>
|
|
|
|
|
|
|
|
|
|
<select id="selectOperLogList" parameterType="SysOperLog" resultMap="SysOperLogResult">
|
|
|
|
|
<include refid="selectOperLogVo"/>
|
|
|
|
|
<where>
|
|
|
|
|
<if test="operIp != null and operIp != ''">
|
2026-09-15 16:41:53 +08:00
|
|
|
AND sol.oper_ip like concat('%', #{operIp}, '%')
|
2026-07-16 11:21:59 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="title != null and title != ''">
|
2026-09-15 16:41:53 +08:00
|
|
|
AND sol.title like concat('%', #{title}, '%')
|
2026-07-16 11:21:59 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="businessType != null">
|
2026-09-15 16:41:53 +08:00
|
|
|
AND sol.business_type = #{businessType}
|
2026-07-16 11:21:59 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="businessTypes != null and businessTypes.length > 0">
|
2026-09-15 16:41:53 +08:00
|
|
|
AND sol.business_type in
|
2026-07-16 11:21:59 +08:00
|
|
|
<foreach collection="businessTypes" item="businessType" open="(" separator="," close=")">
|
|
|
|
|
#{businessType}
|
|
|
|
|
</foreach>
|
|
|
|
|
</if>
|
|
|
|
|
<if test="status != null">
|
2026-09-15 16:41:53 +08:00
|
|
|
AND sol.status = #{status}
|
2026-07-16 11:21:59 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="operName != null and operName != ''">
|
2026-09-15 16:41:53 +08:00
|
|
|
AND (sol.oper_name like concat('%', #{operName}, '%')
|
|
|
|
|
OR su.nick_name like concat('%', #{operName}, '%'))
|
2026-07-16 11:21:59 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 -->
|
2026-09-15 16:41:53 +08:00
|
|
|
AND sol.oper_time >= #{params.beginTime}
|
2026-07-16 11:21:59 +08:00
|
|
|
</if>
|
|
|
|
|
<if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 -->
|
2026-09-15 16:41:53 +08:00
|
|
|
AND sol.oper_time <= #{params.endTime}
|
2026-07-16 11:21:59 +08:00
|
|
|
</if>
|
|
|
|
|
</where>
|
2026-09-15 16:41:53 +08:00
|
|
|
order by sol.oper_id desc
|
2026-07-16 11:21:59 +08:00
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<delete id="deleteOperLogByIds" parameterType="Long">
|
|
|
|
|
delete from sys_oper_log where oper_id in
|
|
|
|
|
<foreach collection="array" item="operId" open="(" separator="," close=")">
|
|
|
|
|
#{operId}
|
|
|
|
|
</foreach>
|
|
|
|
|
</delete>
|
|
|
|
|
|
|
|
|
|
<select id="selectOperLogById" parameterType="Long" resultMap="SysOperLogResult">
|
|
|
|
|
<include refid="selectOperLogVo"/>
|
2026-09-15 16:41:53 +08:00
|
|
|
where sol.oper_id = #{operId}
|
2026-07-16 11:21:59 +08:00
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<update id="cleanOperLog">
|
|
|
|
|
truncate table sys_oper_log
|
|
|
|
|
</update>
|
|
|
|
|
|
2026-09-15 16:41:53 +08:00
|
|
|
</mapper>
|