bug修复
This commit is contained in:
parent
9a64889d07
commit
d4b4980ac4
@ -267,8 +267,6 @@ public class Project implements Serializable {
|
|||||||
private String jzgProjectCode;
|
private String jzgProjectCode;
|
||||||
@ApiModelProperty(value = "金筑工访问host")
|
@ApiModelProperty(value = "金筑工访问host")
|
||||||
private String jzgHost;
|
private String jzgHost;
|
||||||
@ApiModelProperty(value = "携稳url")
|
|
||||||
private String xiwonUrl;
|
|
||||||
/**
|
/**
|
||||||
* 弃用,使用xiwonUrl
|
* 弃用,使用xiwonUrl
|
||||||
*/
|
*/
|
||||||
@ -295,6 +293,10 @@ public class Project implements Serializable {
|
|||||||
private String bimCommandCenterUrl;
|
private String bimCommandCenterUrl;
|
||||||
@ApiModelProperty(value = "天气信息")
|
@ApiModelProperty(value = "天气信息")
|
||||||
private String weatherInfo;
|
private String weatherInfo;
|
||||||
|
@ApiModelProperty(value = "济南仁智测控账号")
|
||||||
|
private String jnrzckAccount;
|
||||||
|
@ApiModelProperty(value = "济南仁智测控密码")
|
||||||
|
private String jnrzckPw;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* runde平台token
|
* runde平台token
|
||||||
|
|||||||
@ -66,8 +66,6 @@ public class ElectricalTask {
|
|||||||
log.info("获取最新电量使用情况 每5分钟触发任务");
|
log.info("获取最新电量使用情况 每5分钟触发任务");
|
||||||
if (StringUtils.isNotBlank(url)) {
|
if (StringUtils.isNotBlank(url)) {
|
||||||
List<Project> projectList = projectMapper.selectList(new LambdaQueryWrapper<Project>()
|
List<Project> projectList = projectMapper.selectList(new LambdaQueryWrapper<Project>()
|
||||||
.ne(Project::getXiwonUrl, "")
|
|
||||||
.isNotNull(Project::getXiwonUrl)
|
|
||||||
.ne(Project::getXiwonAppId, "")
|
.ne(Project::getXiwonAppId, "")
|
||||||
.isNotNull(Project::getXiwonAppId)
|
.isNotNull(Project::getXiwonAppId)
|
||||||
.ne(Project::getXiwonAppSecret, "")
|
.ne(Project::getXiwonAppSecret, "")
|
||||||
|
|||||||
@ -2,16 +2,19 @@ package com.zhgd.xmgl.task;
|
|||||||
|
|
||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
import com.zhgd.jeecg.common.mybatis.EntityMap;
|
||||||
import com.zhgd.jeecg.common.util.HuaWeiMessageUtils;
|
import com.zhgd.jeecg.common.util.HuaWeiMessageUtils;
|
||||||
import com.zhgd.xmgl.modules.basicdata.entity.Notice;
|
import com.zhgd.xmgl.modules.basicdata.entity.Notice;
|
||||||
|
import com.zhgd.xmgl.modules.basicdata.service.INoticeService;
|
||||||
|
import com.zhgd.xmgl.modules.project.entity.Project;
|
||||||
|
import com.zhgd.xmgl.modules.project.mapper.ProjectMapper;
|
||||||
import com.zhgd.xmgl.modules.standard.entity.StandardAlarm;
|
import com.zhgd.xmgl.modules.standard.entity.StandardAlarm;
|
||||||
import com.zhgd.xmgl.modules.standard.entity.StandardContinuityAlarm;
|
import com.zhgd.xmgl.modules.standard.entity.StandardContinuityAlarm;
|
||||||
import com.zhgd.xmgl.modules.standard.entity.StandardCurrentData;
|
import com.zhgd.xmgl.modules.standard.entity.StandardCurrentData;
|
||||||
import com.zhgd.xmgl.modules.standard.entity.StandardDev;
|
import com.zhgd.xmgl.modules.standard.entity.StandardDev;
|
||||||
import com.zhgd.xmgl.modules.standard.mapper.*;
|
import com.zhgd.xmgl.modules.standard.mapper.*;
|
||||||
import com.zhgd.xmgl.modules.basicdata.service.INoticeService;
|
|
||||||
import com.zhgd.xmgl.util.StandardDevUtil;
|
import com.zhgd.xmgl.util.StandardDevUtil;
|
||||||
import lombok.extern.log4j.Log4j;
|
import lombok.extern.log4j.Log4j;
|
||||||
import net.javacrumbs.shedlock.core.SchedulerLock;
|
import net.javacrumbs.shedlock.core.SchedulerLock;
|
||||||
@ -55,6 +58,8 @@ public class StandardDevTask {
|
|||||||
private StandardAlarmMapper standardAlarmMapper;
|
private StandardAlarmMapper standardAlarmMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private StandardDevRealTimeDataMapper standardDevRealTimeDataMapper;
|
private StandardDevRealTimeDataMapper standardDevRealTimeDataMapper;
|
||||||
|
@Autowired
|
||||||
|
private ProjectMapper projectMapper;
|
||||||
|
|
||||||
@Value("${isGetStandardData}")
|
@Value("${isGetStandardData}")
|
||||||
private boolean isGetStandardData;
|
private boolean isGetStandardData;
|
||||||
@ -65,29 +70,29 @@ public class StandardDevTask {
|
|||||||
* 根据实时数据计算每15分钟标养室是否报警
|
* 根据实时数据计算每15分钟标养室是否报警
|
||||||
*/
|
*/
|
||||||
@Scheduled(cron = "0 0/15 * * * ?")
|
@Scheduled(cron = "0 0/15 * * * ?")
|
||||||
@SchedulerLock(name = "totalStandardAlarmTypeTask", lockAtMostFor = 1000*60*10, lockAtLeastFor = 1000*60*3)
|
@SchedulerLock(name = "totalStandardAlarmTypeTask", lockAtMostFor = 1000 * 60 * 10, lockAtLeastFor = 1000 * 60 * 3)
|
||||||
public void totalStandardAlarmTypeTask(){
|
public void totalStandardAlarmTypeTask() {
|
||||||
try{
|
try {
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
||||||
String time=sdf.format(new Date());
|
String time = sdf.format(new Date());
|
||||||
List<EntityMap> list=standardCurrentDataMapper.selectStandardCurrentDataTotalAlarmStateList();
|
List<EntityMap> list = standardCurrentDataMapper.selectStandardCurrentDataTotalAlarmStateList();
|
||||||
if(list.size()>0){
|
if (list.size() > 0) {
|
||||||
for(EntityMap map:list){
|
for (EntityMap map : list) {
|
||||||
StandardContinuityAlarm standardContinuityAlarm=new StandardContinuityAlarm();
|
StandardContinuityAlarm standardContinuityAlarm = new StandardContinuityAlarm();
|
||||||
standardContinuityAlarm.setProjectSn(MapUtils.getString(map,"projectSn"));
|
standardContinuityAlarm.setProjectSn(MapUtils.getString(map, "projectSn"));
|
||||||
standardContinuityAlarm.setDevSn(MapUtils.getString(map,"devSn"));
|
standardContinuityAlarm.setDevSn(MapUtils.getString(map, "devSn"));
|
||||||
standardContinuityAlarm.setAlarmState(MapUtils.getInteger(map,"alarmType"));
|
standardContinuityAlarm.setAlarmState(MapUtils.getInteger(map, "alarmType"));
|
||||||
standardContinuityAlarm.setQueryTime(time);
|
standardContinuityAlarm.setQueryTime(time);
|
||||||
standardContinuityAlarmMapper.insert(standardContinuityAlarm);
|
standardContinuityAlarmMapper.insert(standardContinuityAlarm);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}catch (Exception e){
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addNotice(StandardDev dev, String alarmPushWorkerId){
|
private void addNotice(StandardDev dev, String alarmPushWorkerId) {
|
||||||
try {
|
try {
|
||||||
if (StringUtils.isNotEmpty(alarmPushWorkerId) && alarmPushWorkerId.length() > 0) {
|
if (StringUtils.isNotEmpty(alarmPushWorkerId) && alarmPushWorkerId.length() > 0) {
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||||
@ -104,49 +109,50 @@ public class StandardDevTask {
|
|||||||
noticeService.addNotice(notice, true);
|
noticeService.addNotice(notice, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}catch (Exception e){
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sendSms(StandardDev dev,String alarmPushPhone,int hour) {
|
private void sendSms(StandardDev dev, String alarmPushPhone, int hour) {
|
||||||
try {
|
try {
|
||||||
if (StringUtils.isNotEmpty(alarmPushPhone) && alarmPushPhone.length() > 0 &&!"[]".equals(alarmPushPhone)) {
|
if (StringUtils.isNotEmpty(alarmPushPhone) && alarmPushPhone.length() > 0 && !"[]".equals(alarmPushPhone)) {
|
||||||
JSONArray array=JSONArray.parseArray(alarmPushPhone);
|
JSONArray array = JSONArray.parseArray(alarmPushPhone);
|
||||||
String signature = "华为云短信测试";
|
String signature = "华为云短信测试";
|
||||||
//短信模板ID
|
//短信模板ID
|
||||||
//String templateId = "790d907f70594b4893227fc1d97e78bc";
|
//String templateId = "790d907f70594b4893227fc1d97e78bc";
|
||||||
//模板参数
|
//模板参数
|
||||||
String context=dev.getProjectName()+ "," +dev.getLaboratoryName()+ ","+ hour;
|
String context = dev.getProjectName() + "," + dev.getLaboratoryName() + "," + hour;
|
||||||
for (int i=0;i<array.size();i++){
|
for (int i = 0; i < array.size(); i++) {
|
||||||
JSONObject obj=array.getJSONObject(i);
|
JSONObject obj = array.getJSONObject(i);
|
||||||
String lxPhone=obj.getString("phone");
|
String lxPhone = obj.getString("phone");
|
||||||
if(StringUtils.isNotEmpty(lxPhone)){
|
if (StringUtils.isNotEmpty(lxPhone)) {
|
||||||
String receiver = "+86" + lxPhone;
|
String receiver = "+86" + lxPhone;
|
||||||
//催收防欠项目任务负责人负责人提醒
|
//催收防欠项目任务负责人负责人提醒
|
||||||
HuaWeiMessageUtils.sendNoticeSms(templateId, signature, receiver, context);
|
HuaWeiMessageUtils.sendNoticeSms(templateId, signature, receiver, context);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}catch (Exception e){
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 1小时报警推送
|
* 1小时报警推送
|
||||||
*/
|
*/
|
||||||
@Scheduled(cron = "0 0 */1 * * ?")
|
@Scheduled(cron = "0 0 */1 * * ?")
|
||||||
@SchedulerLock(name = "oneHourTask", lockAtMostFor = 1000*60*30, lockAtLeastFor = 1000*60*5)
|
@SchedulerLock(name = "oneHourTask", lockAtMostFor = 1000 * 60 * 30, lockAtLeastFor = 1000 * 60 * 5)
|
||||||
public void oneHourTask() {
|
public void oneHourTask() {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
List<StandardDev> list=standardDevMapper.selectContinuityAlarmDev(1);
|
List<StandardDev> list = standardDevMapper.selectContinuityAlarmDev(1);
|
||||||
log.info("----------------------标养室1小时报警推送---------------------------------任务数:"+list.size());
|
log.info("----------------------标养室1小时报警推送---------------------------------任务数:" + list.size());
|
||||||
if(list!=null&&list.size()>0){
|
if (list != null && list.size() > 0) {
|
||||||
for(StandardDev dev:list){
|
for (StandardDev dev : list) {
|
||||||
addNotice(dev,dev.getOneHourPushWorkerId());
|
addNotice(dev, dev.getOneHourPushWorkerId());
|
||||||
sendSms(dev,dev.getOneHourPushPhone(),1);
|
sendSms(dev, dev.getOneHourPushPhone(), 1);
|
||||||
//添加报警记录
|
//添加报警记录
|
||||||
addStandardAlarm(dev);
|
addStandardAlarm(dev);
|
||||||
}
|
}
|
||||||
@ -156,9 +162,9 @@ public class StandardDevTask {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void addStandardAlarm(StandardDev dev){
|
private void addStandardAlarm(StandardDev dev) {
|
||||||
java.text.DateFormat format1 = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
java.text.DateFormat format1 = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||||
StandardAlarm standardAlarm=new StandardAlarm();
|
StandardAlarm standardAlarm = new StandardAlarm();
|
||||||
standardAlarm.setAlarmTime(format1.format(new Date()));
|
standardAlarm.setAlarmTime(format1.format(new Date()));
|
||||||
standardAlarm.setAlarmType("温湿度异常");
|
standardAlarm.setAlarmType("温湿度异常");
|
||||||
standardAlarm.setProjectSn(dev.getProjectSn());
|
standardAlarm.setProjectSn(dev.getProjectSn());
|
||||||
@ -170,50 +176,52 @@ public class StandardDevTask {
|
|||||||
* 2小时报警推送
|
* 2小时报警推送
|
||||||
*/
|
*/
|
||||||
@Scheduled(cron = "0 0 */2 * * ?")
|
@Scheduled(cron = "0 0 */2 * * ?")
|
||||||
@SchedulerLock(name = "twoHourTask", lockAtMostFor = 1000*60*30, lockAtLeastFor = 1000*60*5)
|
@SchedulerLock(name = "twoHourTask", lockAtMostFor = 1000 * 60 * 30, lockAtLeastFor = 1000 * 60 * 5)
|
||||||
public void twoHourTask() {
|
public void twoHourTask() {
|
||||||
try {
|
try {
|
||||||
List<StandardDev> list=standardDevMapper.selectContinuityAlarmDev(2);
|
List<StandardDev> list = standardDevMapper.selectContinuityAlarmDev(2);
|
||||||
if(list!=null&&list.size()>0){
|
if (list != null && list.size() > 0) {
|
||||||
for(StandardDev dev:list){
|
for (StandardDev dev : list) {
|
||||||
addNotice(dev,dev.getTwoHourPushWorkerId());
|
addNotice(dev, dev.getTwoHourPushWorkerId());
|
||||||
sendSms(dev,dev.getTwoHourPushPhone(),2);
|
sendSms(dev, dev.getTwoHourPushPhone(), 2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 3小时报警推送
|
* 3小时报警推送
|
||||||
*/
|
*/
|
||||||
@Scheduled(cron = "0 0 */3 * * ?")
|
@Scheduled(cron = "0 0 */3 * * ?")
|
||||||
@SchedulerLock(name = "threeHourTask", lockAtMostFor = 1000*60*30, lockAtLeastFor = 1000*60*5)
|
@SchedulerLock(name = "threeHourTask", lockAtMostFor = 1000 * 60 * 30, lockAtLeastFor = 1000 * 60 * 5)
|
||||||
public void threeHourTask() {
|
public void threeHourTask() {
|
||||||
try {
|
try {
|
||||||
List<StandardDev> list=standardDevMapper.selectContinuityAlarmDev(3);
|
List<StandardDev> list = standardDevMapper.selectContinuityAlarmDev(3);
|
||||||
if(list!=null&&list.size()>0){
|
if (list != null && list.size() > 0) {
|
||||||
for(StandardDev dev:list){
|
for (StandardDev dev : list) {
|
||||||
addNotice(dev,dev.getThreeHourPushWorkerId());
|
addNotice(dev, dev.getThreeHourPushWorkerId());
|
||||||
sendSms(dev,dev.getThreeHourPushPhone(),3);
|
sendSms(dev, dev.getThreeHourPushPhone(), 3);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 12小时报警推送
|
* 12小时报警推送
|
||||||
*/
|
*/
|
||||||
@Scheduled(cron = "0 0 */6 * * ?")
|
@Scheduled(cron = "0 0 */6 * * ?")
|
||||||
@SchedulerLock(name = "twelveHourTask", lockAtMostFor = 1000*60*30, lockAtLeastFor = 1000*60*5)
|
@SchedulerLock(name = "twelveHourTask", lockAtMostFor = 1000 * 60 * 30, lockAtLeastFor = 1000 * 60 * 5)
|
||||||
public void twelveHourTask() {
|
public void twelveHourTask() {
|
||||||
try {
|
try {
|
||||||
List<StandardDev> list=standardDevMapper.selectContinuityAlarmDev(5);
|
List<StandardDev> list = standardDevMapper.selectContinuityAlarmDev(5);
|
||||||
if(list!=null&&list.size()>0){
|
if (list != null && list.size() > 0) {
|
||||||
for(StandardDev dev:list){
|
for (StandardDev dev : list) {
|
||||||
addNotice(dev,dev.getTwelveHourPushWorkerId());
|
addNotice(dev, dev.getTwelveHourPushWorkerId());
|
||||||
sendSms(dev,dev.getTwelveHourPushPhone(),12);
|
sendSms(dev, dev.getTwelveHourPushPhone(), 12);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -226,14 +234,14 @@ public class StandardDevTask {
|
|||||||
* 6小时报警推送
|
* 6小时报警推送
|
||||||
*/
|
*/
|
||||||
@Scheduled(cron = "0 0 */6 * * ?")
|
@Scheduled(cron = "0 0 */6 * * ?")
|
||||||
@SchedulerLock(name = "sixHourTask", lockAtMostFor = 1000*60*30, lockAtLeastFor = 1000*60*5)
|
@SchedulerLock(name = "sixHourTask", lockAtMostFor = 1000 * 60 * 30, lockAtLeastFor = 1000 * 60 * 5)
|
||||||
public void sixHourTask() {
|
public void sixHourTask() {
|
||||||
try {
|
try {
|
||||||
List<StandardDev> list=standardDevMapper.selectContinuityAlarmDev(4);
|
List<StandardDev> list = standardDevMapper.selectContinuityAlarmDev(4);
|
||||||
if(list!=null&&list.size()>0){
|
if (list != null && list.size() > 0) {
|
||||||
for(StandardDev dev:list){
|
for (StandardDev dev : list) {
|
||||||
addNotice(dev,dev.getSixHourPushWorkerId());
|
addNotice(dev, dev.getSixHourPushWorkerId());
|
||||||
sendSms(dev,dev.getSixHourPushPhone(),6);
|
sendSms(dev, dev.getSixHourPushPhone(), 6);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -246,14 +254,14 @@ public class StandardDevTask {
|
|||||||
* 24小时报警推送
|
* 24小时报警推送
|
||||||
*/
|
*/
|
||||||
@Scheduled(cron = "0 0 */24 * * ?")
|
@Scheduled(cron = "0 0 */24 * * ?")
|
||||||
@SchedulerLock(name = "twelveFourHourTask", lockAtMostFor = 1000*60*30, lockAtLeastFor = 1000*60*5)
|
@SchedulerLock(name = "twelveFourHourTask", lockAtMostFor = 1000 * 60 * 30, lockAtLeastFor = 1000 * 60 * 5)
|
||||||
public void twelveFourHourTask() {
|
public void twelveFourHourTask() {
|
||||||
try {
|
try {
|
||||||
List<StandardDev> list=standardDevMapper.selectContinuityAlarmDev(6);
|
List<StandardDev> list = standardDevMapper.selectContinuityAlarmDev(6);
|
||||||
if(list!=null&&list.size()>0){
|
if (list != null && list.size() > 0) {
|
||||||
for(StandardDev dev:list){
|
for (StandardDev dev : list) {
|
||||||
addNotice(dev,dev.getTwelveFourHourPushWorkerId());
|
addNotice(dev, dev.getTwelveFourHourPushWorkerId());
|
||||||
sendSms(dev,dev.getTwelveFourHourPushPhone(),24);
|
sendSms(dev, dev.getTwelveFourHourPushPhone(), 24);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
@ -266,23 +274,29 @@ public class StandardDevTask {
|
|||||||
*/
|
*/
|
||||||
@Scheduled(cron = "0 0/2 * * * ?")
|
@Scheduled(cron = "0 0/2 * * * ?")
|
||||||
@SchedulerLock(name = "getStandardData", lockAtMostFor = 1000 * 60 * 2, lockAtLeastFor = 1000 * 60 * 1)
|
@SchedulerLock(name = "getStandardData", lockAtMostFor = 1000 * 60 * 2, lockAtLeastFor = 1000 * 60 * 1)
|
||||||
@GetMapping("/getStandardData")
|
@GetMapping("/task/getStandardData")
|
||||||
public void getStandardData(){
|
public void getStandardData() {
|
||||||
if (isGetStandardData) {
|
try {
|
||||||
try {
|
log.info("------------拉取执行标样室时数据任务开始---------");
|
||||||
log.info("------------拉取执行标样室时数据任务开始---------");
|
List<Project> projectList = projectMapper.selectList(new LambdaQueryWrapper<Project>()
|
||||||
QueryWrapper<StandardDev> queryWrapper = new QueryWrapper<>();
|
.ne(Project::getJnrzckAccount, "")
|
||||||
|
.isNotNull(Project::getJnrzckAccount)
|
||||||
|
.ne(Project::getJnrzckPw, "")
|
||||||
|
.isNotNull(Project::getJnrzckPw)
|
||||||
|
);
|
||||||
|
for (Project project : projectList) {
|
||||||
|
LambdaQueryWrapper<StandardDev> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.eq(StandardDev::getProjectSn, project.getProjectSn());
|
||||||
List<StandardDev> list = standardDevMapper.selectList(queryWrapper);
|
List<StandardDev> list = standardDevMapper.selectList(queryWrapper);
|
||||||
if (list != null && list.size() > 0) {
|
if (list != null && list.size() > 0) {
|
||||||
JSONArray array = StandardDevUtil.getDeviceData("");
|
JSONArray array = StandardDevUtil.getDeviceData("", project.getJnrzckAccount(), project.getJnrzckPw());
|
||||||
for (StandardDev dev : list) {
|
for (StandardDev dev : list) {
|
||||||
|
|
||||||
List<Double> temperatureList = new ArrayList<>();
|
List<Double> temperatureList = new ArrayList<>();
|
||||||
List<Double> humidityList = new ArrayList<>();
|
List<Double> humidityList = new ArrayList<>();
|
||||||
if (array != null && array.size() > 0) {
|
if (array != null && array.size() > 0) {
|
||||||
for (int i = 0; i < array.size(); i++) {
|
for (int i = 0; i < array.size(); i++) {
|
||||||
JSONObject obj = array.getJSONObject(i);
|
JSONObject obj = array.getJSONObject(i);
|
||||||
if(dev.getDevSn().equals(obj.getString("deviceAddr"))) {
|
if (dev.getDevSn().equals(obj.getString("deviceAddr"))) {
|
||||||
//判断设备是否在线
|
//判断设备是否在线
|
||||||
if ("2".equals(obj.getString("deviceStatus"))) {
|
if ("2".equals(obj.getString("deviceStatus"))) {
|
||||||
JSONArray jsonArray = obj.getJSONArray("realTimeData");
|
JSONArray jsonArray = obj.getJSONArray("realTimeData");
|
||||||
@ -290,11 +304,11 @@ public class StandardDevTask {
|
|||||||
for (int a = 0; a < jsonArray.size(); a++) {
|
for (int a = 0; a < jsonArray.size(); a++) {
|
||||||
JSONObject obj2 = jsonArray.getJSONObject(a);
|
JSONObject obj2 = jsonArray.getJSONObject(a);
|
||||||
if (obj2.getString("dataName").indexOf("温度") >= 0) {
|
if (obj2.getString("dataName").indexOf("温度") >= 0) {
|
||||||
if (StringUtils.isNotEmpty(obj2.getString("dataValue"))&&obj2.getDouble("dataValue")!=0d) {
|
if (StringUtils.isNotEmpty(obj2.getString("dataValue")) && obj2.getDouble("dataValue") != 0d) {
|
||||||
temperatureList.add(Double.valueOf(obj2.getString("dataValue")));
|
temperatureList.add(Double.valueOf(obj2.getString("dataValue")));
|
||||||
}
|
}
|
||||||
} else if (obj2.getString("dataName").indexOf("湿度") >= 0) {
|
} else if (obj2.getString("dataName").indexOf("湿度") >= 0) {
|
||||||
if (StringUtils.isNotEmpty(obj2.getString("dataValue"))&&obj2.getDouble("dataValue")!=0d) {
|
if (StringUtils.isNotEmpty(obj2.getString("dataValue")) && obj2.getDouble("dataValue") != 0d) {
|
||||||
humidityList.add(Double.valueOf(obj2.getString("dataValue")));
|
humidityList.add(Double.valueOf(obj2.getString("dataValue")));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -332,10 +346,10 @@ public class StandardDevTask {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
log.info("------------拉取执行标样室时数据任务结束---------");
|
|
||||||
}catch(Exception e){
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
}
|
||||||
|
log.info("------------拉取执行标样室时数据任务结束---------");
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -344,7 +358,7 @@ public class StandardDevTask {
|
|||||||
* 汇总标养室设备实时数据
|
* 汇总标养室设备实时数据
|
||||||
*/
|
*/
|
||||||
@Scheduled(cron = "0 0/2 * * * ?")
|
@Scheduled(cron = "0 0/2 * * * ?")
|
||||||
@SchedulerLock(name = "saveStandardRealTimeDataTask", lockAtMostFor = 1000*60*1, lockAtLeastFor = 1000*30)
|
@SchedulerLock(name = "saveStandardRealTimeDataTask", lockAtMostFor = 1000 * 60 * 1, lockAtLeastFor = 1000 * 30)
|
||||||
public void saveStandardRealTimeDataTask() {
|
public void saveStandardRealTimeDataTask() {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
@ -352,23 +366,23 @@ public class StandardDevTask {
|
|||||||
List<StandardDev> list = standardDevMapper.selectList(queryWrapper);
|
List<StandardDev> list = standardDevMapper.selectList(queryWrapper);
|
||||||
if (list != null && list.size() > 0) {
|
if (list != null && list.size() > 0) {
|
||||||
for (StandardDev dev : list) {
|
for (StandardDev dev : list) {
|
||||||
int dataNum=0;
|
int dataNum = 0;
|
||||||
String temperature=null;
|
String temperature = null;
|
||||||
String humidity=null;
|
String humidity = null;
|
||||||
List<Map<String,Object>> dataList=standardDevRealTimeDataMapper.selectDevRealTimeDataCount(dev.getDevSn());
|
List<Map<String, Object>> dataList = standardDevRealTimeDataMapper.selectDevRealTimeDataCount(dev.getDevSn());
|
||||||
if(dataList!=null&&dataList.size()>0){
|
if (dataList != null && dataList.size() > 0) {
|
||||||
for (Map<String,Object> data:dataList){
|
for (Map<String, Object> data : dataList) {
|
||||||
if(MapUtils.getString(data,"dataName").indexOf("温度")>=0){
|
if (MapUtils.getString(data, "dataName").indexOf("温度") >= 0) {
|
||||||
dataNum=dataNum+MapUtils.getInteger(data,"num");
|
dataNum = dataNum + MapUtils.getInteger(data, "num");
|
||||||
temperature=MapUtils.getString(data,"avgValue");
|
temperature = MapUtils.getString(data, "avgValue");
|
||||||
}else if(MapUtils.getString(data,"dataName").indexOf("湿度")>=0){
|
} else if (MapUtils.getString(data, "dataName").indexOf("湿度") >= 0) {
|
||||||
dataNum=dataNum+MapUtils.getInteger(data,"num");
|
dataNum = dataNum + MapUtils.getInteger(data, "num");
|
||||||
humidity=MapUtils.getString(data,"avgValue");
|
humidity = MapUtils.getString(data, "avgValue");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//没有数据不插入
|
//没有数据不插入
|
||||||
if (dataNum> 0) {
|
if (dataNum > 0) {
|
||||||
StandardCurrentData standardCurrentData = new StandardCurrentData();
|
StandardCurrentData standardCurrentData = new StandardCurrentData();
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||||
standardCurrentData.setReceiveTime(sdf.format(new Date()));
|
standardCurrentData.setReceiveTime(sdf.format(new Date()));
|
||||||
@ -387,7 +401,7 @@ public class StandardDevTask {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}catch(Exception e){
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -24,18 +24,18 @@ public class StandardDevUtil {
|
|||||||
|
|
||||||
//账户
|
//账户
|
||||||
//public static final String loginName = "t210127lekd";
|
//public static final String loginName = "t210127lekd";
|
||||||
public static final String loginName = "2023wenshiduceshi";
|
//public static final String loginName = "2023wenshiduceshi";
|
||||||
//密码
|
//密码
|
||||||
//public static final String password = "t210127lekd";
|
//public static final String password = "t210127lekd";
|
||||||
public static final String password = "2023wenshiduceshi";
|
//public static final String password = "2023wenshiduceshi";
|
||||||
//public static final String url = "http://iot.0531yun.cn/wsjc";
|
//public static final String url = "http://iot.0531yun.cn/wsjc";
|
||||||
public static final String url = "https://www.0531yun.com";
|
public static final String url = "https://www.0531yun.com";
|
||||||
private static String userId = "";
|
private static String userId = "";
|
||||||
|
|
||||||
public static String getLoginUserId() {
|
public static String getLoginUserId(String jnrzckAccount, String jnrzckPw) {
|
||||||
Map<String, String> param = new HashMap<>();
|
Map<String, String> param = new HashMap<>();
|
||||||
param.put("loginName", loginName);
|
param.put("loginName", jnrzckAccount);
|
||||||
param.put("password", password);
|
param.put("password", jnrzckPw);
|
||||||
String urlString = url + "/app/Login";
|
String urlString = url + "/app/Login";
|
||||||
String body = JSONUtil.toJsonStr(param);
|
String body = JSONUtil.toJsonStr(param);
|
||||||
log.info("url:{},body:{}", urlString, body);
|
log.info("url:{},body:{}", urlString, body);
|
||||||
@ -52,10 +52,8 @@ public class StandardDevUtil {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static JSONArray getDeviceData(String groupId) {
|
public static JSONArray getDeviceData(String groupId, String jnrzckAccount, String jnrzckPw) {
|
||||||
if (StringUtils.isEmpty(userId)) {
|
userId = getLoginUserId(jnrzckAccount, jnrzckPw);
|
||||||
userId = getLoginUserId();
|
|
||||||
}
|
|
||||||
Map<String, Object> param = new HashMap<>();
|
Map<String, Object> param = new HashMap<>();
|
||||||
param.put("groupId", groupId);
|
param.put("groupId", groupId);
|
||||||
Map<String, String> headerMap = new HashMap<>();
|
Map<String, String> headerMap = new HashMap<>();
|
||||||
@ -82,7 +80,5 @@ public class StandardDevUtil {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
getLoginUserId();
|
|
||||||
getDeviceData("");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user