ZQN
2024-06-24 4172b0bdc098d4a8055bdb0b1bfb4cbf866e47a0
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?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.project.report.mapper.ReportMapper">
 
    <!--    执法次数月度分布-->
    <select id="getMonthCount"
            parameterType="com.project.report.domain.bo.query.ReportQueryBo"
            resultType="com.project.common.vo.KeyVal">
        select
            MONTH(apply_time) AS k,
            IFNULL(count(order_id),0) as v
        from enforce_order
        where 1=1
        <if test="deptId != null ">
            AND apply_dept_id = #{deptId}
        </if>
        <if test="beginTime!=null and beginTime!=''">
            AND apply_time &gt;= #{beginTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            AND apply_time &lt;= #{endTime}
        </if>
        GROUP BY k
    </select>
 
    <!--    执法次数部门分布-->
    <select id="getDeptCount"
            parameterType="com.project.report.domain.bo.query.ReportQueryBo"
            resultType="com.project.common.vo.KeyVal">
        select
        check_dept_id AS k,
        IFNULL(count(order_id),0) as v
        from enforce_order
        where 1=1
        <if test="beginTime!=null and beginTime!=''">
            AND apply_time &gt;= #{beginTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            AND apply_time &lt;= #{endTime}
        </if>
        GROUP BY k
    </select>
 
    <!--    被执法次数企业分布-->
    <select id="getCompanyCount"
            parameterType="com.project.report.domain.bo.query.ReportQueryBo"
            resultType="com.project.common.vo.KeyVal">
 
        select
            sc.company_name AS k,
            IFNULL(count(eo.order_id),0) as v
        from sys_company sc
        left join enforce_order eo on sc.company_id=eo.company_id
        where 1=1
        and sc.check_status=2
        <if test="beginTime!=null and beginTime!=''">
            AND eo.apply_time &gt;= #{beginTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            AND eo.apply_time &lt;= #{endTime}
        </if>
        GROUP BY k order by v desc
    </select>
 
    <!--    执法类型分布-->
    <select id="getEnforceTypeCount"
            parameterType="com.project.report.domain.bo.query.ReportQueryBo"
            resultType="com.project.common.vo.KeyVal">
        select
        enforce_type AS k,
        IFNULL(count(order_id),0) as v
        from enforce_order
        where 1=1
        <if test="beginTime!=null and beginTime!=''">
            AND apply_time &gt;= #{beginTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            AND apply_time &lt;= #{endTime}
        </if>
        GROUP BY k
    </select>
 
    <!--    投诉处理状态-->
    <select id="getComplaintStatusCount"
            parameterType="com.project.report.domain.bo.query.ReportQueryBo"
            resultType="com.project.common.vo.KeyVal">
        select
        complaint_status AS k,
        IFNULL(count(id),0) as v
        from enforce_complaint_log
        where 1=1
        <if test="beginTime!=null and beginTime!=''">
            AND apply_time &gt;= #{beginTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            AND apply_time &lt;= #{endTime}
        </if>
        GROUP BY k
    </select>
 
    <!--    执法类型分布-->
    <select id="getComplaintTypeCount"
            parameterType="com.project.report.domain.bo.query.ReportQueryBo"
            resultType="com.project.common.vo.KeyVal">
        select
        complaint_type AS k,
        IFNULL(count(id),0) as v
        from enforce_complaint_log
        where 1=1
        <if test="beginTime!=null and beginTime!=''">
            AND apply_time &gt;= #{beginTime}
        </if>
        <if test="endTime!=null and endTime!=''">
            AND apply_time &lt;= #{endTime}
        </if>
        <if test="doComplaint!=null ">
            <if test="doComplaint == 0 ">
                AND complaint_status = 0
            </if>
            <if test="doComplaint == 1 ">
                AND complaint_status != 0
            </if>
        </if>
        GROUP BY k
    </select>
 
</mapper>