<?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.landtool.lanbase.modules.log.dao.LogLogininfoDao">
|
|
<!-- 可根据自己的需求,是否要使用 -->
|
<resultMap type="com.landtool.lanbase.modules.log.entity.LogLogininfo" id="logininfoMap">
|
<result property="loginid" column="LOGINID"/>
|
<result property="userid" column="USERID"/>
|
<result property="appid" column="APPID"/>
|
<result property="loginname" column="LOGINNAME"/>
|
<result property="loginip" column="LOGINIP"/>
|
<result property="logindate" column="LOGINDATE"/>
|
<result property="logintype" column="LOGINTYPE"/>
|
<result property="rstatus" column="RSTATUS"/>
|
<result property="broserversion" column="BROSERVERSION"/>
|
<result property="appurl" column="APPURL"/>
|
</resultMap>
|
|
<select id="queryObject" resultType="com.landtool.lanbase.modules.log.entity.LogLogininfo">
|
select * from LOG_LOGININFO where LOGINID = #{value}
|
</select>
|
|
<select id="queryList" resultType="com.landtool.lanbase.modules.log.entity.LogLogininfo">
|
select * from (
|
SELECT *
|
FROM(
|
SELECT ROW_NUMBER() OVER(ORDER BY B.logindate DESC) AS rownumber,B.*
|
FROM (
|
|
SELECT lli.*,ssi.APPFULLNAME,os.CHINESENAME FROM LOG_LOGININFO lli
|
LEFT JOIN SYS_SYSTEMINFO ssi ON lli.appid=ssi.appid
|
LEFT JOIN ORG_USER os ON os.USERID=lli.USERID
|
<where>
|
<if test="UserName != null and UserName!=''">
|
AND (os.CHINESENAME LIKE ('%' || #{UserName} || '%') or os.loginname LIKE ('%' || #{UserName} || '%') or LOWER(os.spellfirst) LIKE ('%' || LOWER(#{UserName}) || '%'))
|
</if>
|
<if test="appid != null and appid!=''">
|
<!--AND lli.appid LIKE ('%' || #{appid} || '%') ID不需要用Like吧?如果是特殊需求请还原 ccr modify 2018-12-19 -->
|
AND cast(lli.appid as varchar) = #{appid}
|
</if>
|
<if test="beginDate != null and beginDate !=''">
|
AND LOGINDATE >=to_timestamp(#{beginDate,jdbcType=VARCHAR},'yyyy-mm-dd hh24:mi:ss')
|
</if>
|
<if test="endDate != null and endDate !=''">
|
<![CDATA[AND LOGINDATE <= to_timestamp(#{endDate,jdbcType=VARCHAR},'yyyy-mm-dd hh24:mi:ss')]]>
|
|
</if>
|
</where>
|
) B
|
) A
|
WHERE rownumber > #{lowerOffset} AND <![CDATA[ rownumber <= ${upperOffset} ]]>
|
)a order by
|
<choose>
|
<when test="sidx != null and sidx != ''">
|
${sidx} ${order}
|
</when>
|
<otherwise>
|
logindate desc
|
</otherwise>
|
</choose>
|
</select>
|
|
<select id="queryTotal" resultType="int">
|
select count(*) from LOG_LOGININFO lli
|
LEFT join SYS_SYSTEMINFO ssi on lli.appid=ssi.appid
|
LEFT join ORG_USER os on os.USERID=lli.USERID where 1=1
|
<if test="UserName != null and UserName!=''">
|
AND (os.CHINESENAME LIKE ('%' || #{UserName} || '%') or os.loginname LIKE ('%' || #{UserName} || '%') or LOWER(os.spellfirst) LIKE ('%' || LOWER(#{UserName}) || '%'))
|
</if>
|
<if test="appid != null and appid!=''">
|
<!--AND lli.appid LIKE ('%' || #{appid} || '%') -->
|
AND cast(lli.appid as varchar) = #{appid}
|
</if>
|
<if test="beginDate != null and beginDate !=''">
|
AND LOGINDATE >=to_timestamp(#{beginDate,jdbcType=VARCHAR},'yyyy-mm-dd hh24:mi:ss')
|
<!-- style "111", "yyyy/mm/dd" -->
|
<!--CONVERT(datetime, #{beginDate}, 111)-->
|
|
</if>
|
<if test="endDate != null and endDate !=''">
|
<![CDATA[ AND LOGINDATE <=to_timestamp(#{endDate,jdbcType=VARCHAR},'yyyy-mm-dd hh24:mi:ss')]]>
|
<!--CONVERT(datetime, DATEADD(day, 1, #{endDate}), 111)-->
|
|
</if>
|
</select>
|
|
<insert id="save" parameterType="com.landtool.lanbase.modules.log.entity.LogLogininfo">
|
insert into LOG_LOGININFO
|
(
|
USERID,
|
APPID,
|
LOGINNAME,
|
LOGINIP,
|
LOGINDATE,
|
LOGINTYPE,
|
RSTATUS,
|
BROSERVERSION,
|
APPURL
|
)
|
values
|
(
|
#{userid,jdbcType=BIGINT},
|
#{appid,jdbcType=BIGINT},
|
#{loginname,jdbcType=VARCHAR},
|
#{loginip,jdbcType=VARCHAR},
|
now(),
|
#{logintype,jdbcType=BIGINT},
|
#{rstatus,jdbcType=BIGINT},
|
#{broserversion,jdbcType=VARCHAR},
|
#{appurl,jdbcType=VARCHAR}
|
)
|
</insert>
|
|
<update id="update" parameterType="com.landtool.lanbase.modules.log.entity.LogLogininfo">
|
update LOG_LOGININFO
|
<set>
|
<if test="userid != null">USERID = #{userid}, </if>
|
<if test="appid != null">APPID = #{appid}, </if>
|
<if test="loginname != null">LOGINNAME = #{loginname}, </if>
|
<if test="loginip != null">LOGINIP = #{loginip}, </if>
|
<if test="logindate != null">LOGINDATE = #{logindate}, </if>
|
<if test="logintype != null">LOGINTYPE = #{logintype}, </if>
|
<if test="rstatus != null">RSTATUS = #{rstatus}, </if>
|
<if test="broserversion != null">BROSERVERSION = #{broserversion}</if>
|
<if test="appurl != null">APPURL = #{appurl}</if>
|
</set>
|
where LOGINID = #{loginid}
|
</update>
|
|
<delete id="delete">
|
delete from LOG_LOGININFO where LOGINID = #{value}
|
</delete>
|
|
<delete id="deleteBatch">
|
delete from LOG_LOGININFO where LOGINID in
|
<foreach item="loginid" collection="array" open="(" separator="," close=")">
|
#{loginid}
|
</foreach>
|
</delete>
|
|
</mapper>
|