zhongrj
2023-07-06 3ce737b52fca082ac3a2ecda4a848e2e4abcd0ee
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?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="cn.gistack.sm.log.mapper.SmLogManageMapper">
    <select id="getAppUserNum"  resultType="java.lang.Integer">
        SELECT SUM(CASE WHEN useTimes !=0 THEN 1 ELSE 0 END) FROM (
            SELECT COUNT(*) as useTimes
            FROM SM_LOG_MANAGE SLM
            WHERE SLM.SOURCE = 'APP' AND SLM.IS_DELETED = 0
            GROUP BY SLM.CREATE_USER
        )
    </select>
    <select id="getAppStatistics" resultType="cn.gistack.sm.log.vo.AppStatistics">
        SELECT COUNT(A.useTime) AS useCount,A.useTime as useTime FROM
        (
        SELECT
        COUNT(*),
        to_char(create_time,'yyyy-mm-dd') AS useTime,
        CREATE_USER
        FROM SM_LOG_MANAGE
        WHERE IS_DELETED = 0 AND SOURCE = 'APP'
        <if test="vo.startTime !=null and vo.startTime !=''">
            AND DATE_FORMAT(create_time,'%Y-%m-%d') &gt;= #{vo.startTime}
        </if>
        <if test="vo.endTime !=null and vo.endTime !=''">
            AND DATE_FORMAT(create_time,'%Y-%m-%d') &lt;= #{vo.endTime}
        </if>
        GROUP BY (CREATE_USER,to_char(create_time,'yyyy-mm-dd'),CREATE_USER)
        ) A
        GROUP BY A.useTime
    </select>
    <select id="selectMyPage" resultType="cn.gistack.sm.log.vo.SmLogManageVO">
        SELECT L.*,U.real_name createUserName FROM SM_LOG_MANAGE L
        LEFT JOIN BLADE_USER U ON U.ID = L.CREATE_USER
        WHERE L.IS_DELETED = 0
        <if test="vo.createUserName !=null and vo.createUserName !=''">
            AND U.REAL_NAME LIKE CONCAT('%',#{vo.createUserName},'%')
        </if>
        <if test="vo.operationDescription !=null and vo.operationDescription !=''">
            AND L.OPERATION_DESCRIPTION LIKE CONCAT('%',#{vo.operationDescription},'%')
        </if>
        <if test="vo.source !=null and vo.source !=''">
            AND L.SOURCE = #{vo.source}
        </if>
        <if test="vo.daterange !=null and  vo.daterange.length >  0">
            AND L.CREATE_TIME &gt;= #{vo.daterange[0]} AND L.CREATE_TIME &lt;= #{vo.daterange[1]}
        </if>
        ORDER BY L.CREATE_TIME DESC
    </select>
</mapper>