| | |
| | | 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.*; |
| | | |
| | | /** |
| | | * 控制器 |
| | |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取过去第几天的日期 |
| | | * |
| | | * @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); |
| | | return R.data(alarmVOS); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 修改警情类型 |
| | | */ |
| | | @PostMapping("/updateJtype") |
| | | public R updateJtype(String id,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); |
| | | return R.success("修改成功"); |
| | | } |
| | | |
| | | } |
| | |
| | | import org.springblade.modules.equipment.entity.Equipment; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * Mapper 接口 |
| | |
| | | */ |
| | | List<AlarmVO> selectAlarmPage(IPage page, AlarmVO alarm); |
| | | List<AlarmVO> selectList(String jtype,String addvcd,String waringType,String beginTime,String endTime); |
| | | List<AlarmVO> selectListSe(String beginTime,String endTime); |
| | | List<AlarmVO> selectInfo(String id); |
| | | List<AlarmVO> selecttx(String id); |
| | | void deletejj(String id); |
| | | |
| | | void s(Alarm alarm); |
| | | void updateJtype(String id); |
| | | void updateOne(Alarm alarm); |
| | | |
| | | List<Map<String, Object>> selectScount(String time); |
| | | |
| | | } |
| | |
| | | content=#{content},waringType=#{waringType},deviceNumber=#{deviceNumber},region=#{region},addvcd=#{addvcd},alarmId=#{alarmId},level=#{level},rname=#{rname},jd=#{jd},wd=#{wd},coordinate=POINT(#{jd},#{wd}),jtype=#{jtype} where id=#{id} |
| | | </update> |
| | | |
| | | |
| | | <select id="selectScount" resultType="java.util.HashMap"> |
| | | SELECT COUNT(*) as cou,waringType FROM `sys_alarm` WHERE alarmTime like concat(concat('%', #{time}), '%') GROUP BY waringType |
| | | </select> |
| | | |
| | | |
| | | <select id="selectListSe" resultMap="alarmResultMap"> |
| | | SELECT |
| | | a.id, |
| | | a.alarmType, |
| | | a.alarmPeople, |
| | | a.alarmTime, |
| | | a.galarmPeople, |
| | | a.sex, |
| | | a.phoneNumber, |
| | | a.place, |
| | | a.content, |
| | | a.waringType, |
| | | a.deviceNumber, |
| | | a.region, |
| | | a.addvcd, |
| | | a.alarmId, |
| | | a.LEVEL, |
| | | ST_ASTEXT (a.coordinate ) AS coordinate, |
| | | a.jd, |
| | | a.wd, |
| | | a.jtype, |
| | | a.rname, |
| | | d.addvnm, |
| | | e.serialNumber, |
| | | e.stype, |
| | | e.channelNumber |
| | | FROM |
| | | sys_alarm a LEFT JOIN sys_district d on d.addvcds=a.addvcd LEFT JOIN sys_equipment e on e.deviceNumber=a.deviceNumber where |
| | | DATE_FORMAT(alarmTime,'%Y-%m-%d') >=#{beginTime} and DATE_FORMAT(alarmTime,'%Y-%m-%d') <=#{endTime} ORDER BY alarmTime desc |
| | | </select> |
| | | |
| | | |
| | | <update id="updateJtype"> |
| | | update sys_alarm SET jtype=1 where id=#{id} |
| | | </update> |
| | | </mapper> |
| | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 服务类 |
| | |
| | | void deletejj(String id); |
| | | void s(Alarm alarm); |
| | | void updateOne(Alarm alarm); |
| | | List<Map<String, Object>> selectScount(String time); |
| | | List<AlarmVO> selectListSe(String beginTime,String endTime); |
| | | void updateJtype(String id); |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * 服务实现类 |
| | |
| | | baseMapper.updateOne(alarm); |
| | | } |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> selectScount(String time) { |
| | | return baseMapper.selectScount(time); |
| | | } |
| | | |
| | | @Override |
| | | public List<AlarmVO> selectListSe(String beginTime, String endTime) { |
| | | return baseMapper.selectListSe(beginTime, endTime); |
| | | } |
| | | |
| | | @Override |
| | | public void updateJtype(String id) { |
| | | baseMapper.updateJtype(id); |
| | | } |
| | | |
| | | } |
| | |
| | | Map<String, Object> maps = new HashMap<String, Object>(); |
| | | Map<String, Object> mapse = new HashMap<String, Object>(); |
| | | mapa.put("value",list1.get(0).get("counta")); |
| | | mapa.put("backgroundColor","#FF0000"); |
| | | mapa.put("backgroundColor","#F56C6C"); |
| | | mapa.put("prefixText","警情总数"); |
| | | mapa.put("suffixText","条"); |
| | | mape.put("value",list1.get(1).get("counta")); |
| | | mape.put("backgroundColor","#000000"); |
| | | mape.put("backgroundColor","#67C23A"); |
| | | mape.put("prefixText","设备总数"); |
| | | mape.put("suffixText","个"); |
| | | |
| | | maps.put("value",list1.get(2).get("counta")); |
| | | maps.put("backgroundColor","#6CDEFF"); |
| | | maps.put("backgroundColor","#409EFF"); |
| | | maps.put("prefixText","用户总数"); |
| | | maps.put("suffixText","个"); |
| | | |
| | | mapse.put("value",list1.get(3).get("counta")); |
| | | mapse.put("backgroundColor","#FF9900"); |
| | | mapse.put("prefixText","出警队伍总数"); |
| | | mapse.put("suffixText","队"); |
| | | mapse.put("backgroundColor","#E6A23C"); |
| | | mapse.put("prefixText","处警队伍总数"); |
| | | mapse.put("suffixText","人"); |
| | | lists.add(mapa); |
| | | lists.add(mape); |
| | | lists.add(maps); |
| | |
| | | d.addvnm as name |
| | | FROM |
| | | sys_suser s |
| | | LEFT JOIN sys_district d ON d.addvcds = s.addvcd |
| | | INNER JOIN sys_district d ON d.addvcds = s.addvcd |
| | | GROUP BY |
| | | s.addvcd |
| | | </select> |
| | |
| | | d.addvnm as name |
| | | FROM |
| | | sys_equipment s |
| | | LEFT JOIN sys_district d ON d.addvcds = s.addvcd |
| | | INNER JOIN sys_district d ON d.addvcds = s.addvcd |
| | | WHERE s.parent_id!=0 |
| | | GROUP BY |
| | | s.addvcd |
| | | </select> |
| | | <select id="selectWar" resultType="java.util.HashMap"> |
| | | SELECT COUNT(*) as cou,waringType FROM `sys_alarm` GROUP BY waringType |
| | | SELECT COUNT(*) as cou,waringType FROM `sys_alarm` GROUP BY waringType ORDER BY cou desc |
| | | </select> |
| | | |
| | | |
| | |
| | | <select id="lazyList" resultMap="deptVOResultMap"> |
| | | SELECT dept.id,dept.deviceName,dept.deviceNumber,dept.deviceType,dept.ownership, |
| | | dept.ownerId,dept.devicestate,dept.stime, |
| | | ST_ASTEXT(dept.coordinate) as coordinate,dept.dtype, |
| | | ST_ASTEXT(dept.coordinate) as coordinate,dept.dtype,dept.serialNumber,dept.stype,dept.channelNumber,dept.pay,dept.expireTime,dept.heartbeat, |
| | | dept.parent_id,FORMAT(dept.jd,6) as jd,FORMAT(dept.wd,6) as wd,dept.street as |
| | | streeName,u.yname,d.addvnm,dept.addvcd, |
| | | ( |