From 472e687bf48fba15a2dc099f5706e67c6f5d103c Mon Sep 17 00:00:00 2001
From: CeDo <cedoogle@gmail.com>
Date: 星期四, 03 六月 2021 19:56:29 +0800
Subject: [PATCH] 首页待处理事件统计信息

---
 springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/EventGridDataApi.java |    4 +-
 springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventGridDataMapper.xml          |   57 +++++++++++++++++++++++++++-
 2 files changed, 56 insertions(+), 5 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/EventGridDataApi.java b/springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/EventGridDataApi.java
index 3695e7c..ac6af3f 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/EventGridDataApi.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/grid_app/src/main/java/com/panzhihua/grid_app/api/EventGridDataApi.java
@@ -17,6 +17,7 @@
 import com.panzhihua.common.service.grid.GridService;
 
 import javax.annotation.Resource;
+import javax.validation.Valid;
 import javax.ws.rs.PathParam;
 
 import com.panzhihua.common.model.vos.grid.EventGridDataDetailsVO;
@@ -58,9 +59,8 @@
      */
     @GetMapping("/myGridTodoData")
     @ApiOperation(value = "网格待处理统计数据", response= UserEventGridDataVO.class)
-    R myTodoGridData(){
+    R myTodoGridData(@Valid @ModelAttribute EventGridTodoDataDTO eventGridTodoDataDTO){
         LoginUserInfoVO loginUserInfoVO = this.getLoginUserInfo();
-        EventGridTodoDataDTO eventGridTodoDataDTO = new EventGridTodoDataDTO();
         eventGridTodoDataDTO.setUserId(loginUserInfoVO.getUserId());
         return gridService.getGridTodoData(eventGridTodoDataDTO);
     }
diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventGridDataMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventGridDataMapper.xml
index f90bf38..9f7d8f3 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventGridDataMapper.xml
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_grid/src/main/resources/mapper/EventGridDataMapper.xml
@@ -172,10 +172,61 @@
 
     <select id="getGridTodoData" resultType="com.panzhihua.common.model.vos.grid.UserEventGridDataVO"
 		parameterType="com.panzhihua.common.model.dtos.grid.EventGridTodoDataDTO">
-		SELECT e.event_category , COUNT(*) as todoNums
+		SELECT IFNULL(SUM(t.todoNums), 0), 1 event_type
+		FROM (
+		SELECT  IFNULL(count(e.id), 0) as todoNums
 		FROM EVENT  e
-		WHERE e.event_category = 1 AND event_status = 2 AND  event_process_status = 1 and process_type = 1  AND grid_id = #{eventGridTodoDataDTO.gridId}
-		GROUP BY e.event_category
+		WHERE e.event_category = 1 AND event_status = 2
+		AND event_process_status = 1 AND process_type = 1
+		AND grid_id = #{eventGridTodoDataDTO.gridId}
+		AND e.event_type = 1
+		GROUP BY e.event_type
+		) t
+		UNION ALL
+		SELECT IFNULL(SUM(t.todoNums), 0), 2 event_type
+		FROM (
+		SELECT  IFNULL(count(e.id), 0) as todoNums
+		FROM EVENT  e
+		WHERE e.event_category = 1 AND event_status = 2
+		AND event_process_status = 1 AND process_type = 1
+		AND grid_id = #{eventGridTodoDataDTO.gridId}
+		AND e.event_type =2
+		GROUP BY e.event_type
+		) t
+		UNION ALL
+		SELECT IFNULL(SUM(t.todoNums), 0), 3 event_type
+		FROM (
+		SELECT  IFNULL(count(e.id), 0) as todoNums
+		FROM EVENT  e
+		WHERE e.event_category = 1 AND event_status = 2
+		AND event_process_status = 1 AND process_type = 1
+		AND grid_id = #{eventGridTodoDataDTO.gridId}
+		AND e.event_type =3
+		GROUP BY e.event_type
+		) t
+		UNION ALL
+		SELECT IFNULL(SUM(t.todoNums), 0), 4 event_type
+		FROM (
+		SELECT  IFNULL(count(e.id), 0) as todoNums
+		FROM EVENT  e
+		WHERE e.event_category = 1 AND event_status = 2
+		AND event_process_status = 1 AND process_type = 1
+		AND grid_id = #{eventGridTodoDataDTO.gridId}
+		AND e.event_type =4
+		GROUP BY e.event_type
+		) t
+		UNION ALL
+		SELECT IFNULL(SUM(t.todoNums), 0), 5 event_type
+		FROM (
+		SELECT  IFNULL(count(e.id), 0) as todoNums
+		FROM EVENT  e
+		WHERE e.event_category = 1 AND event_status = 2
+		AND event_process_status = 1 AND process_type = 1
+		AND grid_id = #{eventGridTodoDataDTO.gridId}
+		AND e.event_type =5
+		GROUP BY e.event_type
+		) t
+
 	</select>
 
 </mapper>

--
Gitblit v1.7.1