From 2fe81eab1b653ffd19da3c1876e201d9a10ed6f7 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Sat, 08 Jan 2022 16:33:09 +0800
Subject: [PATCH] 1.登录记录新增修改,页面刷新token 不能算入 2.登录统计接口新增,统计明细查询接口新增
---
src/main/java/org/springblade/modules/loginrecord/mapper/LoginRecordMapper.xml | 122 ++++++++++++++++++++++++++++++++++++++++
1 files changed, 121 insertions(+), 1 deletions(-)
diff --git a/src/main/java/org/springblade/modules/loginrecord/mapper/LoginRecordMapper.xml b/src/main/java/org/springblade/modules/loginrecord/mapper/LoginRecordMapper.xml
index ed3f548..3a8bf07 100644
--- a/src/main/java/org/springblade/modules/loginrecord/mapper/LoginRecordMapper.xml
+++ b/src/main/java/org/springblade/modules/loginrecord/mapper/LoginRecordMapper.xml
@@ -9,7 +9,7 @@
bd.dept_name deptName
from
sys_login_record slr
- left join blade_dept bd on bd.id = slr.dept_id
+ left join blade_dept bd on bd.id = slr.dept_id
<if test="loginRecord.deptName!=null and loginRecord.deptName!=''">
bd.dept_name like concat('%',#{loginRecord.deptName},'%')
</if>
@@ -19,4 +19,124 @@
order by slr.id desc
</select>
+ <!--登录记录统计-->
+ <select id="getLoginDataStatistics" resultType="java.lang.Integer">
+ SELECT
+ count( * )
+ FROM
+ (
+ SELECT
+ a.*,
+ ifnull( b.c, 0 ) num
+ FROM
+ (
+ SELECT
+ si.*
+ FROM
+ sys_information si
+ LEFT JOIN blade_dept bd ON si.departmentid = bd.id
+ left join sys_jurisdiction sj on sj.id = si.jurisdiction
+ WHERE
+ bd.is_deleted = 0
+ AND bd.dept_category = 1
+ <if test="loginRecord.jurisdiction!=null and loginRecord.jurisdiction!='' and loginRecord.jurisdiction!='1372091709474910209'">
+ and (sj.id = #{loginRecord.jurisdiction} or sj.parent_id = #{loginRecord.jurisdiction})
+ </if>
+ ) a
+ LEFT JOIN
+ (
+ SELECT count( * ) c, dept_id FROM `sys_login_record`
+ where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(create_time)
+ GROUP BY dept_id
+ ) b ON a.departmentid = b.dept_id
+ ) c
+ WHERE
+ num > 0 UNION ALL
+ (
+ SELECT
+ count( * )
+ FROM
+ (
+ SELECT
+ a.*,
+ ifnull( b.c, 0 ) num
+ FROM
+ (
+ SELECT
+ si.*
+ FROM
+ sys_information si
+ LEFT JOIN blade_dept bd ON si.departmentid = bd.id
+ left join sys_jurisdiction sj on sj.id = si.jurisdiction
+ WHERE
+ bd.is_deleted = 0
+ AND bd.dept_category = 1
+ <if test="loginRecord.jurisdiction!=null and loginRecord.jurisdiction!='' and loginRecord.jurisdiction!='1372091709474910209'">
+ and (sj.id = #{loginRecord.jurisdiction} or sj.parent_id = #{loginRecord.jurisdiction})
+ </if>
+ ) a
+ LEFT JOIN
+ (
+ SELECT count( * ) c, dept_id FROM `sys_login_record`
+ where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(create_time)
+ GROUP BY dept_id
+ ) b ON a.departmentid = b.dept_id
+ ) c
+ WHERE
+ num = 0
+ )
+ </select>
+
+ <!--自定义分页(企业登录分页记录)-->
+ <select id="getInformationLoginPage" resultType="org.springblade.modules.loginrecord.vo.LoginRecordVo">
+ select * from (
+ SELECT
+ a.enterpriseName deptName,
+ a.stats,
+ sj.dept_name jurisdictionName,
+ ifnull( b.c, 0 ) num,
+ c.create_time createTime
+ FROM
+ (
+ SELECT
+ si.*
+ FROM
+ sys_information si
+ LEFT JOIN blade_dept bd ON si.departmentid = bd.id
+ WHERE
+ bd.is_deleted = 0
+ AND bd.dept_category = 1
+ ) a
+ left join
+ (
+ SELECT count( * ) c, dept_id FROM `sys_login_record`
+ where 1=1
+ <if test="loginRecord.startTime!=null and loginRecord.startTime!=''">
+ and date(create_time) >= #{loginRecord.startTime}
+ </if>
+ <if test="loginRecord.endTime!=null and loginRecord.endTime!=''">
+ and date(create_time) <= #{loginRecord.endTime}
+ </if>
+ GROUP BY dept_id
+ ) b ON a.departmentid = b.dept_id
+ left join
+ (
+ select dept_id,max(create_time) create_time from sys_login_record GROUP BY dept_id
+ ) c on a.departmentid = c.dept_id
+ left join sys_jurisdiction sj on a.jurisdiction = sj.id
+ where 1=1
+ <if test="loginRecord.jurisdiction!=null and loginRecord.jurisdiction!='' and loginRecord.jurisdiction!='1372091709474910209'">
+ and (sj.id = #{loginRecord.jurisdiction} or sj.parent_id = #{loginRecord.jurisdiction})
+ </if>
+ <if test="loginRecord.deptName!=null and loginRecord.deptName!=''">
+ and a.enterpriseName like concat('%',#{loginRecord.deptName},'%')
+ </if>
+ ) r where 1=1
+ <if test="loginRecord.types ==1">
+ and r.num = 0
+ </if>
+ <if test="loginRecord.types ==2">
+ and r.num > 0
+ </if>
+ </select>
</mapper>
--
Gitblit v1.9.3