短信告警通知

This commit is contained in:
wyw
2024-08-16 00:58:12 +08:00
parent 52f9a1c382
commit 9acc3940d8
4 changed files with 76 additions and 11 deletions

View File

@ -1,4 +1,4 @@
package com.fastbee.iot.anfang.controller;
package com.fastbee.data.controller.anfang.controller;
import com.fastbee.common.annotation.Log;
import com.fastbee.common.config.RuoYiConfig;
@ -9,7 +9,7 @@ import com.fastbee.common.enums.BusinessType;
import com.fastbee.common.exception.ServiceException;
import com.fastbee.common.utils.file.FileUploadUtils;
import com.fastbee.common.utils.poi.ExcelUtil;
import com.fastbee.iot.anfang.service.IUploadedPhotosService;
import com.fastbee.data.controller.anfang.service.IUploadedPhotosService;
import com.fastbee.iot.model.anfang.UploadedPhotos;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;

View File

@ -1,4 +1,4 @@
package com.fastbee.iot.anfang.service;
package com.fastbee.data.controller.anfang.service;
import com.fastbee.iot.model.anfang.UploadedPhotos;

View File

@ -1,17 +1,21 @@
package com.fastbee.iot.anfang.service.impl;
package com.fastbee.data.controller.anfang.service.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.json.JSONObject;
import com.fastbee.common.config.RuoYiConfig;
import com.fastbee.common.utils.DevParamsUtils;
import com.fastbee.common.utils.StringUtils;
import com.fastbee.common.utils.file.FileUploadUtils;
import com.fastbee.iot.anfang.service.IUploadedPhotosService;
import com.fastbee.data.controller.anfang.service.IUploadedPhotosService;
import com.fastbee.iot.domain.Device;
import com.fastbee.iot.domain.DeviceAlertUser;
import com.fastbee.iot.haikang.HaikangYingshiApi;
import com.fastbee.iot.mapper.DeviceAlertUserMapper;
import com.fastbee.iot.mapper.UploadedPhotosMapper;
import com.fastbee.iot.model.anfang.UploadedPhotos;
import com.fastbee.iot.service.IDeviceService;
import org.checkerframework.checker.units.qual.A;
import com.fastbee.notify.core.service.NotifySendService;
import com.fastbee.notify.core.vo.SendParams;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -22,7 +26,6 @@ import java.net.URL;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.logging.Handler;
/**
* 存储上传的照片信息Service业务层处理
@ -37,6 +40,17 @@ public class UploadedPhotosServiceImpl implements IUploadedPhotosService
private UploadedPhotosMapper uploadedPhotosMapper;
@Autowired
private IDeviceService deviceService;
@Autowired
private NotifySendService notifySendService;
@Autowired
private RuoYiConfig ruoYiConfig;
private HaikangYingshiApi haikangYingshiApi;
@Autowired
private DeviceAlertUserMapper deviceAlertUserMapper;
/**
* 查询存储上传的照片信息
*
@ -201,8 +215,61 @@ public class UploadedPhotosServiceImpl implements IUploadedPhotosService
return "";
}
@Override
public void sendAlarmMessage(String sn, String doorState, String shakeState) {
//
boolean notify = false;
SendParams sendParams = new SendParams();
sendParams.setId(14L);
Map<String,String> temp = new HashMap<>();
Device device = deviceService.selectDeviceBySerialNumber(sn);
if (device == null) {
return;
}
Map<String, Object> devParams = DevParamsUtils.getDevParams(device.getDevParams());
Device jijingDevice = null;
if(devParams.containsKey("jijingIds")){
String jijingIds = devParams.get("jijingIds").toString();
jijingDevice = deviceService.selectDeviceByDeviceId(Long.parseLong(jijingIds));
if (jijingDevice == null){
return;
}
temp.put("stationName",jijingDevice.getDeviceName());
}else{
return;
}
if(Integer.parseInt(doorState) == 1){
temp.put("warnInfo","箱门打开");
notify = true;
}else {
if(Integer.parseInt(shakeState) == 1){
temp.put("warnInfo","箱门振动");
notify = true;
}
}
if(notify){
DeviceAlertUser deviceAlertUser = new DeviceAlertUser();
deviceAlertUser.setDeviceId(jijingDevice.getDeviceId());
List<DeviceAlertUser> deviceAlertUsers = deviceAlertUserMapper.selectDeviceAlertUserList(deviceAlertUser);
if(deviceAlertUsers.size() > 0){
String phone = "";
for (int i = 0; i < deviceAlertUsers.size(); i++) {
if(i == 0){
phone = deviceAlertUsers.get(i).getPhoneNumber();
}else {
phone += "," + deviceAlertUsers.get(i).getPhoneNumber();
}
}
if(StringUtils.isEmpty(phone)){
return;
}
sendParams.setSendAccount(phone);
JSONObject jsonObject = new JSONObject(temp);
String jsonString = jsonObject.toString();
sendParams.setVariables(jsonString);
notifySendService.send(sendParams);
}
}
}
}

View File

@ -8,10 +8,9 @@ import com.fastbee.common.core.domain.CommonResult;
import com.fastbee.common.model.vo.iot.QueryLogVo;
import com.fastbee.common.utils.DevParamsUtils;
import com.fastbee.common.utils.StringUtils;
import com.fastbee.common.utils.StringUtils;
import com.fastbee.data.domain.vo.AnfangInfoVo;
import com.fastbee.data.service.devicedetail.IDeviceDetailService;
import com.fastbee.iot.anfang.service.IUploadedPhotosService;
import com.fastbee.data.controller.anfang.service.IUploadedPhotosService;
import com.fastbee.iot.domain.Device;
import com.fastbee.iot.domain.DeviceLog;
import com.fastbee.iot.domain.ThingsModel;
@ -33,7 +32,6 @@ import com.fastbee.xunjian.mapper.XjInspectionRoutesMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.xml.crypto.Data;
import java.util.*;
import java.util.stream.Collectors;