From 71b6b716361c52af290493d365a328fc1a3467e2 Mon Sep 17 00:00:00 2001
From: nnnjjj123 <494715143@qq.com>
Date: Thu, 28 Jan 2021 11:15:06 +0800
Subject: [PATCH] 1.统计接口 2.健康码

---
 src/main/java/org/springblade/modules/alarm/controller/AlarmController.java |  139 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 138 insertions(+), 1 deletions(-)

diff --git a/src/main/java/org/springblade/modules/alarm/controller/AlarmController.java b/src/main/java/org/springblade/modules/alarm/controller/AlarmController.java
index 8b73b7c..e4e0555 100644
--- a/src/main/java/org/springblade/modules/alarm/controller/AlarmController.java
+++ b/src/main/java/org/springblade/modules/alarm/controller/AlarmController.java
@@ -37,8 +37,9 @@
 import org.springblade.modules.alarm.service.IAlarmService;
 import org.springblade.core.boot.ctrl.BladeController;
 
+import java.text.ParseException;
 import java.text.SimpleDateFormat;
-import java.util.Date;
+import java.util.*;
 
 /**
  *  控制器
@@ -193,4 +194,140 @@
 	}
 
 
+	/**
+	 * 获取过去第几天的日期
+	 *
+	 * @param past
+	 * @return
+	 */
+	public static String getPastDate(int past,Date date) {
+		Calendar calendar = Calendar.getInstance();
+		calendar.setTime(date);
+		calendar.set(Calendar.DATE, calendar.get(Calendar.DATE) - past);
+		Date today = calendar.getTime();
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+		String result = sdf.format(today);
+		return result;
+	}
+	/**
+	 * 获取过去7天内的日期数组
+	 * @return  日期数组
+	 */
+	public static ArrayList<String> pastDay(String time){
+		ArrayList<String> pastDaysList = new ArrayList<>();
+		try {
+			//我这里传来的时间是个string类型的,所以要先转为date类型的。
+			SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
+			Date date = sdf.parse(time);
+			for (int i = 6; i >= 0; i--) {
+				pastDaysList.add(getPastDate(i,date));
+			}
+		}catch (ParseException e){
+			e.printStackTrace();
+		}
+		return pastDaysList;
+	}
+
+
+	/**
+	 * 按接警类型统计树状图
+	 * @param response
+	 * @return
+	 */
+	@GetMapping("/selectScount")
+	public R selectScount(HttpServletResponse response) {
+		response.setHeader("Access-Control-Allow-Origin", "*");
+		response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
+		response.setHeader("Access-Control-Allow-Credentials","true");
+		List<Map<String, Object>> lists = new ArrayList<>();
+		List<Map<String, Object>> listc = new ArrayList<>();
+		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");//设置日期格式
+		String time = df.format(new Date());// new Date()为获取当前系统时间
+		ArrayList<String> strings = pastDay(time);
+		String[] str={"内部","周边","挟持","救护","旁路","火警","紧急","出入","防拆"};
+		Map<String, Object> maps = new HashMap<String, Object>();
+		for (int j=0;j<strings.size();j++){
+			Map<String, Object> map = new HashMap<String, Object>();
+			List<Map<String, Object>> list = alarmService.selectScount(strings.get(j));
+			map.put("time",strings.get(j));
+			for (int i=0;i<list.size();i++){
+				Object waringType = list.get(i).get("waringType");
+				String wname = waringType.toString();
+				switch(wname){
+					case "内部" :
+						map.put("内部",list.get(i).get("cou"));
+						break; //可选
+					case "周边" :
+						map.put("周边",list.get(i).get("cou"));
+						break; //可选
+					case "挟持" :
+						map.put("挟持",list.get(i).get("cou"));
+						break;
+					case "救护" :
+						map.put("救护",list.get(i).get("cou"));
+						break;
+					case "旁路" :
+						map.put("旁路",list.get(i).get("cou"));
+						break;
+					case "火警" :
+						map.put("火警",list.get(i).get("cou"));
+						break;
+					case "紧急" :
+						map.put("紧急",list.get(i).get("cou"));
+						break;
+					case "出入" :
+						map.put("出入",list.get(i).get("cou"));
+						break;
+					default :
+						map.put("防拆",list.get(i).get("cou"));
+				}
+			}
+			lists.add(map);
+		}
+		maps.put("lists",lists);
+		maps.put("type",str);
+		listc.add(maps);
+		return R.data(listc);
+	}
+	public static String getPastDate(int past) {
+		Calendar calendar = Calendar.getInstance();
+		calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) - past);
+		Date today = calendar.getTime();
+		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
+		String result = format.format(today);
+		return result;
+	}
+
+	/**
+	 * 查询7天内数据
+	 * @param response
+	 * @return
+	 */
+	@GetMapping("/selectListSe")
+	public R selectListSe(HttpServletResponse response) {
+		response.setHeader("Access-Control-Allow-Origin", "*");
+		response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
+		response.setHeader("Access-Control-Allow-Credentials","true");
+		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");//设置日期格式
+		String time = df.format(new Date());// new Date()为获取当前系统时间
+		String pastDate = getPastDate(7);
+		List<AlarmVO> alarmVOS = alarmService.selectListSe(pastDate, time);
+		for (int i=0;i<alarmVOS.size();i++){
+		}
+		return R.data(alarmVOS);
+	}
+
+
+	/**
+	 * 修改警情类型
+	 */
+	@PostMapping("/updateJtype")
+	public R updateJtype(String id,String czTime,String bz,String jjTime,HttpServletResponse response) {
+		response.setHeader("Access-Control-Allow-Origin", "*");
+		response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
+		response.setHeader("Access-Control-Allow-Credentials","true");
+		alarmService.updateJtype(id,czTime,bz,jjTime);
+		return R.success("修改成功");
+	}
+
 }

--
Gitblit v1.9.3