From 3f342a9ce225ab809d7f22e2f0e80bb63792e266 Mon Sep 17 00:00:00 2001
From: baizonghao <1719256278@qq.com>
Date: 星期二, 14 三月 2023 20:58:01 +0800
Subject: [PATCH] AI算法效能优化
---
ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml | 337 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 325 insertions(+), 12 deletions(-)
diff --git a/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml b/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml
index c11bccc..7eb3d1d 100644
--- a/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml
+++ b/ycl-platform/src/main/resources/mapper/caseHandler/BaseCaseMapper.xml
@@ -22,6 +22,12 @@
<result column="final_opinion" property="finalOpinion"/>
<result column="create_time" property="createTime"/>
</resultMap>
+ <resultMap type="com.ycl.entity.caseHandler.BaseCase" id="CondMapResultMap" extends="BaseResultMap">
+ <result column="category_text" property="categoryText"/>
+ <result column="street_text" property="streetText"/>
+ <result column="community_text" property="communityText"/>
+ <result column="create_user_text" property="createUserText"/>
+ </resultMap>
<!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
<resultMap id="settingsResultMap" type="com.ycl.vo.IllegalBuildingSettingVO">
@@ -38,24 +44,30 @@
, code, event_source, category, street_id, community_id, site, longitude, latitude, alarm_time, create_user, state, handling_opinion, remark, audit_opinion, final_opinion, create_time
</sql>
- <select id="listViolationsPage" resultType="com.ycl.bo.casePool.CasePoolViolationDO">
+ <select id="listViolationsPage" resultType="com.ycl.vo.casePool.CasePoolViolationVO">
SELECT
- ubc.`id`,
+ ubc.`id`,
ubc.`code`,
ubc.event_source,
- uv.category_id,
- uv.type_id,
uv.action_cause,
+ t3.name as category,
+ t4.name as type,
+ t5.region_name as street,
ubc.site,
- ubc.street_id,
ubc.alarm_time,
ubc.close_time
FROM
`ums_base_case` AS ubc
JOIN ums_violations AS uv ON ubc.id = uv.id
+ LEFT JOIN ums_data_dictionary AS t3 ON uv.category_id = t3.id
+ LEFT JOIN ums_data_dictionary AS t4 ON uv.type_id = t4.id
+ LEFT JOIN ums_sccg_region t5 ON ubc.street_id = t5.id
<where>
- <if test="state!=null">
+ <if test="state!=null and state!=6">
ubc.state=#{state}
+ </if>
+ <if test="state!=null and state==6">
+ ubc.state >=#{state}
</if>
<if test="resource!=null">
and ubc.event_source=#{resource}
@@ -63,18 +75,36 @@
<if test="type!=null">
and ubc.category=#{type}
</if>
+ <if test="code!=null">
+ and ubc.code=#{code}
+ </if>
+ <if test="categoryBig != null">
+ and t3.name like concat('%', #{categoryBig},'%')
+ </if>
+ <if test="categorySmall != null">
+ and t4.name like concat('%', #{categorySmall},'%')
+ </if>
+ <if test="street != null">
+ and ubc.community_id = #{street}
+ </if>
+ <if test="site">
+ and ubc.site like concat('%', #{site},'%')
+ </if>
+ <if test="startTime !='' and endTime !='' and startTime!=null and endTime !=null">
+ and ubc.create_time between #{startTime} and #{endTime}
+ </if>
</where>
</select>
- <select id="listIllegalBuildingsPage" resultType="com.ycl.bo.casePool.CasePoolIllegalBuildingDO">
+ <select id="listIllegalBuildingsPage" resultType="com.ycl.vo.casePool.CasePoolIllegalBuildingVO">
SELECT
ubc.`id`,
ubc.`code`,
ubc.event_source,
- uib.category_id,
+ t1.name as category,
ubc.site,
- ubc.community_id,
+ t2.region_name as community,
uib.building_high,
uib.building_width,
uib.building_length,
@@ -82,10 +112,15 @@
uib.materials
FROM
`ums_base_case` AS ubc
- JOIN ums_illegal_building AS uib ON ubc.id = uib.base_case_id
+ left JOIN ums_illegal_building AS uib ON ubc.id = uib.base_case_id
+ left JOIN ums_data_dictionary AS t1 ON uib.category_id = t1.id
+ left JOIN ums_sccg_region t2 ON ubc.community_id = t2.id
<where>
- <if test="state!=null">
+ <if test="state!=null and state!=6">
ubc.state=#{state}
+ </if>
+ <if test="state!=null and state==6">
+ ubc.state >=#{state}
</if>
<if test="resource!=null">
and ubc.event_source=#{resource}
@@ -96,4 +131,282 @@
</where>
</select>
-</mapper>
+
+
+ <select id="selectCondMap" parameterType="map" resultMap="CondMapResultMap">
+ SELECT ubc.*,
+ udd.name category_text,
+ usr.region_name street_text,
+ usr2.region_name community_text,
+ ua.username create_user_text
+ FROM ums_base_case ubc
+ LEFT JOIN ums_data_dictionary udd on ubc.category = udd.id
+ LEFT JOIN ums_sccg_region usr on ubc.street_id = usr.id
+ LEFT JOIN ums_sccg_region usr2 on ubc.community_id = usr2.id
+ LEFT JOIN ums_admin ua on ubc.create_user = ua.id
+ WHERE ubc.`code` = #{code}
+ </select>
+
+ <select id="selectBaseCasePage" resultType="com.ycl.entity.caseHandler.BaseCase">
+ select t1.*,
+ t3.region_name community_text
+ from ums_base_case t1
+ left join ums_sccg_region t3 on t1.community_id=t3.id
+ <where>
+ <if test="categories != null">
+ t1.category = #{categories}
+ </if>
+ <if test="streetId != null">
+ and t1.community_id = #{streetId}
+ </if>
+ <if test="code != null and code !=''">
+ and t1.code like concat('%',#{code},'%')
+ </if>
+ <if test="site != null and site!=''">
+ and t1.site like concat('%',#{site},'%')
+ </if>
+ <if test="startTime !='' and endTime !='' and startTime!=null and endTime !=null">
+ and t1.create_time between #{startTime} and #{endTime}
+ </if>
+ </where>
+ order by t1.alarm_time desc
+ </select>
+
+ <select id="selectViolationPage" resultType="com.ycl.vo.casePool.QueryForViolationVO"
+ parameterType="com.ycl.dto.caseHandler.QueryForViolationParam">
+ SELECT
+ t1.`code`,
+ t1.alarm_time,
+ t1.handling_opinion,
+ CASE
+ t1.event_source
+ WHEN 1 THEN
+ "瑙嗛宸℃煡"
+ WHEN 2 THEN
+ "浜哄伐涓婃姤"
+ END AS event_source,
+ t1.site,
+ CASE
+ t1.state
+ WHEN 7 THEN
+ "寰呭鏍�"
+ WHEN 8 THEN
+ "宸插鏍�"
+ END AS state,
+ t3.`name` as categoryName,
+ t4.`name` AS typeName,
+ t5.`name` as gradeName,
+ t2.car_number,
+ t6.region_name as communityName,
+ t7.region_name as streetName,
+ t8.url,
+ t9.address
+ FROM
+ ums_base_case t1
+ LEFT JOIN ums_violations t2 on t1.id=t2.id
+ LEFT JOIN ums_data_dictionary t3 on t3.id=t2.category_id
+ LEFT JOIN ums_data_dictionary t4 on t4.id=t2.type_id
+ LEFT JOIN ums_data_dictionary t5 on t5.id=t2.grade_id
+ LEFT JOIN ums_sccg_region t6 on t6.id=t1.community_id
+ LEFT JOIN ums_sccg_region t7 on t7.id=t1.street_id
+ LEFT JOIN ums_image_resources t8 on t8.belong_to_id=t1.id
+ LEFT JOIN ums_video_point t9 on t9.id=t2.video_point_id
+ <where>
+ <if test="queryForViolationParam.eventSource != null">
+ and t1.event_source=#{queryForViolationParam.eventSource}
+ </if>
+ <if test="queryForViolationParam.categoryId != null">
+ and t2.category_id=#{queryForViolationParam.categoryId}
+ </if>
+ <if test="queryForViolationParam.startTime != null and queryForViolationParam.startTime !='' and queryForViolationParam.endTime !=null and queryForViolationParam.endTime !=''">
+ and t1.alarm_time between #{queryForViolationParam.startTime} and #{queryForViolationParam.endTime}
+ </if>
+ <if test="queryForViolationParam.code != null and queryForViolationParam.code != '' ">
+ and t1.code like concat('%',#{queryForViolationParam.code},'%')
+ </if>
+ <if test=" queryForViolationParam.typeId!= null">
+ and t2.type_id=#{v.typeId}
+ </if>
+ <if test="queryForViolationParam.gradeId != null">
+ and t2.grade_id=#{queryForViolationParam.gradeId}
+ </if>
+ <if test="queryForViolationParam.streetId != null">
+ and t1.street_id=#{queryForViolationParam.streetId}
+ </if>
+ <if test="queryForViolationParam.communityId != null">
+ and t1.community_id=#{queryForViolationParam.communityId}
+ </if>
+ <if test="queryForViolationParam.state != null">
+ and t1.state=#{queryForViolationParam.state}
+ </if>
+ <if test="queryForViolationParam.carNumber != null and queryForViolationParam.carNumber!=''">
+ and t2.car_number like concat('%',#{queryForViolationParam.carNumber},'%')
+ </if>
+ <if test="queryForViolationParam.videoPointId != null">
+ and t2.video_point_id=#{queryForViolationParam.videoPointId}
+ </if>
+ <if test="queryForViolationParam.handlingOpinion != null and queryForViolationParam.handlingOpinion !=''">
+ and t1.handling_opinion like concat('%',#{queryForViolationParam.handlingOpinion},'%')
+ </if>
+ </where>
+
+ </select>
+
+ <select id="selectVideoInspection" resultType="com.ycl.vo.casePool.BaseCaseVO">
+ SELECT t1.id as baseId,
+ t1.`code`,
+ t3.`name`,
+ t3.url_address,
+ t3.longitude,
+ t3.latitude,
+ t4.pic_data,
+ t5.`name` as grade,
+ t3.address,
+ t3.plat_resource_id as platResourceId,
+ t3.code as videoCode,
+ t1.alarm_time as alarmTime,
+ t1.alarm_time as currentAlarmTime,
+ t4.algo_name as algoName
+ FROM ums_base_case t1
+ LEFT JOIN ums_violations t2 ON t1.id = t2.id
+ LEFT JOIN ums_video_point t3 on t2.video_point_id = t3.id
+ LEFT JOIN ums_video_alarm_report t4 on t4.id = t2.video_alarm_report_id
+ LEFT JOIN ums_data_dictionary t5 on t5.id = t2.grade_id
+ WHERE t1.state = 1
+ group by t1.id
+ </select>
+
+ <select id="selectRegisterCount" resultType="java.lang.Long">
+ select count(1)
+ from ums_base_case
+ where state in (2, 6,7,8,9)
+ and to_days(create_time) = TO_DAYS(now());
+ </select>
+
+ <select id="selectStudyCount" resultType="java.lang.Long">
+ select count(1)
+ from ums_base_case
+ where state = 3
+ and to_days(create_time) = TO_DAYS(now());
+ </select>
+
+ <select id="dayCount" resultType="java.lang.Integer">
+ select count(1)
+ from ums_base_case
+ where to_days(create_time) = TO_DAYS(now());
+ </select>
+ <select id="weekCount" resultType="java.lang.Integer">
+ select count(1)
+ from ums_base_case
+ WHERE YEARWEEK(date_format(create_time, '%Y-%m-%d')) = YEARWEEK(now());;
+ </select>
+ <select id="dispatchCount" resultType="java.lang.Integer">
+ select count(1)
+ FROM ums_base_case t1
+ LEFT JOIN ums_dispose_record t2 ON t1.id = t2.base_case_id
+ WHERE t2.workflow_config_step_id = 1
+ </select>
+ <select id="alCount" resultType="java.lang.Integer">
+ select count(1)
+ FROM ums_base_case
+ WHERE event_source = 1;
+ </select>
+ <select id="selectEventList" resultType="com.ycl.vo.cockpit.enforcementEvents.EventVO">
+ SELECT
+ t1.alarm_time,
+ t1.longitude,
+ t1.latitude,
+ ( CASE WHEN t1.category = 1 THEN "杩濊" WHEN t1.category = 2 THEN "杩濆缓" ELSE "鍏朵粬" END ) AS type,
+ ( CASE WHEN t1.event_source = 1 THEN "瑙嗛宸℃煡" WHEN t1.event_source = 2 THEN "浜哄伐涓婃姤" ELSE "鍏朵粬" END ) AS alarmAdvice,
+ ( CASE WHEN t1.event_source = 1 THEN "瑙嗛宸℃煡" WHEN t1.event_source = 2 THEN "浜哄伐涓婃姤" ELSE "鍏朵粬" END ) AS source,
+ t1.site AS address,
+ t2.description,
+ t3.`name` AS point,
+ t4.pic_data AS picture
+ FROM
+ ums_base_case t1
+ LEFT JOIN ums_violations t2 ON t1.id = t2.id
+ LEFT JOIN ums_video_point t3 ON t3.id = t2.video_point_id
+ LEFT JOIN ums_video_alarm_report t4 ON t4.id = t2.video_alarm_report_id
+ <where>
+ t1.category=1
+ <if test="beginTime !=''and beginTime!=null and endTime!=''and endTime!=null">
+ and t1.create_time BETWEEN #{beginTime}
+ AND #{endTime}
+ </if>
+
+ </where>
+
+ </select>
+ <select id="areaCount" resultType="com.ycl.vo.cockpit.enforcementEvents.VideoAndAreaVO">
+ SELECT t2.region_name,
+ COUNT(1) AS count
+ FROM
+ `ums_base_case` t1
+ LEFT JOIN ums_sccg_region t2
+ ON t1.street_id = t2.id
+ GROUP BY
+ street_id
+ </select>
+
+ <select id="selectDelayVOList" resultType="com.ycl.dto.cockpitManage.DelayDO">
+ SELECT t1.`code`,
+ t3.description,
+ t2.start_time,
+ t2.end_time,
+ t2.limit_time
+ FROM `ums_base_case` t1
+ LEFT JOIN ums_dispose_record t2 ON t1.id = t2.base_case_id
+ LEFT JOIN ums_violations t3 on t1.id = t3.id
+ WHERE t2.workflow_config_step_id IN (1, 2)
+ </select>
+
+ <select id="selectType" resultType="com.ycl.vo.cockpit.enforcementEvents.VideoAndAreaVO">
+ SELECT IFNULL(t2.`name`, "鍏朵粬") as name,
+ COUNT(1) as count
+ FROM
+ ums_violations t1
+ LEFT JOIN ums_data_dictionary t2
+ ON t1.category_id = t2.id
+ GROUP BY
+ t1.category_id
+ </select>
+
+ <select id="selectLastMonthCount" resultType="java.lang.Long">
+ SELECT
+ count(1)
+ FROM
+ ums_base_case
+ WHERE
+ state in
+ <foreach collection="list" open="(" separator="," close=")" item="state">
+ #{state}
+ </foreach>
+ AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( create_time, '%Y%m' ) ) =1
+ </select>
+
+ <select id="selectRecentlyMonthCount" resultType="java.lang.Long">
+ SELECT
+ count(1)
+ FROM
+ ums_base_case
+ WHERE
+ state in
+ <foreach collection="list" open="(" separator="," close=")" item="state">
+ #{state}
+ </foreach>
+ AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( create_time, '%Y%m' ) ) =0
+ </select>
+
+ <select id="selectOnTimeCaseCount" resultType="java.lang.Long">
+ SELECT COUNT(1) FROM ums_dispose_record WHERE end_time < limit_time
+ </select>
+
+ <select id="selectOnTimeCaseLastMonthCount" resultType="java.lang.Long">
+ SELECT COUNT(1) FROM ums_dispose_record WHERE end_time < limit_time AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( create_time, '%Y%m' ) ) =1
+ </select>
+
+ <select id="selectOnTimeCaseRecentlyMonthCount" resultType="java.lang.Long">
+ SELECT COUNT(1) FROM ums_dispose_record WHERE end_time < limit_time AND PERIOD_DIFF( date_format( now( ), '%Y%m' ), date_format( create_time, '%Y%m' ) ) =0
+ </select>
+</mapper>
\ No newline at end of file
--
Gitblit v1.8.0