zhanghua
2023-09-08 7ef4892f9f24f941aca37e6b3991b808a0aca619
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="com.ycl.mapper.cockpitManage.TeamConstructionMapper">
 
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.ycl.entity.cockpitManage.TeamConstruction">
        <id column="id" property="id"/>
        <result column="name" property="name"/>
        <result column="people_number" property="peopleNumber"/>
        <result column="up_undergraduate_people_number" property="upUndergraduatePeopleNumber"/>
        <result column="under_forty_five_people_number" property="underFortyFivePeopleNumber"/>
        <result column="legal_professional_qualification_certificate_people_number"
                property="legalProfessionalQualificationCertificatePeopleNumber"/>
        <result column="report_number" property="reportNumber"/>
        <result column="disciplinary_offence_number" property="disciplinaryOffenceNumber"/>
        <result column="criminal_offense_number" property="criminalOffenseNumber"/>
        <result column="month_case_number" property="monthCaseNumber"/>
        <result column="month_index_number" property="monthIndexNumber"/>
        <result column="no_timeout_case_number" property="noTimeoutCaseNumber"/>
        <result column="review_or_lawsuit_number" property="reviewOrLawsuitNumber"/>
        <result column="holder_number" property="holderNumber"/>
        <result column="law_enforcement_officer" property="lawEnforcementOfficer"/>
    </resultMap>
    <resultMap id="VOMap" extends="BaseResultMap" type="com.ycl.entity.cockpitManage.TeamIndex">
 
        <result column="all_count" property="allCount"/>
        <result column="no_handle_count" property="noHandleCount"/>
        <result column="over_count" property="overCount"/>
        <result column="punctuality_count" property="punctualityCount"/>
    </resultMap>
    <select id="teamIndex" resultMap="VOMap">
        SELECT tc.id,tc.name,  tc.people_number,  tc.up_undergraduate_people_number,  tc.under_forty_five_people_number,  tc.legal_professional_qualification_certificate_people_number,  tc.report_number,  tc.disciplinary_offence_number,tc.criminal_offense_number,  tc.month_case_number,  tc.month_index_number,  tc.no_timeout_case_number,tc.review_or_lawsuit_number,  tc.holder_number,  tc.law_enforcement_officer ,
        count(bc.id) all_count,
        sum(case WHEN (dr.state =1 and (dr.limit_time > dr.end_time or dr.limit_time is null) ) THEN 1 ELSE 0 END) punctuality_count,
        sum(case WHEN (dr.state =1 and dr.limit_time &lt; dr.end_time and dr.end_time is not null ) THEN 1 ELSE 0 END) over_count,
        sum(case WHEN (dr.state =1 and dr.limit_time &lt; dr.end_time and dr.end_time is null ) THEN 1 ELSE 0 END) no_handle_count
        from ums_team_construction tc
        LEFT JOIN ums_base_case bc on tc.region_id = bc.street_id
        <if test="beginTime!=null and beginTime!=''">
            and bc.alarm_time between #{beginTime} and #{endTime}
        </if>
        LEFT JOIN ums_dispose_record dr on bc.id = dr.base_case_id
 
        GROUP BY tc.id,tc.name,  tc.people_number,  tc.up_undergraduate_people_number,  tc.under_forty_five_people_number,  tc.legal_professional_qualification_certificate_people_number,  tc.report_number,  tc.disciplinary_offence_number,tc.criminal_offense_number,  tc.month_case_number,  tc.month_index_number,  tc.no_timeout_case_number,tc.review_or_lawsuit_number,  tc.holder_number,  tc.law_enforcement_officer
 
    </select>
 
 
</mapper>