From e40eac7fe61668a81048fb1ca5f2f5a9c8423438 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Wed, 17 Mar 2021 15:22:27 +0800
Subject: [PATCH] 主动报警统计接口OK,用户数量统计颜色修改

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java                 |    8 ++++
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml                     |   22 +++++++++++
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java                    |    9 ++++
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/catalog/controller/catalogController.java        |    2 
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java         |   16 ++++++++
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java |    2 
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java            |   20 +++++++++
 7 files changed, 76 insertions(+), 3 deletions(-)

diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java
index b097ea1..82e8aec 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java
@@ -35,6 +35,7 @@
 import org.springblade.jfpt.healthcode.service.IhealthcodeService;
 import org.springblade.jfpt.parcel.service.ParcelService;
 import org.springblade.jfpt.parcel.util.DateUtils;
+import org.springblade.jfpt.parcel.vo.ConditionVo;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
@@ -343,7 +344,24 @@
 
 
 	/**
-	 * 一周警情统计  2021-3-16 arsn
+	 * 主动报警统计   饼图展示
+	 * @param response
+	 * @param conditionVo status 0:本日   1:本月  2:本月
+	 * @return
+	 */
+	@GetMapping("/selectAlarmSum")
+	public R selectAlarmSum(HttpServletResponse response, ConditionVo conditionVo) {
+		response.setHeader("Access-Control-Allow-Origin", "*");
+		response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
+		response.setHeader("Access-Control-Allow-Credentials","true");
+		//返回数据
+		return R.data(alarmService.selectAlarmSum(conditionVo));
+	}
+
+
+
+	/**
+	 * 一周警情统计(主动报警+被动报警类型(体温异常,红码,违禁品))  2021-3-16 arsn  柱状图展示
 	 * @param response
 	 * @return
 	 */
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java
index 99bf705..5311484 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java
@@ -18,8 +18,10 @@
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
 import org.springblade.jfpt.alarm.entity.Alarm;
 import org.springblade.jfpt.alarm.vo.AlarmVO;
+import org.springblade.jfpt.parcel.vo.ConditionVo;
 
 import java.util.List;
 import java.util.Map;
@@ -65,4 +67,11 @@
 	 * @return
 	 */
 	List<Integer> selectAlarmData();
+
+	/**
+	 * 主动报警统计   饼图展示
+	 * @param conditionVo status 0:本日   1:本月  2:本月
+	 * @return
+	 */
+    List<Map<String, Object>> selectAlarmSum(@Param("conditionVo") ConditionVo conditionVo);
 }
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml
index e8459ae..e8e1b6e 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml
@@ -306,4 +306,26 @@
 		 on
 		 a.click_date = b.datetime
     </select>
+
+
+    <!--查询本日,本周,本月 主动报警的数量-->
+    <select id="selectAlarmSum" resultType="java.util.HashMap">
+        select sa.alarmType name,IFNULL(sb.count, 0) value from  (select alarmType from sys_alarm GROUP BY alarmType) sa
+        left join
+        ( select alarmType,count(*) count from sys_alarm
+            where 1=1
+            <if test="conditionVo.status==0">
+                and to_days(alarmTime)  = to_days(now())
+            </if>
+            <if test="conditionVo.status==1">
+                and YEARWEEK(date_format(alarmTime,'%Y-%m-%d'),1) = YEARWEEK(now(),1)
+            </if>
+            <if test="conditionVo.status==2">
+                and date_format(alarmTime,'%Y%m') = date_format(now(),'%Y%m')
+            </if>
+            group by alarmType
+        ) sb
+        on
+        sa.alarmType = sb.alarmType
+    </select>
 </mapper>
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java
index 07b4eca..9c8ae12 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java
@@ -20,6 +20,7 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.springblade.jfpt.alarm.entity.Alarm;
 import org.springblade.jfpt.alarm.vo.AlarmVO;
+import org.springblade.jfpt.parcel.vo.ConditionVo;
 
 import java.util.List;
 import java.util.Map;
@@ -64,4 +65,11 @@
 	 * @return
 	 */
 	Map<String, Object> selectAlarmData();
+
+	/**
+	 * 主动报警统计   饼图展示
+	 * @param conditionVo status 0:本日   1:本月  2:本月
+	 * @return
+	 */
+	List<Map<String,Object>> selectAlarmSum(ConditionVo conditionVo);
 }
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java
index 17f052a..68f1a52 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java
@@ -24,6 +24,7 @@
 import org.springblade.jfpt.alarm.mapper.AlarmMapper;
 import org.springblade.jfpt.alarm.service.IAlarmService;
 import org.springblade.jfpt.alarm.vo.AlarmVO;
+import org.springblade.jfpt.parcel.vo.ConditionVo;
 import org.springframework.stereotype.Service;
 
 import java.text.SimpleDateFormat;
@@ -125,4 +126,19 @@
 		//返回数据
 		return map;
 	}
+
+	/**
+	 * 主动报警统计   饼图展示
+	 * @param conditionVo status 0:本日   1:本月  2:本月
+	 * @return
+	 */
+	@Override
+	public List<Map<String, Object>> selectAlarmSum(ConditionVo conditionVo) {
+		//status 不为空时
+		if (null!=conditionVo.getStatus()){
+			return baseMapper.selectAlarmSum(conditionVo);
+		}
+		//返回数据
+		return null;
+	}
 }
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/catalog/controller/catalogController.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/catalog/controller/catalogController.java
index 134eaa5..bc7dd83 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/catalog/controller/catalogController.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/catalog/controller/catalogController.java
@@ -278,7 +278,7 @@
 
 		//5.业主总数
 		mapsu.put("value",suserCount);
-		mapsu.put("backgroundColor","#EE1D23");
+		mapsu.put("backgroundColor","#00BFFF");
 		mapsu.put("prefixText","用户数量");
 		mapsu.put("suffixText","个");
 		//数据存入集合
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java
index b6a02e1..20855e6 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java
@@ -136,7 +136,7 @@
 		int equipmentCount = 0;
 		long hearbeat = 0;
 		//遍历集合数据,对比心跳时间,得出在线的设备数量
-		if (status==0){
+		if (status==0 && equipmentVOS.size()>0){
 			for (EquipmentVO e:equipmentVOS) {
 				try {
 					hearbeat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(e.getHeartbeat()).getTime();

--
Gitblit v1.9.3