From dc4a461fa49310b5a3a1cecfb6e9f23d06002b32 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Thu, 09 Mar 2023 14:49:32 +0800
Subject: [PATCH] 大屏接口
---
src/main/java/org/springblade/modules/dp/service/impl/ComprehensiveStatisticsServiceImpl.java | 50 +++++
src/main/java/org/springblade/modules/vehicle/entity/VehicleEntity.java | 10 +
src/main/java/org/springblade/modules/dp/mapper/ComprehensiveStatisticsMapper.xml | 79 +++++++
src/main/java/org/springblade/modules/dp/mapper/FireWarningMapper.xml | 6
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java | 6
src/main/java/org/springblade/modules/dp/controller/FireWarningController.java | 44 ++++
src/main/java/org/springblade/modules/dp/service/impl/FireWarningServiceImpl.java | 12 +
src/main/java/org/springblade/modules/dp/service/IFireWarningService.java | 4
src/main/java/org/springblade/modules/fire/vo/FireVO.java | 26 ++
src/main/java/org/springblade/modules/fire/mapper/FireMapper.java | 2
src/main/java/org/springblade/modules/system/dto/DeptDTO.java | 5
src/main/java/org/springblade/common/config/BladeConfiguration.java | 1
src/main/java/org/springblade/modules/dp/mapper/ComprehensiveStatisticsMapper.java | 22 ++
src/main/java/org/springblade/modules/fire/service/IFireService.java | 2
src/main/java/org/springblade/modules/system/mapper/DeptMapper.java | 6
src/main/java/org/springblade/modules/dp/controller/ComprehensiveStatisticsController.java | 97 +++++++++
src/main/java/org/springblade/modules/dp/controller/MilitaryLocalCoordinationController.java | 68 ++++++
src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml | 20 ++
src/main/java/org/springblade/modules/device/entity/DeviceEntity.java | 10 +
src/main/java/org/springblade/modules/dp/service/IComprehensiveStatisticsService.java | 39 +++
src/main/java/org/springblade/modules/system/service/IDeptService.java | 6
src/main/java/org/springblade/modules/dp/mapper/FireWarningMapper.java | 7
src/main/java/org/springblade/modules/fire/mapper/FireMapper.xml | 35 +++
src/main/java/org/springblade/modules/fire/service/impl/FireServiceImpl.java | 5
24 files changed, 554 insertions(+), 8 deletions(-)
diff --git a/src/main/java/org/springblade/common/config/BladeConfiguration.java b/src/main/java/org/springblade/common/config/BladeConfiguration.java
index 95335ba..c9106cb 100644
--- a/src/main/java/org/springblade/common/config/BladeConfiguration.java
+++ b/src/main/java/org/springblade/common/config/BladeConfiguration.java
@@ -51,6 +51,7 @@
secureRegistry.excludePathPatterns("/webjars/**");
secureRegistry.excludePathPatterns("/swagger-resources/**");
secureRegistry.excludePathPatterns("/druid/**");
+ secureRegistry.excludePathPatterns("/dp/**");
return secureRegistry;
}
diff --git a/src/main/java/org/springblade/modules/device/entity/DeviceEntity.java b/src/main/java/org/springblade/modules/device/entity/DeviceEntity.java
index 73281b2..51ace8d 100644
--- a/src/main/java/org/springblade/modules/device/entity/DeviceEntity.java
+++ b/src/main/java/org/springblade/modules/device/entity/DeviceEntity.java
@@ -56,5 +56,15 @@
*/
@ApiModelProperty(value = "所在单位id")
private String deptId;
+ /**
+ * 经度
+ */
+ @ApiModelProperty(value = "经度")
+ private String lon;
+ /**
+ * 纬度
+ */
+ @ApiModelProperty(value = "纬度")
+ private String lat;
}
diff --git a/src/main/java/org/springblade/modules/dp/controller/ComprehensiveStatisticsController.java b/src/main/java/org/springblade/modules/dp/controller/ComprehensiveStatisticsController.java
new file mode 100644
index 0000000..c4d9ca3
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/controller/ComprehensiveStatisticsController.java
@@ -0,0 +1,97 @@
+package org.springblade.modules.dp.controller;
+
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.tool.api.R;
+import org.springblade.modules.device.entity.DeviceEntity;
+import org.springblade.modules.dp.service.IComprehensiveStatisticsService;
+import org.springblade.modules.fire.service.IFireService;
+import org.springblade.modules.fire.vo.FireVO;
+import org.springblade.modules.fireSupplement.service.IFireSupplementService;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.HashMap;
+import java.util.List;
+
+/**
+ * 大屏综合统计 控制器
+ *
+ * @author GuoShiLong
+ * @since 2023-03-08
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("dp/comprehensiveStatistics")
+@Api(value = "综合统计", tags = "综合统计接口")
+public class ComprehensiveStatisticsController extends BladeController {
+ private IComprehensiveStatisticsService comprehensiveStatisticsService;
+ private IFireService fireService;
+ private IFireSupplementService fireSupplementService;
+
+ /**
+ * 数据概览 (出警次数还没有统计)
+ */
+ @GetMapping("/dataOverview")
+ @ApiOperation(value = "数据概览", notes = "数据概览")
+ public R getDataOverview() {
+ List<HashMap<String,String>> dataStatistics = comprehensiveStatisticsService.getDataOverview();
+ return R.data(dataStatistics);
+ }
+
+ /**
+ * 入驻单位统计
+ */
+ @GetMapping("/deptStatistics")
+ @ApiOperation(value = "入驻单位统计", notes = "入驻单位统计")
+ public R getDeptStatistics() {
+ List<HashMap<String,String>> deptStatistics = comprehensiveStatisticsService.getDeptStatistics();
+ return R.data(deptStatistics);
+ }
+
+ /**
+ * 实时火警事件
+ */
+ @GetMapping("/realtimeFireAlarmIncident")
+ @ApiOperation(value = "实时火警事件", notes = "实时火警事件")
+ public R getRealtimeFireAlarmIncident(@RequestParam(name="time", defaultValue="48")String time) {
+ List<FireVO> fireList = fireService.getRealtime(time);
+ return R.data(fireList);
+ }
+
+ /**
+ * 火警事件来源
+ */
+ @GetMapping("/fireCallSource")
+ @ApiOperation(value = "火警事件来源", notes = "火警事件来源")
+ public R getFireCallSource() {
+ List fireCallSource = comprehensiveStatisticsService.getFireCallSource();
+ return R.data(fireCallSource);
+ }
+
+ /**
+ * 易发区统计
+ */
+ @GetMapping("/proneAreasStatistics")
+ @ApiOperation(value = "易发区统计", notes = "易发区统计")
+ public R getProneAreasStatistics(String regionCode, @RequestParam(name="limit", defaultValue="15")Integer limit) {
+ List proneAreasStatistics = comprehensiveStatisticsService.getProneAreasStatistics(regionCode,limit);
+ return R.data(proneAreasStatistics);
+ }
+
+ /**
+ * 火警上报趋势
+ */
+ @GetMapping("/fireReportingTrend")
+ @ApiOperation(value = "火警上报趋势", notes = "火警上报趋势")
+ public R getFireReportingTrend() {
+ List<HashMap<String,String>> FireReportingTrend = comprehensiveStatisticsService.getFireReportingTrend();
+ return R.data(FireReportingTrend);
+ }
+}
diff --git a/src/main/java/org/springblade/modules/dp/controller/FireWarningController.java b/src/main/java/org/springblade/modules/dp/controller/FireWarningController.java
new file mode 100644
index 0000000..d026170
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/controller/FireWarningController.java
@@ -0,0 +1,44 @@
+package org.springblade.modules.dp.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.modules.dp.service.IFireWarningService;
+import org.springblade.modules.fire.service.IFireService;
+import org.springblade.modules.fire.vo.FireVO;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.HashMap;
+import java.util.List;
+
+/**
+ * 大屏防火预警 控制器
+ *
+ * @author GuoShiLong
+ * @since 2023-03-08
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("dp/fireWarning")
+@Api(value = "防火预警", tags = "防火预警接口")
+public class FireWarningController extends BladeController {
+// private IFireWarningService fireWarningService;
+ private IFireService fireService;
+
+ /**
+ * 预警台账
+ */
+ @GetMapping("/earlyWarningLedger")
+ @ApiOperation(value = "预警台账", notes = "预警台账")
+ public R getEarlyWarningLedger() {
+
+ return null;
+ }
+}
diff --git a/src/main/java/org/springblade/modules/dp/controller/MilitaryLocalCoordinationController.java b/src/main/java/org/springblade/modules/dp/controller/MilitaryLocalCoordinationController.java
new file mode 100644
index 0000000..27fb719
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/controller/MilitaryLocalCoordinationController.java
@@ -0,0 +1,68 @@
+package org.springblade.modules.dp.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.modules.fire.service.IFireService;
+import org.springblade.modules.fire.vo.FireVO;
+import org.springblade.modules.fireSupplement.entity.FireSupplementEntity;
+import org.springblade.modules.fireSupplement.service.IFireSupplementService;
+import org.springblade.modules.system.dto.DeptDTO;
+import org.springblade.modules.system.service.IDeptService;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * 大屏军地协同 控制器
+ *
+ * @author GuoShiLong
+ * @since 2023-03-08
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("dp/militaryLocalCoordination")
+@Api(value = "军地协同", tags = "军地协同接口")
+public class MilitaryLocalCoordinationController extends BladeController {
+ private IFireService fireService;
+ private IFireSupplementService fireSupplementService;
+ private final IDeptService deptService;
+
+ /**
+ * 火警事件
+ */
+ @GetMapping("/fireAlarmIncident")
+ @ApiOperation(value = "火警事件", notes = "火警事件")
+ public R<IPage<FireVO>> getEarlyWarningLedger(FireVO fire, Query query) {
+ IPage<FireVO> pages = fireService.selectFirePage(Condition.getPage(query), fire);
+ return R.data(pages);
+ }
+
+ /**
+ * 灾后评估
+ */
+ @GetMapping("/disasterAssessment")
+ @ApiOperation(value = "详情", notes = "传入fireSupplement")
+ public R<FireSupplementEntity> detail(FireSupplementEntity fireSupplement) {
+ FireSupplementEntity detail = fireSupplementService.getOne(Condition.getQueryWrapper(fireSupplement));
+ return R.data(detail);
+ }
+
+ /**
+ * 视频会商,传部门和部门下的人
+ */
+ @GetMapping("/getUserGroupByDept")
+ @ApiOperation(value = "视频会商", notes = "视频会商")
+ public R getUserGroupByDept() {
+ List<DeptDTO> deptDTO = deptService.getUserGroupByDept();
+ return R.data(deptDTO);
+ }
+}
diff --git a/src/main/java/org/springblade/modules/dp/mapper/ComprehensiveStatisticsMapper.java b/src/main/java/org/springblade/modules/dp/mapper/ComprehensiveStatisticsMapper.java
new file mode 100644
index 0000000..655af6d
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/mapper/ComprehensiveStatisticsMapper.java
@@ -0,0 +1,22 @@
+package org.springblade.modules.dp.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.HashMap;
+import java.util.List;
+
+@Repository
+public interface ComprehensiveStatisticsMapper {
+
+ List<HashMap<String, String>> getDataOverview();
+
+ List<HashMap<String, String>> getDeptStatistics();
+
+ List<HashMap<String,String>> getFireCallSource();
+
+ List<HashMap<String, String>> getFireReportingTrend();
+
+ List getProneAreasStatistics(@Param("regionCode") String regionCode,@Param("limit") Integer limit);
+}
diff --git a/src/main/java/org/springblade/modules/dp/mapper/ComprehensiveStatisticsMapper.xml b/src/main/java/org/springblade/modules/dp/mapper/ComprehensiveStatisticsMapper.xml
new file mode 100644
index 0000000..56c0f64
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/mapper/ComprehensiveStatisticsMapper.xml
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.dp.mapper.ComprehensiveStatisticsMapper">
+
+
+ <select id="getDataOverview" resultType="java.util.HashMap">
+ SELECT a.deptNumber,b.policeCarNumber,c.deviceNumber
+ FROM(
+ ( SELECT COUNT(*) AS deptNumber FROM blade_dept dept WHERE dept.is_deleted = 0 ) a,
+ ( SELECT COUNT(*) AS policeCarNumber FROM sys_vehicle vehicle WHERE vehicle.is_deleted = 0 ) b,
+ ( SELECT COUNT(*) AS deviceNumber FROM sys_device device WHERE device.is_deleted = 0 ) c
+ );
+ </select>
+
+ <select id="getDeptStatistics" resultType="java.util.HashMap">
+ SELECT DISTINCT a.city cityCode,a.cityNumber,region.city_name cityName
+ FROM
+ (
+ SELECT dept.city,COUNT(*) AS cityNumber
+ FROM blade_dept dept WHERE dept.is_deleted = 0
+ GROUP BY dept.city
+ ) a LEFT JOIN blade_region region ON region.city_code = a.city
+ </select>
+ <select id="getFireCallSource" resultType="java.util.HashMap">
+ SELECT
+ CONVERT(COUNT(*),CHAR) AS number,
+ fire.find_way findWay,
+ biz.dict_value findWayName
+ FROM
+ sys_fire fire
+ LEFT JOIN blade_dict_biz biz ON biz.dict_key = fire.find_way AND biz.`code` = 'fire_find_way'
+ WHERE
+ fire.is_deleted = 0
+ GROUP BY
+ fire.find_way
+ </select>
+ <select id="getFireReportingTrend" resultType="java.util.HashMap">
+ SELECT
+ m.id month,IFNULL(b.number,0) number
+ FROM
+ (
+ SELECT 1 AS id UNION
+ SELECT 2 UNION
+ SELECT 3 UNION
+ SELECT 4 UNION
+ SELECT 5 UNION
+ SELECT 6 UNION
+ SELECT 7 UNION
+ SELECT 8 UNION
+ SELECT 9 UNION
+ SELECT 10 UNION
+ SELECT 11 UNION
+ SELECT 12
+ ) m
+ LEFT JOIN
+ (
+ SELECT MONTH(fire.alarm_time) month,COUNT(*) number
+ FROM sys_fire fire
+ WHERE fire.is_deleted = 0
+ GROUP BY MONTH ( fire.alarm_time )
+ ) b ON b.`month` = m.id
+ ORDER BY month
+ </select>
+
+ <select id="getProneAreasStatistics" resultType="java.util.HashMap">
+ SELECT
+ address,COUNT(*) times
+ FROM
+ `sys_fire`
+ WHERE
+ is_deleted = 0
+ AND find_way = 1
+ AND FIND_IN_SET(#{regionCode},REPLACE(SUBSTRING_INDEX(SUBSTRING_INDEX(location,'[',-1),']',1),'"',''))
+ GROUP BY
+ address
+ ORDER BY times DESC
+ LIMIT #{limit}
+ </select>
+</mapper>
diff --git a/src/main/java/org/springblade/modules/dp/mapper/FireWarningMapper.java b/src/main/java/org/springblade/modules/dp/mapper/FireWarningMapper.java
new file mode 100644
index 0000000..1a41b1f
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/mapper/FireWarningMapper.java
@@ -0,0 +1,7 @@
+package org.springblade.modules.dp.mapper;
+
+import org.springframework.stereotype.Repository;
+
+@Repository
+public interface FireWarningMapper {
+}
diff --git a/src/main/java/org/springblade/modules/dp/mapper/FireWarningMapper.xml b/src/main/java/org/springblade/modules/dp/mapper/FireWarningMapper.xml
new file mode 100644
index 0000000..0f7189a
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/mapper/FireWarningMapper.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.dp.mapper.FireWarningMapper">
+
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/dp/service/IComprehensiveStatisticsService.java b/src/main/java/org/springblade/modules/dp/service/IComprehensiveStatisticsService.java
new file mode 100644
index 0000000..ca6a163
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/service/IComprehensiveStatisticsService.java
@@ -0,0 +1,39 @@
+package org.springblade.modules.dp.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.HashMap;
+import java.util.List;
+
+public interface IComprehensiveStatisticsService {
+ /**
+ * 获取数据概览
+ * @return
+ */
+ List<HashMap<String, String>> getDataOverview();
+
+ /**
+ * 获取入驻单位统计
+ * @return
+ */
+ List<HashMap<String, String>> getDeptStatistics();
+
+ /**
+ * 获取火警事件来源
+ * @return
+ */
+ List getFireCallSource();
+
+ /**
+ * 获取火警上报趋势
+ * @return
+ */
+ List<HashMap<String, String>> getFireReportingTrend();
+
+ /**
+ * 获取易发区统计数据
+ * @param regionCode 区域编号
+ * @return
+ */
+ List<HashMap<String, String>> getProneAreasStatistics(String regionCode,Integer limit);
+}
diff --git a/src/main/java/org/springblade/modules/dp/service/IFireWarningService.java b/src/main/java/org/springblade/modules/dp/service/IFireWarningService.java
new file mode 100644
index 0000000..18b2b86
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/service/IFireWarningService.java
@@ -0,0 +1,4 @@
+package org.springblade.modules.dp.service;
+
+public interface IFireWarningService {
+}
diff --git a/src/main/java/org/springblade/modules/dp/service/impl/ComprehensiveStatisticsServiceImpl.java b/src/main/java/org/springblade/modules/dp/service/impl/ComprehensiveStatisticsServiceImpl.java
new file mode 100644
index 0000000..0979a6e
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/service/impl/ComprehensiveStatisticsServiceImpl.java
@@ -0,0 +1,50 @@
+package org.springblade.modules.dp.service.impl;
+
+import org.springblade.modules.dp.mapper.ComprehensiveStatisticsMapper;
+import org.springblade.modules.dp.service.IComprehensiveStatisticsService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.function.Consumer;
+
+@Service
+public class ComprehensiveStatisticsServiceImpl implements IComprehensiveStatisticsService {
+ @Autowired
+ private ComprehensiveStatisticsMapper comprehensiveStatisticsMapper;
+
+ @Override
+ public List<HashMap<String, String>> getDataOverview() {
+ return comprehensiveStatisticsMapper.getDataOverview();
+ }
+
+ @Override
+ public List<HashMap<String, String>> getDeptStatistics() {
+ return comprehensiveStatisticsMapper.getDeptStatistics();
+ }
+
+ @Override
+ public List getFireCallSource() {
+ List list = new ArrayList();
+ Map<String, Integer> m1 = new HashMap<>(16);
+ List<HashMap<String,String>> fireCallSource = comprehensiveStatisticsMapper.getFireCallSource();
+ int number = fireCallSource.stream().mapToInt(e -> Integer.parseInt(e.get("number"))).sum();
+ m1.put("sum",number);
+ list.add(fireCallSource);
+ list.add(m1);
+ return list;
+ }
+
+ @Override
+ public List<HashMap<String, String>> getFireReportingTrend() {
+ return comprehensiveStatisticsMapper.getFireReportingTrend();
+ }
+
+ @Override
+ public List getProneAreasStatistics(String regionCode,Integer limit) {
+ return comprehensiveStatisticsMapper.getProneAreasStatistics(regionCode,limit);
+ }
+}
diff --git a/src/main/java/org/springblade/modules/dp/service/impl/FireWarningServiceImpl.java b/src/main/java/org/springblade/modules/dp/service/impl/FireWarningServiceImpl.java
new file mode 100644
index 0000000..560900b
--- /dev/null
+++ b/src/main/java/org/springblade/modules/dp/service/impl/FireWarningServiceImpl.java
@@ -0,0 +1,12 @@
+package org.springblade.modules.dp.service.impl;
+
+import org.springblade.modules.dp.mapper.FireWarningMapper;
+import org.springblade.modules.dp.service.IFireWarningService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class FireWarningServiceImpl implements IFireWarningService {
+ @Autowired
+ private FireWarningMapper fireWarningMapper;
+}
diff --git a/src/main/java/org/springblade/modules/fire/mapper/FireMapper.java b/src/main/java/org/springblade/modules/fire/mapper/FireMapper.java
index a201461..347e858 100644
--- a/src/main/java/org/springblade/modules/fire/mapper/FireMapper.java
+++ b/src/main/java/org/springblade/modules/fire/mapper/FireMapper.java
@@ -42,4 +42,6 @@
List<FireVO> getAll(@Param("fire") FireVO fire);
+
+ List<FireVO> getRealtime(@Param("time") String time);
}
diff --git a/src/main/java/org/springblade/modules/fire/mapper/FireMapper.xml b/src/main/java/org/springblade/modules/fire/mapper/FireMapper.xml
index 4621d96..22f6e3c 100644
--- a/src/main/java/org/springblade/modules/fire/mapper/FireMapper.xml
+++ b/src/main/java/org/springblade/modules/fire/mapper/FireMapper.xml
@@ -21,13 +21,19 @@
<result column="is_deleted" property="isDeleted"/>
<result column="tenant_id" property="tenantId"/>
<result column="supplementId" property="supplementId"/>
+ <result column="fireLevelName" property="fireLevelName"/>
+ <result column="findWayName" property="findWayName"/>
</resultMap>
-
<select id="selectFirePage" resultMap="fireResultMap">
- select fire.*,sup.id supplementId from sys_fire fire
- LEFT JOIN sys_fire_supplement sup ON sup.fire_id = fire.id AND sup.is_deleted = 0
- where fire.is_deleted = 0
+ SELECT fire.*,sup.id supplementId,biz.dict_value fireLevelName,biz2.dict_value findWayName
+ FROM sys_fire fire
+ LEFT JOIN blade_dict_biz biz ON biz.dict_key = fire.`level` AND biz.code = 'fire_level'
+ LEFT JOIN blade_dict_biz biz2 ON biz2.dict_key = fire.find_way AND biz2.`code` = 'fire_find_way'
+ LEFT JOIN sys_fire_supplement sup ON sup.fire_id = fire.id
+ AND sup.is_deleted = 0
+ WHERE
+ fire.is_deleted = 0
<if test="fire.location !=null and fire.location !='' ">
AND fire.location = #{fire.location,typeHandler=com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler}
</if>
@@ -49,6 +55,12 @@
<if test="fire.alarmTimeEnd !=null and fire.alarmTimeEnd !=''">
AND DATE_FORMAT(fire.alarm_time,'%Y-%m-%d') <= #{fire.alarmTimeEnd}
</if>
+ <if test="fire.level !=null and fire.level !=''">
+ AND fire.level = #{fire.level}
+ </if>
+ <if test="fire.fireDate !=null and fire.fireDate !=''">
+ AND DATE_FORMAT(fire.alarm_time,'%Y-%m-%d') = #{fire.fireDate}
+ </if>
</select>
@@ -62,5 +74,20 @@
</select>
+ <select id="getRealtime" resultMap="fireResultMap">
+ SELECT
+ fire.*,biz.dict_value fireLevelName,biz2.dict_value findWayName
+ FROM
+ sys_fire fire
+ LEFT JOIN blade_dict_biz biz ON biz.dict_key = fire.level AND biz.`code` = 'fire_level'
+ LEFT JOIN blade_dict_biz biz2 ON biz2.dict_key = fire.find_way AND biz2.`code` = 'fire_find_way'
+ WHERE
+ fire.is_deleted = 0
+ AND DATE_FORMAT( fire.alarm_time, '%Y-%m-%d' ) >= DATE_FORMAT(DATE_SUB(now(),INTERVAL #{time} HOUR ), '%Y-%m-%d' )
+ AND DATE_FORMAT( fire.alarm_time, '%Y-%m-%d' ) <= DATE_FORMAT(NOW(),'%Y-%m-%d' )
+
+ ORDER BY fire.alarm_time DESC
+ </select>
+
</mapper>
diff --git a/src/main/java/org/springblade/modules/fire/service/IFireService.java b/src/main/java/org/springblade/modules/fire/service/IFireService.java
index 4ea7063..ca4453e 100644
--- a/src/main/java/org/springblade/modules/fire/service/IFireService.java
+++ b/src/main/java/org/springblade/modules/fire/service/IFireService.java
@@ -46,4 +46,6 @@
* @return
*/
List<FireVO> getAll(FireVO fire);
+
+ List<FireVO> getRealtime(String time);
}
diff --git a/src/main/java/org/springblade/modules/fire/service/impl/FireServiceImpl.java b/src/main/java/org/springblade/modules/fire/service/impl/FireServiceImpl.java
index 4260c5c..1d16c82 100644
--- a/src/main/java/org/springblade/modules/fire/service/impl/FireServiceImpl.java
+++ b/src/main/java/org/springblade/modules/fire/service/impl/FireServiceImpl.java
@@ -45,5 +45,10 @@
return baseMapper.getAll(fire);
}
+ @Override
+ public List<FireVO> getRealtime(String time) {
+ return baseMapper.getRealtime(time);
+ }
+
}
diff --git a/src/main/java/org/springblade/modules/fire/vo/FireVO.java b/src/main/java/org/springblade/modules/fire/vo/FireVO.java
index 36c5541..505aba9 100644
--- a/src/main/java/org/springblade/modules/fire/vo/FireVO.java
+++ b/src/main/java/org/springblade/modules/fire/vo/FireVO.java
@@ -20,6 +20,7 @@
import org.springblade.core.tool.node.INode;
import lombok.Data;
import lombok.EqualsAndHashCode;
+import org.springblade.modules.fireSupplement.vo.FireSupplementVO;
/**
* 火灾记录表 视图实体类
@@ -31,11 +32,28 @@
@EqualsAndHashCode(callSuper = true)
public class FireVO extends FireEntity {
private static final long serialVersionUID = 1L;
-
+ /**
+ * 补充id
+ */
private String supplementId;
-
+ /**
+ * 发现时间开始
+ */
private String alarmTimeStart;
-
+ /**
+ * 发现时间结束
+ */
private String alarmTimeEnd;
-
+ /**
+ * 火灾发生日期(2023-01-10)
+ */
+ private String fireDate;
+ /**
+ * 火灾等级
+ */
+ private String fireLevelName;
+ /**
+ * 发现方式
+ */
+ private String findWayName;
}
diff --git a/src/main/java/org/springblade/modules/system/dto/DeptDTO.java b/src/main/java/org/springblade/modules/system/dto/DeptDTO.java
index f8c9086..63c8283 100644
--- a/src/main/java/org/springblade/modules/system/dto/DeptDTO.java
+++ b/src/main/java/org/springblade/modules/system/dto/DeptDTO.java
@@ -19,6 +19,9 @@
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.modules.system.entity.Dept;
+import org.springblade.modules.system.entity.User;
+
+import java.util.List;
/**
* 数据传输对象实体类
@@ -30,4 +33,6 @@
public class DeptDTO extends Dept {
private static final long serialVersionUID = 1L;
+ private List<User> userList;
+
}
diff --git a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
index bbcb7e6..5f301fe 100644
--- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
+++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java
@@ -17,6 +17,7 @@
package org.springblade.modules.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springblade.modules.system.dto.DeptDTO;
import org.springblade.modules.system.entity.Dept;
import org.springblade.modules.system.vo.DeptVO;
@@ -65,4 +66,9 @@
*/
List<String> getDeptNames(Long[] ids);
+ /**
+ * 获取部门分组和部门下的用户
+ * @return
+ */
+ List<DeptDTO> getUserGroupByDept();
}
diff --git a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
index b002fc8..20056cb 100644
--- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml
@@ -112,4 +112,24 @@
and is_deleted = 0
</select>
+ <resultMap id="userDeptGroup" type="org.springblade.modules.system.dto.DeptDTO">
+ <id column="dept_id" property="id"/>
+ <result column="dept_name" property="deptName"/>
+ <collection property="userList" javaType="java.util.List" ofType="org.springblade.modules.system.entity.User">
+ <result column="id" property="id"/>
+ <result column="real_name" property="realName"/>
+ <result column="avatar" property="avatar"/>
+ <result column="email" property="email"/>
+ <result column="phone" property="phone"/>
+ <result column="role_id" property="roleId"/>
+ </collection>
+ </resultMap>
+
+ <select id="getUserGroupByDept" resultMap="userDeptGroup">
+ SELECT user.id,user.real_name,user.avatar,user.email,user.phone,user.dept_id,user.role_id,dept.dept_name
+ FROM blade_user user
+ LEFT JOIN blade_dept dept ON dept.id = user.dept_id and dept.is_deleted = 0
+ WHERE user.is_deleted = 0
+ </select>
+
</mapper>
diff --git a/src/main/java/org/springblade/modules/system/service/IDeptService.java b/src/main/java/org/springblade/modules/system/service/IDeptService.java
index d7d0aa4..1cd2956 100644
--- a/src/main/java/org/springblade/modules/system/service/IDeptService.java
+++ b/src/main/java/org/springblade/modules/system/service/IDeptService.java
@@ -17,6 +17,7 @@
package org.springblade.modules.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
+import org.springblade.modules.system.dto.DeptDTO;
import org.springblade.modules.system.entity.Dept;
import org.springblade.modules.system.vo.DeptVO;
@@ -116,4 +117,9 @@
*/
List<DeptVO> search(String deptName, Long parentId);
+ /**
+ * 获取部门分组和部门下的用户
+ * @return
+ */
+ List<DeptDTO> getUserGroupByDept();
}
diff --git a/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
index 92e3850..292a0ba 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
+++ b/src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
@@ -26,6 +26,7 @@
import org.springblade.core.tool.node.ForestNodeMerger;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.StringPool;
+import org.springblade.modules.system.dto.DeptDTO;
import org.springblade.modules.system.entity.Dept;
import org.springblade.modules.system.mapper.DeptMapper;
import org.springblade.modules.system.service.IDeptService;
@@ -168,4 +169,9 @@
return DeptWrapper.build().listNodeVO(deptList);
}
+ @Override
+ public List<DeptDTO> getUserGroupByDept() {
+ return baseMapper.getUserGroupByDept();
+ }
+
}
diff --git a/src/main/java/org/springblade/modules/vehicle/entity/VehicleEntity.java b/src/main/java/org/springblade/modules/vehicle/entity/VehicleEntity.java
index 254621b..ae9cc06 100644
--- a/src/main/java/org/springblade/modules/vehicle/entity/VehicleEntity.java
+++ b/src/main/java/org/springblade/modules/vehicle/entity/VehicleEntity.java
@@ -51,5 +51,15 @@
*/
@ApiModelProperty(value = "车辆类型")
private String type;
+ /**
+ * 经度
+ */
+ @ApiModelProperty(value = "经度")
+ private String lon;
+ /**
+ * 纬度
+ */
+ @ApiModelProperty(value = "纬度")
+ private String lat;
}
--
Gitblit v1.9.3