| <?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"      /> | 
|     </resultMap> | 
|   | 
|     <sql id="selectOperLogVo"> | 
|         select oper_id, 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, oper_time | 
|         from sys_oper_log | 
|     </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, oper_time) | 
|         values (#{title}, #{businessType}, #{method}, #{requestMethod}, #{operatorType}, #{operName}, #{deptName}, #{operUrl}, #{operIp}, #{operLocation}, #{operParam}, #{jsonResult}, #{status}, #{errorMsg}, now()) | 
|     </insert> | 
|      | 
|     <select id="selectOperLogList" parameterType="SysOperLog" resultMap="SysOperLogResult"> | 
|         <include refid="selectOperLogVo"/> | 
|         <where> | 
|             <if test="title != null and title != ''"> | 
|                 AND title like ('%${title}%') | 
|             </if> | 
|             <if test="businessType != null"> | 
|                 AND business_type = #{businessType} | 
|             </if> | 
|             <if test="businessTypes != null and businessTypes.length > 0"> | 
|                 AND business_type in | 
|                 <foreach collection="businessTypes" item="businessType" open="(" separator="," close=")"> | 
|                      #{businessType} | 
|                 </foreach>  | 
|             </if> | 
|             <if test="status != null"> | 
|                 AND status = #{status} | 
|             </if> | 
|             <if test="operName != null and operName != ''"> | 
|                 AND oper_name like ('%${operName}%') | 
|             </if> | 
|             <if test="params.beginTime != null and params.beginTime != ''"><!-- 开始时间检索 --> | 
|                 and oper_time >= to_timestamp(#{params.beginTime},'yyyy-MM-DD') | 
|             </if> | 
|             <if test="params.endTime != null and params.endTime != ''"><!-- 结束时间检索 --> | 
|                 and oper_time <= to_timestamp(#{params.endTime},'yyyy-MM-DD') | 
|             </if> | 
|         </where> | 
|         order by oper_id desc | 
|     </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"/> | 
|         where oper_id = #{operId} | 
|     </select> | 
|      | 
|     <update id="cleanOperLog"> | 
|         truncate table sys_oper_log | 
|     </update> | 
|   | 
| </mapper>  |