feiyu02
2024-04-25 0392c333ed3d987cb2ab3dac4e1a972cff405f21
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
<?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.flightfeather.supervision.domain.ds1.mapper.TaskMapper" >
  <resultMap id="BaseResultMap" type="cn.flightfeather.supervision.domain.ds1.entity.Task" >
    <!--
      WARNING - @mbg.generated
    -->
    <id column="T_GUID" property="tGuid" jdbcType="VARCHAR" />
    <result column="TS_GUID" property="tsGuid" jdbcType="VARCHAR" />
    <result column="T_LevelNum" property="tLevelnum" jdbcType="INTEGER" />
    <result column="T_Name" property="tName" jdbcType="VARCHAR" />
    <result column="T_TypeNo" property="tTypeno" jdbcType="TINYINT" />
    <result column="T_TypeName" property="tTypename" jdbcType="VARCHAR" />
    <result column="T_DeadlineType" property="tDeadlinetype" jdbcType="VARCHAR" />
    <result column="T_ProvinceCode" property="tProvincecode" jdbcType="VARCHAR" />
    <result column="T_ProvinceName" property="tProvincename" jdbcType="VARCHAR" />
    <result column="T_CityCode" property="tCitycode" jdbcType="VARCHAR" />
    <result column="T_CityName" property="tCityname" jdbcType="VARCHAR" />
    <result column="T_DistrictCode" property="tDistrictcode" jdbcType="VARCHAR" />
    <result column="T_DistrictName" property="tDistrictname" jdbcType="VARCHAR" />
    <result column="T_TownCode" property="tTowncode" jdbcType="VARCHAR" />
    <result column="T_TownName" property="tTownname" jdbcType="VARCHAR" />
    <result column="T_StartTime" property="tStarttime" jdbcType="TIMESTAMP" />
    <result column="T_EndTime" property="tEndtime" jdbcType="TIMESTAMP" />
    <result column="T_PlannerGUID" property="tPlannerguid" jdbcType="VARCHAR" />
    <result column="T_PlannerUserName" property="tPlannerusername" jdbcType="VARCHAR" />
    <result column="T_PlannerRealName" property="tPlannerrealname" jdbcType="VARCHAR" />
    <result column="T_SetTime" property="tSettime" jdbcType="TIMESTAMP" />
    <result column="T_ExecutorGUIDs" property="tExecutorguids" jdbcType="VARCHAR" />
    <result column="T_ExecutorUserNames" property="tExecutorusernames" jdbcType="VARCHAR" />
    <result column="T_ExecutorRealNames" property="tExecutorrealnames" jdbcType="VARCHAR" />
    <result column="T_IsChanged" property="tIschanged" jdbcType="BIT" />
    <result column="T_1stVerifierGUID" property="t1stverifierguid" jdbcType="VARCHAR" />
    <result column="T_1stVerifierUserName" property="t1stverifierusername" jdbcType="VARCHAR" />
    <result column="T_1stVerifierRealName" property="t1stverifierrealname" jdbcType="VARCHAR" />
    <result column="T_1stVerifyTime" property="t1stverifytime" jdbcType="TIMESTAMP" />
    <result column="T_1stIsVerify" property="t1stisverify" jdbcType="BIT" />
    <result column="T_2ndVerifierGUID" property="t2ndverifierguid" jdbcType="VARCHAR" />
    <result column="T_2ndVerifierUserName" property="t2ndverifierusername" jdbcType="VARCHAR" />
    <result column="T_2ndVerifierRealName" property="t2ndverifierrealname" jdbcType="VARCHAR" />
    <result column="T_2ndVerifyTime" property="t2ndverifytime" jdbcType="TIMESTAMP" />
    <result column="T_2ndIsVerify" property="t2ndisverify" jdbcType="BIT" />
    <result column="T_DeployerGUID" property="tDeployerguid" jdbcType="CHAR" />
    <result column="T_DeployerUserName" property="tDeployerusername" jdbcType="CHAR" />
    <result column="T_DeployerRealName" property="tDeployerrealname" jdbcType="VARCHAR" />
    <result column="T_DeployTime" property="tDeploytime" jdbcType="TIMESTAMP" />
    <result column="T_RuningStatus" property="tRuningstatus" jdbcType="VARCHAR" />
    <result column="T_AssessorGUID" property="tAssessorguid" jdbcType="VARCHAR" />
    <result column="T_AssessorUserName" property="tAssessorusername" jdbcType="VARCHAR" />
    <result column="T_AssessorRealName" property="tAssessorrealname" jdbcType="VARCHAR" />
    <result column="T_AssessTime" property="tAssesstime" jdbcType="TIMESTAMP" />
    <result column="T_AssessResult" property="tAssessresult" jdbcType="VARCHAR" />
    <result column="T_ThirdAssessorGUID" property="tThirdassessorguid" jdbcType="VARCHAR" />
    <result column="T_ThirdAssessorUserName" property="tThirdassessorusername" jdbcType="VARCHAR" />
    <result column="T_ThirdAssessorRealName" property="tThirdassessorrealname" jdbcType="VARCHAR" />
    <result column="T_ThirdAssessTime" property="tThirdassesstime" jdbcType="TIMESTAMP" />
    <result column="T_ThirdAssessResult" property="tThirdassessresult" jdbcType="VARCHAR" />
    <result column="T_Extension1" property="tExtension1" jdbcType="VARCHAR" />
    <result column="T_Extension2" property="tExtension2" jdbcType="VARCHAR" />
    <result column="T_Extension3" property="tExtension3" jdbcType="VARCHAR" />
    <result column="T_Remark" property="tRemark" jdbcType="VARCHAR" />
  </resultMap>
  <sql id="Base_Column_List" >
    <!--
      WARNING - @mbg.generated
    -->
    T_GUID, TS_GUID, T_LevelNum, T_Name, T_TypeNo, T_TypeName, T_DeadlineType, T_ProvinceCode, 
    T_ProvinceName, T_CityCode, T_CityName, T_DistrictCode, T_DistrictName, T_TownCode, 
    T_TownName, T_StartTime, T_EndTime, T_PlannerGUID, T_PlannerUserName, T_PlannerRealName, 
    T_SetTime, T_ExecutorGUIDs, T_ExecutorUserNames, T_ExecutorRealNames, T_IsChanged, 
    T_1stVerifierGUID, T_1stVerifierUserName, T_1stVerifierRealName, T_1stVerifyTime, 
    T_1stIsVerify, T_2ndVerifierGUID, T_2ndVerifierUserName, T_2ndVerifierRealName, T_2ndVerifyTime, 
    T_2ndIsVerify, T_DeployerGUID, T_DeployerUserName, T_DeployerRealName, T_DeployTime, 
    T_RuningStatus, T_AssessorGUID, T_AssessorUserName, T_AssessorRealName, T_AssessTime, 
    T_AssessResult, T_ThirdAssessorGUID, T_ThirdAssessorUserName, T_ThirdAssessorRealName, 
    T_ThirdAssessTime, T_ThirdAssessResult, T_Extension1, T_Extension2, T_Extension3, 
    T_Remark
  </sql>
  <select id="selectSE" resultType="map" parameterType="java.lang.String">
        ${_parameter}
  </select>
<!--获取某顶层任务下某场景的街镇排名和场景排名-->
  <select id="selectTotalFrequency" parameterType="java.lang.String" resultType="map" >
    SELECT c.T_GUID as topTaskId, c.T_Name as topTaskName, b.S_TypeID as sceneTypeId, b.S_Type as sceneTypeName, SUM(a.MOV_MonitorNum) as totalFrequency FROM sm_t_monitorobjectversion as a LEFT JOIN sm_t_scense as b ON a.S_GUID = b.S_GUID LEFT JOIN tm_t_task as c on a.T_ID = c.T_GUID WHERE a.T_ID = #{param1} GROUP BY b.S_TypeID ORDER BY b.S_TypeID
  </select>
<!--获取某顶层任务下各场景的任务总频次及完成点次-->
  <select id="selectClearFrequency" parameterType="java.lang.String" resultType="map" >
      SELECT
          c.S_TypeID AS sceneTypeId,
          c.S_Type AS sceneTypeName,
          SUM(
              CASE
              WHEN b.ST_Status = '已结束' AND b.T_GUID = #{param1} THEN
                  1
              ELSE
                  0
              END
          ) AS clearFrequency
      FROM
          sm_t_monitorobjectversion AS a
      LEFT OUTER JOIN tm_t_subtask AS b ON a.S_GUID = b.ST_ScenseID
      LEFT JOIN sm_t_scense AS c ON a.S_GUID = c.S_GUID
      LEFT JOIN tm_t_task AS d ON a.T_ID = d.T_GUID
      WHERE
          a.T_ID = #{param1}
      GROUP BY
          c.S_TypeID
      ORDER BY
          c.S_TypeID ASC
  </select>
<!--获取某顶层任务下某类场景的场景评分排名-->
  <select id="selectSceneRank" parameterType="java.lang.String" resultType="map" >
    SELECT
    d.S_TypeID AS sceneTypeId,
    d.S_Type AS sceneTypeName,
    c.S_GUID AS sceneNameId,
    c.MOV_SenseName AS sceneName,
    a.E_ResultStandardBef AS standardBef,
    a.E_ResultScoreBef AS scoreBef,
    a.ResultStandardAft AS standardAft,
    a.E_ResultScoreAft AS scoreAft
    FROM
        ea_t_evaluation AS a
    LEFT JOIN tm_t_subtask AS b ON a.ST_GUID = b.ST_GUID
    RIGHT JOIN sm_t_monitorobjectversion AS c ON c.S_GUID = a.S_GUID
    AND b.T_GUID = c.T_ID
    LEFT JOIN sm_t_scense AS d ON c.S_GUID = d.S_GUID
    WHERE
        c.T_ID = #{param1}
    AND (
        d.S_TypeID = #{param2}
    )
    ORDER BY
        scoreBef DESC , sceneName
  </select>
  <!--获取某顶层任务下某类场景的街镇评分排名-->
  <select id="selectTownRank" parameterType="java.lang.String" resultType="map" >
    SELECT
        d.S_TypeID AS sceneTypeId,
        d.S_Type AS sceneTypeName,
        d.S_TownCode AS townCode,
        d.S_TownName AS townName,
        ROUND(avg(a.E_ResultScoreBef), 0) AS averageScore,
        ROUND(
            (
                SUM(
                    CASE
                    WHEN a.E_ResultScoreBef >= 78 THEN
                        1
                    WHEN a.E_ResultScoreAft >= 78 THEN
                        1
                    ELSE
                        0
                    END
                ) / COUNT(a.E_GUID)
            ),
            2
        ) AS standardRate,
        COUNT(a.E_GUID) AS hasScoredNum,
        COUNT(c.MOV_ID) AS totalSceneNum
    FROM
        ea_t_evaluation AS a
    LEFT JOIN tm_t_subtask AS b ON a.ST_GUID = b.ST_GUID
    RIGHT JOIN sm_t_monitorobjectversion AS c ON c.S_GUID = a.S_GUID
    AND b.T_GUID = c.T_ID
    LEFT JOIN sm_t_scense AS d ON c.S_GUID = d.S_GUID
    WHERE
        c.T_ID = #{param1}
    AND (
        a.E_ScenseTypeID = #{param2}
        OR a.E_ScenseTypeID IS NULL
    )
    GROUP BY
        d.S_TownName
  </select>
</mapper>