安防告警增加类型和cpu温度告警

This commit is contained in:
wyw 2024-08-17 15:04:17 +08:00
parent 1e8a56c36a
commit 30d8dbbbb2
5 changed files with 35 additions and 19 deletions

View File

@ -10,6 +10,6 @@ public class DoorAlertBto {
private Long deviceId;
//箱门状态:2=箱门打开,1=箱门振动
private Integer doorState;
private Integer eventType;
}

View File

@ -84,8 +84,9 @@ public class UploadedPhotosController extends BaseController {
@RequestParam("lat") String lat,
@RequestParam("lng") String lng,
@RequestParam("temp") String temp,
@RequestParam("cpuTemp") Double cpuTemp,
@RequestParam("eventType") String eventType,
@RequestParam("doorState") String doorState,
@RequestParam("shakeState") String shakeState,
@RequestParam("time") String time) {
if (photo.isEmpty()) {
@ -101,9 +102,7 @@ public class UploadedPhotosController extends BaseController {
Double latitude = isEmpty(lat) ? 0.0 : Double.valueOf(lat);
Double longitude = isEmpty(lng) ? 0.0 : Double.valueOf(lng);
Double temperature = isEmpty(temp) ? 0.0 : convertAndRoundTemperature(temp);
if (doorState.equals("0")) {
shakeState = "1";
}
String shakeState = "0";
// 处理时间戳
long timestamp = Long.parseLong(time + "000");
Date date = new Date(timestamp);
@ -112,7 +111,7 @@ public class UploadedPhotosController extends BaseController {
//推送告警短信通知
uploadedPhotosService.sendAlarmMessage(sn, doorState, shakeState);
UploadedPhotos uploadedPhotos = new UploadedPhotos(
null, fileName, monitorPath, imei, sn, latitude, longitude, temperature, doorState, shakeState, date
null, fileName, monitorPath, imei, sn, latitude, longitude, temperature, doorState, shakeState,cpuTemp,eventType, date
);
return toAjax(uploadedPhotosService.insertUploadedPhotos(uploadedPhotos));
} catch (IOException e) {
@ -141,15 +140,14 @@ public class UploadedPhotosController extends BaseController {
@RequestParam("lng") String lng,
@RequestParam("temp") String temp,
@RequestParam("doorState") String doorState,
@RequestParam("shakeState") String shakeState,
@RequestParam("cpuTemp") Double cpuTemp,
@RequestParam("eventType") String eventType,
@RequestParam("time") String time) {
// 处理可能为空的字段
Double latitude = isEmpty(lat) ? 0.0 : Double.valueOf(lat);
Double longitude = isEmpty(lng) ? 0.0 : Double.valueOf(lng);
Double temperature = isEmpty(temp) ? 0.0 : convertAndRoundTemperature(temp);
if (doorState.equals("0")) {
shakeState = "1";
}
String shakeState = "0";
// 处理时间戳
long timestamp = Long.parseLong(time + "000");
Date date = new Date(timestamp);
@ -158,7 +156,7 @@ public class UploadedPhotosController extends BaseController {
//推送告警短信通知
uploadedPhotosService.sendAlarmMessage(sn, doorState, shakeState);
UploadedPhotos uploadedPhotos = new UploadedPhotos(
null, "", monitorPath, imei, sn, latitude, longitude, temperature, doorState, shakeState, date
null, "", monitorPath, imei, sn, latitude, longitude, temperature, doorState, shakeState,cpuTemp,eventType, date
);
return toAjax(uploadedPhotosService.insertUploadedPhotos(uploadedPhotos));
}

View File

@ -277,12 +277,12 @@ public class UploadedPhotosServiceImpl implements IUploadedPhotosService {
}
int doorState = 0;
int shakeState = 0;
if (doorAlertBto.getDoorState() > 0) {
if (doorAlertBto.getDoorState() == 1) {
shakeState = doorAlertBto.getDoorState();
if (doorAlertBto.getEventType() > 0) {
if (doorAlertBto.getEventType() == 1) {
shakeState = doorAlertBto.getEventType();
doorState = 0;
} else if (doorAlertBto.getDoorState() == 2) {
doorState = doorAlertBto.getDoorState();
} else if (doorAlertBto.getEventType() == 2) {
doorState = 1;
shakeState = 0;
}
sendAlarmMessage(device.getSerialNumber(), doorState + "", shakeState + "");
@ -293,7 +293,7 @@ public class UploadedPhotosServiceImpl implements IUploadedPhotosService {
null, "", monitorPath, "", device.getSerialNumber(),
device.getLatitude()!= null ? device.getLatitude().doubleValue():0d,
device.getLongitude()!= null ? device.getLatitude().doubleValue():0d,
18.23d, doorState + "", shakeState + "", new Date()
18.23d, doorState + "", shakeState + "",32.3,doorAlertBto.getEventType().toString(), new Date()
);
int count = insertUploadedPhotos(uploadedPhotos);
if (count > 0) {

View File

@ -58,6 +58,12 @@ public class UploadedPhotos extends BaseEntity
/** 震动状态信息 */
@Excel(name = "震动状态信息")
private String shakeState;
/** CPU温度 */
@Excel(name = "CPU温度")
private Double cpuTemp;
/** 事件类型1=振动2=箱门打开,3=人员入侵 */
@Excel(name = "事件类型")
private String eventType;
/** 上传时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")

View File

@ -16,10 +16,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="doorState" column="door_state" />
<result property="shakeState" column="shake_state" />
<result property="uploadTime" column="upload_time" />
<result property="eventType" column="event_type" />
<result property="cpuTemp" column="cpu_temp" />
</resultMap>
<sql id="selectUploadedPhotosVo">
select id, photo_path,monitor_path, imei, sn, lat, lng, temp, door_state, shake_state, upload_time from uploaded_photos
select * from uploaded_photos
</sql>
<select id="selectUploadedPhotosList" parameterType="com.fastbee.iot.model.anfang.UploadedPhotos"
@ -33,10 +35,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="lng != null "> and lng = #{lng}</if>
<if test="params.beginTemp != null and params.beginTemp != '' and params.endTemp != null and params.endTemp != ''"> and temp between #{params.beginTemp} and #{params.endTemp}</if>
<if test="doorState != null and doorState != ''"> and door_state = #{doorState}</if>
<if test="eventType != null and eventType != ''"> and event_type = #{eventType}</if>
<if test="cpuTemp != null and cpuTemp != ''"> and cpu_temp = #{cpuTemp}</if>
<if test="shakeState != null and shakeState != ''"> and shake_state = #{shakeState}</if>
<if test="params.beginUploadTime != null and params.beginUploadTime != '' and params.endUploadTime != null and params.endUploadTime != ''"> and upload_time between #{params.beginUploadTime} and #{params.endUploadTime}</if>
</where>
order by id desc
order by id desc
</select>
<select id="selectUploadedPhotosById" parameterType="Long" resultMap="UploadedPhotosResult">
@ -57,6 +61,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="doorState != null">door_state,</if>
<if test="shakeState != null">shake_state,</if>
<if test="uploadTime != null">upload_time,</if>
<if test="eventType != null">event_type,</if>
<if test="cpuTemp != null">cpu_temp,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="photoPath != null and photoPath != ''">#{photoPath},</if>
@ -69,6 +75,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="doorState != null">#{doorState},</if>
<if test="shakeState != null">#{shakeState},</if>
<if test="uploadTime != null">#{uploadTime},</if>
<if test="eventType != null">#{eventType},</if>
<if test="cpuTemp != null">#{cpuTemp},</if>
</trim>
</insert>
@ -85,6 +93,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="doorState != null">door_state = #{doorState},</if>
<if test="shakeState != null">shake_state = #{shakeState},</if>
<if test="uploadTime != null">upload_time = #{uploadTime},</if>
<if test="eventType != null">event_type = #{eventType},</if>
<if test="cpuTemp != null">cpu_temp = #{cpuTemp},</if>
</trim>
where id = #{id}
</update>
@ -102,6 +112,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="doorState != null">door_state = #{doorState},</if>
<if test="shakeState != null">shake_state = #{shakeState},</if>
<if test="uploadTime != null">upload_time = #{uploadTime},</if>
<if test="eventType != null">event_type = #{eventType},</if>
<if test="cpuTemp != null">cpu_temp = #{cpuTemp},</if>
</trim>
where sn = #{sn} and upload_time = #{uploadTime}
</update>