From 3ce737b52fca082ac3a2ecda4a848e2e4abcd0ee Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Thu, 06 Jul 2023 09:38:18 +0800
Subject: [PATCH] Merge branch 'jtdev' of https://hbsl-code.gistack.cn/hbwri/manager into jtdev
---
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/mapper/PatrolTaskMapper.xml | 317 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 315 insertions(+), 2 deletions(-)
diff --git a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/mapper/PatrolTaskMapper.xml b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/mapper/PatrolTaskMapper.xml
index 16a2c07..5a9c4fb 100644
--- a/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/mapper/PatrolTaskMapper.xml
+++ b/skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/mapper/PatrolTaskMapper.xml
@@ -35,6 +35,42 @@
AND spt.state = #{patrolTask.state}
</if>
</select>
+ <!--获取全部-->
+ <select id="getAll" resultType="cn.gistack.sm.patrol.entity.PatrolTask">
+ SELECT
+ spt.*,spt2.name as patrolTypeName,
+ route.ROUTE_COORDINATES routeRange,
+ u.real_name toUserName
+ FROM sm_patrol_task spt
+ left join sm_patrol_type spt2 on spt.task_type = spt2.id
+ LEFT JOIN sm_patrol_route route ON route.id = spt.route_id
+ LEFT JOIN blade_user u ON u.id = spt.to_user_id
+ WHERE spt.is_deleted = 0
+ <if test="patrolTask.title !=null and patrolTask.title!=''">
+ AND spt.title LIKE CONCAT('%',#{patrolTask.title},'%')
+ </if>
+ <if test="patrolTask.startTime !=null and patrolTask.startTime !=''">
+ AND DATE_FORMAT(spt.start_time,'%Y-%m-%d') >= #{patrolTask.startTime}
+ </if>
+ <if test="patrolTask.endTime !=null and patrolTask.endTime !=''">
+ AND DATE_FORMAT(spt.end_time,'%Y-%m-%d') <= #{patrolTask.endTime}
+ </if>
+ <if test="patrolTask.projectId !=null and patrolTask.projectId !='' ">
+ AND spt.project_id = #{patrolTask.projectId}
+ </if>
+ <if test="patrolTask.reservoirName !=null and patrolTask.reservoirName !='' ">
+ AND spt.reservoir_name LIKE CONCAT('%',#{patrolTask.reservoirName},'%')
+ </if>
+ <if test="patrolTask.toUserId != null and patrolTask.toUserId !=''">
+ AND spt.to_user_id = #{patrolTask.toUserId}
+ </if>
+ <if test="patrolTask.state != null and patrolTask.state !=''">
+ AND spt.state = #{patrolTask.state}
+ </if>
+ <if test="patrolTask.finish == 2">
+ AND spt.state != 3
+ </if>
+ </select>
<!--查询巡查人员统计数据信息-->
<select id="getPatrolTaskStatistic" resultType="cn.gistack.sm.patrol.vo.PatrolTaskStatisticsVO">
@@ -138,12 +174,289 @@
FROM sm_patrol_task spt
where spt.id = #{id}
</select>
- <select id="customizeGetById" resultType="cn.gistack.sm.patrol.entity.PatrolTask">
- SELECT T.ID,T.TITLE,T.TO_USER_ID,A.PROBLEM_COUNT,T.PROJECT_ID,T.CONTENT,T.STATE FROM SM_PATROL_TASK T
+ <select id="customizeGetById" resultType="cn.gistack.sm.patrol.vo.PatrolTaskVO">
+ SELECT T.ID,T.TITLE,T.TO_USER_ID,U.REAL_NAME toUserIdName,A.PROBLEM_COUNT,T.PROJECT_ID,T.CONTENT,T.STATE,T.PATROL_ROUTE
+ FROM SM_PATROL_TASK T
+ LEFT JOIN BLADE_USER U ON U.ID = T.TO_USER_ID
LEFT JOIN (
SELECT COUNT(*) PROBLEM_COUNT,R.TASK_ID FROM SM_PATROL_REPORT R WHERE R.TASK_ID = #{id} AND R.STATUS = 2 GROUP BY R.TASK_ID
)A ON A.TASK_ID = T.ID
WHERE T.ID = #{id}
AND T.IS_DELETED = 0
</select>
+ <!--获取市级巡查数据-->
+ <select id="getCityReportPage" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport">
+ SELECT
+ a."p_ad_code" adCode,
+ a."p_ad_name" adName,
+ sum(a.need) AS need,
+ sum(a.finish) AS finish,
+ sum(a.todo) AS todo,
+ #{patrolTaskReport.startTime} AS startTime,
+ #{patrolTaskReport.endTime} AS endTime
+ FROM (
+ SELECT
+ aab."p_ad_code",aab."p_ad_name",
+ COUNT(*) AS need,
+ SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish,
+ SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo
+ FROM SM_PATROL_TASK t
+ LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id
+ LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = CONCAT(arb."ad_guid",'000000')
+ where t.is_deleted = 0 AND aab."p_ad_code" != '420000000000'
+ <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime}
+ </if>
+ <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime}
+ </if>
+ GROUP BY (aab."p_ad_code",aab."p_ad_name")
+ ORDER BY aab."p_ad_code"
+ ) A
+ GROUP BY (a."p_ad_code",a."p_ad_name") order by a."p_ad_code"
+
+ </select>
+ <!--获取区县巡查数据-->
+ <select id="getCountyReportPage" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport">
+ SELECT
+ aab."ad_name" AS adName,
+ aab."guid" AS adCode,
+ #{patrolTaskReport.startTime} AS startTime,
+ #{patrolTaskReport.endTime} AS endTime,
+ COUNT(*) AS need,
+ SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish,
+ SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo
+ FROM SM_PATROL_TASK t
+ LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id
+ LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = CONCAT(arb."ad_guid",'000000')
+ WHERE t.IS_DELETED = 0
+ <if test="patrolTaskReport.padCode !=null and patrolTaskReport.padCode !=''">
+ AND aab."p_ad_code" = #{patrolTaskReport.padCode}
+ </if>
+ <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime}
+ </if>
+ <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime}
+ </if>
+ GROUP BY (aab."ad_name",aab."guid")
+ ORDER BY aab."guid"
+ </select>
+ <!--获取乡镇巡查数据-->
+ <select id="getTownReportPage" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport">
+ SELECT
+ aab."ad_name" AS adName,
+ aab."guid" AS adCode,
+ #{patrolTaskReport.startTime} AS startTime,
+ #{patrolTaskReport.endTime} AS endTime,
+ COUNT(*) AS need,
+ SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish,
+ SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo
+ FROM SM_PATROL_TASK t
+ LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id
+ LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = arb."interior_ad_guid"
+ WHERE t.IS_DELETED = 0
+ <if test="patrolTaskReport.padCode !=null and patrolTaskReport.padCode !=''">
+ AND aab."p_ad_code" = #{patrolTaskReport.padCode}
+ </if>
+ <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime}
+ </if>
+ <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime}
+ </if>
+ GROUP BY (aab."ad_name",aab."guid")
+ ORDER BY aab."guid"
+ </select>
+ <!--获取水库巡查数据-->
+ <select id="getReservoirReportPage" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport">
+ SELECT
+ arb."guid" AS reservoirId,
+ arb."name" AS reservoirName,
+ aab."guid" AS adCode,
+ aab."ad_name" AS adName,
+ #{patrolTaskReport.startTime} AS startTime,
+ #{patrolTaskReport.endTime} AS endTime,
+ COUNT(*) AS need,
+ SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish,
+ SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo
+ FROM SM_PATROL_TASK t
+ LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id
+ LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = arb."interior_ad_guid"
+ WHERE
+ t.IS_DELETED = 0
+ <if test="patrolTaskReport.adCode != null and patrolTaskReport.adCode !=''">
+ AND aab."ad_code" = #{patrolTaskReport.adCode}
+ </if>
+ <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime}
+ </if>
+ <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime}
+ </if>
+ GROUP BY (arb."guid",arb."name",aab."guid",aab."ad_name")
+ ORDER BY arb."guid"
+ </select>
+
+
+
+ <!--获取市级巡查数据-->
+ <select id="getCityReportList" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport">
+ SELECT
+ a."p_ad_code" adCode,
+ a."p_ad_name" adName,
+ sum(a.need) AS need,
+ sum(a.finish) AS finish,
+ sum(a.todo) AS todo,
+ #{patrolTaskReport.startTime} AS startTime,
+ #{patrolTaskReport.endTime} AS endTime
+ FROM (
+ SELECT
+ aab."p_ad_code",aab."p_ad_name",
+ COUNT(*) AS need,
+ SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish,
+ SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo
+ FROM SM_PATROL_TASK t
+ LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id
+ LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = CONCAT(arb."ad_guid",'000000')
+ where t.is_deleted = 0 AND aab."p_ad_code" != '420000000000'
+ <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime}
+ </if>
+ <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime}
+ </if>
+ GROUP BY (aab."p_ad_code",aab."p_ad_name")
+ ORDER BY aab."p_ad_code"
+ ) A
+ GROUP BY (a."p_ad_code",a."p_ad_name") order by a."p_ad_code"
+
+ </select>
+ <!--获取区县巡查数据-->
+ <select id="getCountyReportList" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport">
+ SELECT
+ aab."ad_name" AS adName,
+ aab."guid" AS adCode,
+ #{patrolTaskReport.startTime} AS startTime,
+ #{patrolTaskReport.endTime} AS endTime,
+ COUNT(*) AS need,
+ SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish,
+ SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo
+ FROM SM_PATROL_TASK t
+ LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id
+ LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = CONCAT(arb."ad_guid",'000000')
+ WHERE t.IS_DELETED = 0
+ <if test="patrolTaskReport.padCode !=null and patrolTaskReport.padCode !=''">
+ AND aab."p_ad_code" = #{patrolTaskReport.padCode}
+ </if>
+ <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime}
+ </if>
+ <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime}
+ </if>
+ GROUP BY (aab."ad_name",aab."guid")
+ ORDER BY aab."guid"
+ </select>
+ <!--获取乡镇巡查数据-->
+ <select id="getTownReportList" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport">
+ SELECT
+ aab."ad_name" AS adName,
+ aab."guid" AS adCode,
+ #{patrolTaskReport.startTime} AS startTime,
+ #{patrolTaskReport.endTime} AS endTime,
+ COUNT(*) AS need,
+ SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish,
+ SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo
+ FROM SM_PATROL_TASK t
+ LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id
+ LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = arb."interior_ad_guid"
+ WHERE t.IS_DELETED = 0
+ <if test="patrolTaskReport.padCode !=null and patrolTaskReport.padCode !=''">
+ AND aab."p_ad_code" = #{patrolTaskReport.padCode}
+ </if>
+ <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime}
+ </if>
+ <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime}
+ </if>
+ GROUP BY (aab."ad_name",aab."guid")
+ ORDER BY aab."guid"
+ </select>
+ <!--获取水库巡查数据-->
+ <select id="getReservoirReportList" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport">
+ SELECT
+ arb."guid" AS reservoirId,
+ arb."name" AS reservoirName,
+ aab."guid" AS adCode,
+ aab."ad_name" AS adName,
+ #{patrolTaskReport.startTime} AS startTime,
+ #{patrolTaskReport.endTime} AS endTime,
+ COUNT(*) AS need,
+ SUM(CASE WHEN t.state = 3 THEN 1 ELSE 0 END) AS finish,
+ SUM(CASE WHEN t.state = 1 or state = 2 THEN 1 ELSE 0 END) AS todo
+ FROM SM_PATROL_TASK t
+ LEFT JOIN SJZT_MD."att_res_base" arb on arb."guid" = t.project_id
+ LEFT JOIN SJZT_MD."att_ad_base" aab on aab."guid" = arb."interior_ad_guid"
+ WHERE
+ t.IS_DELETED = 0
+ <if test="patrolTaskReport.adCode != null and patrolTaskReport.adCode !=''">
+ AND aab."ad_code" = #{patrolTaskReport.adCode}
+ </if>
+ <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime}
+ </if>
+ <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime}
+ </if>
+ GROUP BY (arb."guid",arb."name",aab."guid",aab."ad_name")
+ ORDER BY arb."guid"
+ </select>
+
+
+
+
+
+
+ <!--水库巡查-->
+ <select id="getTaskReportDetailRegion" resultType="cn.gistack.sm.patrol.vo.PatrolTaskReport">
+ SELECT
+ arb."guid" AS reservoirId,
+ arb."name" AS reservoirName,
+ aab."ad_name" AS adName,
+ aab."guid" AS adCode,
+ t.start_time,
+ u.real_name patrolUserName,
+ t.state,
+ (
+ CASE t.state
+ WHEN '1' THEN '未完成'
+ WHEN '2' THEN '进行中'
+ ELSE '已完成'
+ END
+ )stateName
+ FROM SM_PATROL_TASK T
+ LEFT JOIN SJZT_MD."att_res_base" arb ON arb."guid" = t.project_id
+ LEFT JOIN SJZT_MD."att_ad_base" aab ON aab."guid" = CONCAT(arb."ad_guid",'000000')
+ LEFT JOIN BLADE_USER u ON u.id = t.to_user_id
+ WHERE T.IS_DELETED = 0
+ <if test="patrolTaskReport.adCode !=null and patrolTaskReport.adCode !=''">
+ AND aab."guid" LIKE CONCAT('%',#{patrolTaskReport.adCode},'%')
+ </if>
+ <if test="patrolTaskReport.reservoirName !=null and patrolTaskReport.reservoirName !=''">
+ AND arb."name" LIKE CONCAT('%',#{patrolTaskReport.reservoirName},'%')
+ </if>
+ <if test="patrolTaskReport.startTime !=null and patrolTaskReport.startTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') >= #{patrolTaskReport.startTime}
+ </if>
+ <if test="patrolTaskReport.endTime !=null and patrolTaskReport.endTime !=''">
+ AND DATE_FORMAT(t.start_time,'%Y-%m-%d') <= #{patrolTaskReport.endTime}
+ </if>
+ <if test="patrolTaskReport.reservoirId !=null and patrolTaskReport.reservoirId !=''">
+ AND arb."guid" = #{patrolTaskReport.reservoirId}
+ </if>
+ </select>
+
+
</mapper>
--
Gitblit v1.9.3