盾构机优化
This commit is contained in:
parent
4806ed1b60
commit
bb15bed6b9
@ -26,5 +26,7 @@ public interface TunnelBoringMachineCurrentDataMapper extends BaseMapper<TunnelB
|
|||||||
|
|
||||||
TunnelBoringMachineCurrentData getLastData(Map<String, Object> map);
|
TunnelBoringMachineCurrentData getLastData(Map<String, Object> map);
|
||||||
|
|
||||||
|
TunnelBoringMachineCurrentData getFirstDataByMonth(Map<String, Object> map);
|
||||||
|
|
||||||
TunnelBoringMachineCurrentData getFirstData(Map<String, Object> map);
|
TunnelBoringMachineCurrentData getFirstData(Map<String, Object> map);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
<select id="pageList" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineAlarm">
|
<select id="pageList" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineAlarm">
|
||||||
select * from (select t.*, d.dev_name deviceName
|
select * from (select t.*, d.dev_name deviceName
|
||||||
from tunnel_boring_machine_alarm t left join tunnel_boring_machine d on t.dev_sn = d.dev_sn) a
|
from tunnel_boring_machine_alarm t left join tunnel_boring_machine d on t.dev_sn = d.dev_sn) a
|
||||||
${ew.customSqlSegment}
|
${ew.customSqlSegment} order by alarm_time desc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getNewAlarm" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineAlarm">
|
<select id="getNewAlarm" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineAlarm">
|
||||||
|
|||||||
@ -5,7 +5,7 @@
|
|||||||
<select id="pageList" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineCurrentData">
|
<select id="pageList" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineCurrentData">
|
||||||
select * from (select t.*, d.dev_name deviceName
|
select * from (select t.*, d.dev_name deviceName
|
||||||
from tunnel_boring_machine_current_data t left join tunnel_boring_machine d on t.device_sn = d.dev_sn) a
|
from tunnel_boring_machine_current_data t left join tunnel_boring_machine d on t.device_sn = d.dev_sn) a
|
||||||
${ew.customSqlSegment}
|
${ew.customSqlSegment} order by report_time desc
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getLastData" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineCurrentData"
|
<select id="getLastData" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineCurrentData"
|
||||||
@ -17,12 +17,19 @@
|
|||||||
limit 1
|
limit 1
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getFirstDataByMonth" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineCurrentData"
|
||||||
|
parameterType="map">
|
||||||
|
select *
|
||||||
|
from tunnel_boring_machine_current_data
|
||||||
|
where project_sn = #{projectSn} and device_sn = #{deviceSn} AND DATE_FORMAT(report_time,'%Y-%m') = #{time}
|
||||||
|
limit 1
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="getFirstData" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineCurrentData"
|
<select id="getFirstData" resultType="com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineCurrentData"
|
||||||
parameterType="map">
|
parameterType="map">
|
||||||
select *
|
select *
|
||||||
from tunnel_boring_machine_current_data
|
from tunnel_boring_machine_current_data
|
||||||
where project_sn = #{projectSn} and device_sn = #{deviceSn}
|
where project_sn = #{projectSn} and device_sn = #{deviceSn} AND DATE_FORMAT(report_time,'%Y-%m-%d') = #{time}
|
||||||
ORDER BY report_time
|
|
||||||
limit 1
|
limit 1
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
@ -27,5 +27,6 @@ public interface ITunnelBoringMachineCurrentDataService extends IService<TunnelB
|
|||||||
|
|
||||||
TunnelBoringMachineCurrentDataVo getLastData(Map<String, Object> map);
|
TunnelBoringMachineCurrentDataVo getLastData(Map<String, Object> map);
|
||||||
|
|
||||||
|
|
||||||
TunnelBoringMachineStatVo getStatData(Map<String, Object> map);
|
TunnelBoringMachineStatVo getStatData(Map<String, Object> map);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -11,10 +11,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.healthmarketscience.jackcess.impl.expr.BigDecimalValue;
|
import com.healthmarketscience.jackcess.impl.expr.BigDecimalValue;
|
||||||
import com.zhgd.jeecg.common.execption.OpenAlertException;
|
import com.zhgd.jeecg.common.execption.OpenAlertException;
|
||||||
import com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachine;
|
import com.zhgd.xmgl.modules.bigdevice.entity.*;
|
||||||
import com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineCurrentData;
|
|
||||||
import com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineStat;
|
|
||||||
import com.zhgd.xmgl.modules.bigdevice.entity.TunnelBoringMachineWarning;
|
|
||||||
import com.zhgd.xmgl.modules.bigdevice.entity.vo.TunnelBoringMachineCurrentDataVo;
|
import com.zhgd.xmgl.modules.bigdevice.entity.vo.TunnelBoringMachineCurrentDataVo;
|
||||||
import com.zhgd.xmgl.modules.bigdevice.entity.vo.TunnelBoringMachineStatVo;
|
import com.zhgd.xmgl.modules.bigdevice.entity.vo.TunnelBoringMachineStatVo;
|
||||||
import com.zhgd.xmgl.modules.bigdevice.mapper.TunnelBoringMachineCurrentDataMapper;
|
import com.zhgd.xmgl.modules.bigdevice.mapper.TunnelBoringMachineCurrentDataMapper;
|
||||||
@ -253,11 +250,19 @@ public class TunnelBoringMachineCurrentDataServiceImpl extends ServiceImpl<Tunne
|
|||||||
return dataBuilder(lastData);
|
return dataBuilder(lastData);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private TunnelBoringMachineCurrentDataVo getLastData1(Map<String, Object> map) {
|
||||||
|
TunnelBoringMachineCurrentData lastData = baseMapper.getLastData(map);
|
||||||
|
if (lastData == null) {
|
||||||
|
return new TunnelBoringMachineCurrentDataVo();
|
||||||
|
}
|
||||||
|
return dataBuilder1(lastData);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public TunnelBoringMachineStatVo getStatData(Map<String, Object> map) {
|
public TunnelBoringMachineStatVo getStatData(Map<String, Object> map) {
|
||||||
String projectSn = MapUtils.getString(map, "projectSn");
|
String projectSn = MapUtils.getString(map, "projectSn");
|
||||||
String deviceSn = MapUtils.getString(map, "deviceSn");
|
String deviceSn = MapUtils.getString(map, "deviceSn");
|
||||||
TunnelBoringMachineCurrentDataVo lastData = getLastData(map);
|
TunnelBoringMachineCurrentDataVo lastData = getLastData1(map);
|
||||||
TunnelBoringMachine tunnelBoringMachine = tunnelBoringMachineMapper.selectOne(Wrappers.<TunnelBoringMachine>lambdaQuery()
|
TunnelBoringMachine tunnelBoringMachine = tunnelBoringMachineMapper.selectOne(Wrappers.<TunnelBoringMachine>lambdaQuery()
|
||||||
.eq(TunnelBoringMachine::getProjectSn, projectSn)
|
.eq(TunnelBoringMachine::getProjectSn, projectSn)
|
||||||
.eq(TunnelBoringMachine::getDevSn, deviceSn));
|
.eq(TunnelBoringMachine::getDevSn, deviceSn));
|
||||||
@ -269,12 +274,11 @@ public class TunnelBoringMachineCurrentDataServiceImpl extends ServiceImpl<Tunne
|
|||||||
TunnelBoringMachineStatVo tunnelBoringMachineStatVo = new TunnelBoringMachineStatVo();
|
TunnelBoringMachineStatVo tunnelBoringMachineStatVo = new TunnelBoringMachineStatVo();
|
||||||
tunnelBoringMachineStatVo.setTotalMileage(tunnelBoringMachine.getTotalMileage());
|
tunnelBoringMachineStatVo.setTotalMileage(tunnelBoringMachine.getTotalMileage());
|
||||||
tunnelBoringMachineStatVo.setTotalNumber(tunnelBoringMachine.getTotalNumber());
|
tunnelBoringMachineStatVo.setTotalNumber(tunnelBoringMachine.getTotalNumber());
|
||||||
tunnelBoringMachineStatVo.setNumberByDay(machineStatList.stream().filter(m -> m.getCreateTime().equals(DateUtil.parseDate(DateUtil.formatDate(new Date()))))
|
tunnelBoringMachineStatVo.setNumberByDay(lastData.getDayNumber());
|
||||||
.map(m -> m.getNumber()).mapToInt(Integer::intValue).sum());
|
tunnelBoringMachineStatVo.setNumberByMonth(lastData.getMonthNumber());
|
||||||
tunnelBoringMachineStatVo.setNumberByMonth(machineStatList.stream().map(m -> m.getNumber()).mapToInt(Integer::intValue).sum());
|
|
||||||
tunnelBoringMachineStatVo.setTunnelBoringMachineCurrentDataVo(lastData);
|
tunnelBoringMachineStatVo.setTunnelBoringMachineCurrentDataVo(lastData);
|
||||||
tunnelBoringMachineStatVo.setCompleteRatio(tunnelBoringMachine.getTotalNumber() == null ? "0" : new BigDecimal(lastData.getCurrentNumber()).divide(new BigDecimal(tunnelBoringMachine.getTotalNumber()),
|
tunnelBoringMachineStatVo.setCompleteRatio(tunnelBoringMachine.getTotalNumber() == null ? "0" : new BigDecimal(lastData.getCurrentNumber()).divide(new BigDecimal(tunnelBoringMachine.getTotalNumber()),
|
||||||
2,BigDecimal.ROUND_HALF_UP).toString());
|
3,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal(100)).toString());
|
||||||
List<String> dayList = DateUtils.getNowFewDaysAgoList(15);
|
List<String> dayList = DateUtils.getNowFewDaysAgoList(15);
|
||||||
List<TunnelBoringMachineStat> resultList = new ArrayList<>();
|
List<TunnelBoringMachineStat> resultList = new ArrayList<>();
|
||||||
for (String s : dayList) {
|
for (String s : dayList) {
|
||||||
@ -294,6 +298,56 @@ public class TunnelBoringMachineCurrentDataServiceImpl extends ServiceImpl<Tunne
|
|||||||
return tunnelBoringMachineStatVo;
|
return tunnelBoringMachineStatVo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private TunnelBoringMachineCurrentDataVo dataBuilder1(TunnelBoringMachineCurrentData tunnelBoringMachineCurrentData) {
|
||||||
|
TunnelBoringMachineCurrentDataVo tunnelBoringMachineCurrentDataVo = new TunnelBoringMachineCurrentDataVo();
|
||||||
|
BeanUtils.copyProperties(tunnelBoringMachineCurrentData, tunnelBoringMachineCurrentDataVo);
|
||||||
|
List<TunnelBoringMachineAlarm> list = tunnelBoringMachineAlarmService.list(Wrappers.<TunnelBoringMachineAlarm>lambdaQuery()
|
||||||
|
.ge(TunnelBoringMachineAlarm::getAlarmTime, DateUtil.beginOfDay(new Date()))
|
||||||
|
.le(TunnelBoringMachineAlarm::getAlarmTime, DateUtil.endOfDay(new Date())));
|
||||||
|
String [] alarmType = {"normal", "yellow", "red"};
|
||||||
|
for (TunnelBoringMachineAlarm tunnelBoringMachineAlarm : list) {
|
||||||
|
Integer alarm = 0;
|
||||||
|
for (int i = 0; i < alarmType.length; i++) {
|
||||||
|
if (alarmType[i].equals(tunnelBoringMachineAlarm.getType())) {
|
||||||
|
alarm = i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("刀盘扭矩")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setCutterheadTorqueType(alarm);
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("刀盘水平偏差")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setCutterheadHorizontalDeviationType(alarm);
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("刀盘垂直偏差")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setCutterheadVerticalDeviationType(alarm);
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("盾尾水平偏差")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setShieldHorizontalDeviationType(alarm);
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("盾尾垂直偏差")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setShieldVerticalDeviationType(alarm);
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("刀盘转速")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setCutterheadSpeedType(alarm);
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("总推力")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setTotalThrustType(alarm);
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("推进速度")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setAdvanceSpeedType(alarm);
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("滚动角")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setRollPositionType(alarm);
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("舱压")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setCabinPressureType(alarm);
|
||||||
|
}
|
||||||
|
if (tunnelBoringMachineAlarm.getAlarmType().equals("注浆状态")) {
|
||||||
|
tunnelBoringMachineCurrentDataVo.setGroutingStatusType(alarm);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return tunnelBoringMachineCurrentDataVo;
|
||||||
|
}
|
||||||
private TunnelBoringMachineCurrentDataVo dataBuilder(TunnelBoringMachineCurrentData tunnelBoringMachineCurrentData) {
|
private TunnelBoringMachineCurrentDataVo dataBuilder(TunnelBoringMachineCurrentData tunnelBoringMachineCurrentData) {
|
||||||
TunnelBoringMachineCurrentDataVo tunnelBoringMachineCurrentDataVo = new TunnelBoringMachineCurrentDataVo();
|
TunnelBoringMachineCurrentDataVo tunnelBoringMachineCurrentDataVo = new TunnelBoringMachineCurrentDataVo();
|
||||||
BeanUtils.copyProperties(tunnelBoringMachineCurrentData, tunnelBoringMachineCurrentDataVo);
|
BeanUtils.copyProperties(tunnelBoringMachineCurrentData, tunnelBoringMachineCurrentDataVo);
|
||||||
|
|||||||
@ -151,6 +151,16 @@ public class VideoItem implements Serializable {
|
|||||||
*/
|
*/
|
||||||
@ApiModelProperty(value = "AI分析硬件设备id")
|
@ApiModelProperty(value = "AI分析硬件设备id")
|
||||||
private String aiHardwareId;
|
private String aiHardwareId;
|
||||||
|
/**
|
||||||
|
* AI分析画面播放路径
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "AI分析画面播放路径")
|
||||||
|
private String aiVideoUrl;
|
||||||
|
/**
|
||||||
|
* 监控密码
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(value = "监控密码")
|
||||||
|
private String videoPassword;
|
||||||
/**
|
/**
|
||||||
* 项目sn
|
* 项目sn
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -2,6 +2,7 @@ package com.zhgd.xmgl.modules.video.service.impl;
|
|||||||
|
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import cn.hutool.http.HttpRequest;
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONArray;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
@ -391,11 +392,30 @@ public class VideoItemServiceImpl extends ServiceImpl<VideoItemMapper, VideoItem
|
|||||||
Map<String, Object> data = new HashMap<>(16);
|
Map<String, Object> data = new HashMap<>(16);
|
||||||
List<EntityMap> videoList = videoItemMapper.selectProjectVideoList(map);
|
List<EntityMap> videoList = videoItemMapper.selectProjectVideoList(map);
|
||||||
if (videoList.size() > 0 && String.valueOf(TOWER.getCode()).equals(MapUtils.getString(videoList.get(0), VIDEO_TYPE))) {
|
if (videoList.size() > 0 && String.valueOf(TOWER.getCode()).equals(MapUtils.getString(videoList.get(0), VIDEO_TYPE))) {
|
||||||
String token = YsVideoUtil.getToken(MapUtils.getString(videoList.get(0), "appId"), MapUtils.getString(videoList.get(0), "appSecret"));
|
String token = "";
|
||||||
|
if (MapUtils.getString(videoList.get(0), "appId").equals("noexist")) {
|
||||||
|
JSONObject body = new JSONObject();
|
||||||
|
body.put("secretKey", "z2YU1t7GRif9oJn/1dkKwG8VAPiAu1+u4m6vy5Cnb1nZGXdOlCQGxOsjkdpaXnBOr9AyDD0LrOhy8ogOMpgh6A==");
|
||||||
|
body.put("name", "swzk");
|
||||||
|
String result = HttpRequest.post("https://trans.tbmcloud.com.cn/trans/sentYSToken/ex/getToken")
|
||||||
|
.body(JSON.toJSONString(body))
|
||||||
|
.execute()
|
||||||
|
.body();
|
||||||
|
token = JSONObject.parseObject(result).getJSONObject("data").getString("accessToken");
|
||||||
|
} else {
|
||||||
|
token = YsVideoUtil.getToken(MapUtils.getString(videoList.get(0), "appId"), MapUtils.getString(videoList.get(0), "appSecret"));
|
||||||
|
}
|
||||||
for (EntityMap entityMap : videoList) {
|
for (EntityMap entityMap : videoList) {
|
||||||
entityMap.put("token", token);
|
entityMap.put("token", token);
|
||||||
entityMap.put("url", "ezopen://open.ys7.com/" + MapUtils.getString(entityMap, "serialNumber") + "/" +
|
String videoPassword = MapUtils.getString(entityMap, "videoPassword");
|
||||||
MapUtils.getString(entityMap, "verificationCode") + ".hd.live");
|
if (StringUtils.isNotBlank(videoPassword)) {
|
||||||
|
entityMap.put("url", "ezopen://" + videoPassword +"@open.ys7.com/" + MapUtils.getString(entityMap, "serialNumber") + "/" +
|
||||||
|
MapUtils.getString(entityMap, "verificationCode") + ".hd.live");
|
||||||
|
} else {
|
||||||
|
entityMap.put("url", "ezopen://open.ys7.com/" + MapUtils.getString(entityMap, "serialNumber") + "/" +
|
||||||
|
MapUtils.getString(entityMap, "verificationCode") + ".hd.live");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
List<EntityMap> groupList = videoGroupMapper.selectVideoGroupList(map);
|
List<EntityMap> groupList = videoGroupMapper.selectVideoGroupList(map);
|
||||||
|
|||||||
@ -69,23 +69,23 @@ public class TunnelBoringMachineTask {
|
|||||||
Map<String, Object> map = new HashMap<>();
|
Map<String, Object> map = new HashMap<>();
|
||||||
map.put("projectSn", tunnelBoringMachine.getProjectSn());
|
map.put("projectSn", tunnelBoringMachine.getProjectSn());
|
||||||
map.put("deviceSn", tunnelBoringMachine.getDevSn());
|
map.put("deviceSn", tunnelBoringMachine.getDevSn());
|
||||||
|
map.put("time", DateUtil.formatDate(new Date()));
|
||||||
TunnelBoringMachineCurrentData lastData = tunnelBoringMachineCurrentDataMapper.getLastData(map);
|
TunnelBoringMachineCurrentData lastData = tunnelBoringMachineCurrentDataMapper.getLastData(map);
|
||||||
TunnelBoringMachineCurrentData firstData = tunnelBoringMachineCurrentDataMapper.getFirstData(map);
|
|
||||||
TunnelBoringMachineStat tunnelBoringMachineStat = new TunnelBoringMachineStat();
|
TunnelBoringMachineStat tunnelBoringMachineStat = new TunnelBoringMachineStat();
|
||||||
tunnelBoringMachineStat.setProjectSn(tunnelBoringMachine.getProjectSn());
|
tunnelBoringMachineStat.setProjectSn(tunnelBoringMachine.getProjectSn());
|
||||||
tunnelBoringMachineStat.setDevSn(tunnelBoringMachine.getDevSn());
|
tunnelBoringMachineStat.setDevSn(tunnelBoringMachine.getDevSn());
|
||||||
tunnelBoringMachineStat.setCreateTime(DateUtil.parseDate(DateUtil.formatDate(new Date())));
|
tunnelBoringMachineStat.setCreateTime(DateUtil.parseDate(DateUtil.formatDate(new Date())));
|
||||||
if (lastData == null || firstData == null) {
|
if (lastData != null && DateUtil.formatDate(lastData.getReportTime()).equals(DateUtil.formatDate(new Date()))) {
|
||||||
tunnelBoringMachineStat.setNumber(0);
|
tunnelBoringMachineStat.setNumber(lastData.getDayNumber());
|
||||||
} else {
|
} else {
|
||||||
tunnelBoringMachineStat.setNumber(lastData.getCurrentNumber() - firstData.getCurrentNumber());
|
tunnelBoringMachineStat.setNumber(0);
|
||||||
}
|
}
|
||||||
list.add(tunnelBoringMachineStat);
|
list.add(tunnelBoringMachineStat);
|
||||||
}
|
}
|
||||||
tunnelBoringMachineStatService.saveBatch(list);
|
tunnelBoringMachineStatService.saveBatch(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
// @Scheduled(cron = "0/30 * * * * ?")
|
@Scheduled(cron = "0/30 * * * * ?")
|
||||||
@RequestMapping("getTunnelBoringMachineAlarm")
|
@RequestMapping("getTunnelBoringMachineAlarm")
|
||||||
public void getTunnelBoringMachineAlarm() {
|
public void getTunnelBoringMachineAlarm() {
|
||||||
log.info("获取盾构机报警数据开始任务");
|
log.info("获取盾构机报警数据开始任务");
|
||||||
@ -105,7 +105,7 @@ public class TunnelBoringMachineTask {
|
|||||||
body.put("secretKey", "Xvt875SvK8zz7F+3Lj0faInIyd800TK0wGXt5GcaL4JubaXuwmlLoMXKXj7M9A21FxNB12mqhGqZnzW8ZSZHxQ==");
|
body.put("secretKey", "Xvt875SvK8zz7F+3Lj0faInIyd800TK0wGXt5GcaL4JubaXuwmlLoMXKXj7M9A21FxNB12mqhGqZnzW8ZSZHxQ==");
|
||||||
body.put("tbmCode", tunnelBoringMachine.getDevSn());
|
body.put("tbmCode", tunnelBoringMachine.getDevSn());
|
||||||
body.put("name", "ysej");
|
body.put("name", "ysej");
|
||||||
String result = HttpRequest.post("https://trans.tbmcloud.com.cn/tbmcenter-trans/trans/alarm/ex/getCurrent")
|
String result = HttpRequest.post("https://trans.tbmcloud.com.cn/trans/alarm/ex/getCurrent")
|
||||||
.body(JSON.toJSONString(body))
|
.body(JSON.toJSONString(body))
|
||||||
.timeout(2000)
|
.timeout(2000)
|
||||||
.execute()
|
.execute()
|
||||||
@ -145,6 +145,13 @@ public class TunnelBoringMachineTask {
|
|||||||
tunnelBoringMachineAlarm.setAlarmValue(obj.getDouble("aramValue"));
|
tunnelBoringMachineAlarm.setAlarmValue(obj.getDouble("aramValue"));
|
||||||
tunnelBoringMachineAlarm.setLine(tunnelBoringMachine.getLine());
|
tunnelBoringMachineAlarm.setLine(tunnelBoringMachine.getLine());
|
||||||
tunnelBoringMachineAlarm.setAlarmTime(new Date(obj.getLong("timestamp")));
|
tunnelBoringMachineAlarm.setAlarmTime(new Date(obj.getLong("timestamp")));
|
||||||
|
TunnelBoringMachineAlarm exist = tunnelBoringMachineAlarmMapper.selectOne(Wrappers.<TunnelBoringMachineAlarm>lambdaQuery()
|
||||||
|
.eq(TunnelBoringMachineAlarm::getDevSn, tunnelBoringMachineAlarm.getDevSn())
|
||||||
|
.eq(TunnelBoringMachineAlarm::getAlarmTime, tunnelBoringMachineAlarm.getAlarmTime()));
|
||||||
|
// tunnelBoringMachineCurrentData.setWorkerStatus();
|
||||||
|
if (exist != null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
tunnelBoringMachineAlarmMapper.insert(tunnelBoringMachineAlarm);
|
tunnelBoringMachineAlarmMapper.insert(tunnelBoringMachineAlarm);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -173,15 +180,11 @@ public class TunnelBoringMachineTask {
|
|||||||
body.put("name", "ysej");
|
body.put("name", "ysej");
|
||||||
String result = HttpRequest.post("https://trans.tbmcloud.com.cn/trans/transGetRealData/ex/getRealData")
|
String result = HttpRequest.post("https://trans.tbmcloud.com.cn/trans/transGetRealData/ex/getRealData")
|
||||||
.body(JSON.toJSONString(body))
|
.body(JSON.toJSONString(body))
|
||||||
.timeout(2000)
|
|
||||||
.execute()
|
.execute()
|
||||||
.body();
|
.body();
|
||||||
JSONObject jsonObject = JSONObject.parseObject(result);
|
JSONObject jsonObject = JSONObject.parseObject(result);
|
||||||
if (jsonObject != null || jsonObject.getInteger("code") == 200) {
|
if (jsonObject != null || jsonObject.getInteger("code") == 200) {
|
||||||
TunnelBoringMachineCurrentData tunnelBoringMachineCurrentData = new TunnelBoringMachineCurrentData();
|
TunnelBoringMachineCurrentData tunnelBoringMachineCurrentData = new TunnelBoringMachineCurrentData();
|
||||||
PoisonousGasDevCurrentData poisonousGasDevCurrentData = new PoisonousGasDevCurrentData();
|
|
||||||
poisonousGasDevCurrentData.setDevSn(tunnelBoringMachine.getDevSn());
|
|
||||||
poisonousGasDevCurrentData.setProjectSn(tunnelBoringMachine.getProjectSn());
|
|
||||||
tunnelBoringMachineCurrentData.setDeviceSn(tunnelBoringMachine.getDevSn());
|
tunnelBoringMachineCurrentData.setDeviceSn(tunnelBoringMachine.getDevSn());
|
||||||
tunnelBoringMachineCurrentData.setProjectSn(tunnelBoringMachine.getProjectSn());
|
tunnelBoringMachineCurrentData.setProjectSn(tunnelBoringMachine.getProjectSn());
|
||||||
tunnelBoringMachineCurrentData.setLine(tunnelBoringMachine.getLine());
|
tunnelBoringMachineCurrentData.setLine(tunnelBoringMachine.getLine());
|
||||||
@ -313,19 +316,13 @@ public class TunnelBoringMachineTask {
|
|||||||
tunnelBoringMachineCurrentData.setRightUpGroutingPressure(obj.getDouble("val"));
|
tunnelBoringMachineCurrentData.setRightUpGroutingPressure(obj.getDouble("val"));
|
||||||
}
|
}
|
||||||
if (obj.getString("colName").equals("螺机O2")) {
|
if (obj.getString("colName").equals("螺机O2")) {
|
||||||
poisonousGasDevCurrentData.setGasType(1);
|
savePoisonousGas(tunnelBoringMachine, 1, 2, obj.getDouble("val"));
|
||||||
poisonousGasDevCurrentData.setGasVal(obj.getDouble("val"));
|
|
||||||
poisonousGasDevCurrentData.setUnit(2);
|
|
||||||
}
|
}
|
||||||
if (obj.getString("colName").equals("螺机CH4")) {
|
if (obj.getString("colName").equals("螺机CH4")) {
|
||||||
poisonousGasDevCurrentData.setGasType(2);
|
savePoisonousGas(tunnelBoringMachine, 2, 1, obj.getDouble("val"));
|
||||||
poisonousGasDevCurrentData.setGasVal(obj.getDouble("val"));
|
|
||||||
poisonousGasDevCurrentData.setUnit(1);
|
|
||||||
}
|
}
|
||||||
if (obj.getString("colName").equals("螺机CO")) {
|
if (obj.getString("colName").equals("螺机CO")) {
|
||||||
poisonousGasDevCurrentData.setGasType(3);
|
savePoisonousGas(tunnelBoringMachine, 3, 0, obj.getDouble("val"));
|
||||||
poisonousGasDevCurrentData.setGasVal(obj.getDouble("val"));
|
|
||||||
poisonousGasDevCurrentData.setUnit(0);
|
|
||||||
}
|
}
|
||||||
// if (obj.getString("colName").equals("螺机CO2")) {
|
// if (obj.getString("colName").equals("螺机CO2")) {
|
||||||
// poisonousGasDevCurrentData.setGasType(1);
|
// poisonousGasDevCurrentData.setGasType(1);
|
||||||
@ -341,12 +338,20 @@ public class TunnelBoringMachineTask {
|
|||||||
Map<String, Object> map = new HashMap<>();
|
Map<String, Object> map = new HashMap<>();
|
||||||
map.put("projectSn", tunnelBoringMachine.getProjectSn());
|
map.put("projectSn", tunnelBoringMachine.getProjectSn());
|
||||||
map.put("deviceSn", tunnelBoringMachine.getDevSn());
|
map.put("deviceSn", tunnelBoringMachine.getDevSn());
|
||||||
|
map.put("time", DateUtil.formatDate(new Date()));
|
||||||
TunnelBoringMachineCurrentData firstData = tunnelBoringMachineCurrentDataMapper.getFirstData(map);
|
TunnelBoringMachineCurrentData firstData = tunnelBoringMachineCurrentDataMapper.getFirstData(map);
|
||||||
if (firstData == null) {
|
if (firstData == null) {
|
||||||
tunnelBoringMachineCurrentData.setDayNumber(0);
|
tunnelBoringMachineCurrentData.setDayNumber(0);
|
||||||
} else {
|
} else {
|
||||||
tunnelBoringMachineCurrentData.setDayNumber(tunnelBoringMachineCurrentData.getCurrentNumber() - firstData.getCurrentNumber());
|
tunnelBoringMachineCurrentData.setDayNumber(tunnelBoringMachineCurrentData.getCurrentNumber() - firstData.getCurrentNumber());
|
||||||
}
|
}
|
||||||
|
map.put("time", DateUtil.format(DateUtil.beginOfMonth(new Date()), "yyyy-MM"));
|
||||||
|
TunnelBoringMachineCurrentData firstDataByMonth = tunnelBoringMachineCurrentDataMapper.getFirstDataByMonth(map);
|
||||||
|
if (firstDataByMonth == null) {
|
||||||
|
tunnelBoringMachineCurrentData.setMonthNumber(0);
|
||||||
|
} else {
|
||||||
|
tunnelBoringMachineCurrentData.setMonthNumber(tunnelBoringMachineCurrentData.getCurrentNumber() - firstDataByMonth.getCurrentNumber());
|
||||||
|
}
|
||||||
tunnelBoringMachineCurrentData.setReportTime(DateUtil.parseDateTime(jsonObject.getJSONObject("data").getString("time_str")));
|
tunnelBoringMachineCurrentData.setReportTime(DateUtil.parseDateTime(jsonObject.getJSONObject("data").getString("time_str")));
|
||||||
tunnelBoringMachineCurrentData.setCreateTime(new Date());
|
tunnelBoringMachineCurrentData.setCreateTime(new Date());
|
||||||
TunnelBoringMachineCurrentData exist = tunnelBoringMachineCurrentDataMapper.selectOne(Wrappers.<TunnelBoringMachineCurrentData>lambdaQuery()
|
TunnelBoringMachineCurrentData exist = tunnelBoringMachineCurrentDataMapper.selectOne(Wrappers.<TunnelBoringMachineCurrentData>lambdaQuery()
|
||||||
@ -357,9 +362,17 @@ public class TunnelBoringMachineTask {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
tunnelBoringMachineCurrentDataMapper.insert(tunnelBoringMachineCurrentData);
|
tunnelBoringMachineCurrentDataMapper.insert(tunnelBoringMachineCurrentData);
|
||||||
poisonousGasDevCurrentData.setUploadTime(new Date());
|
|
||||||
poisonousGasDevCurrentDataMapper.insert(poisonousGasDevCurrentData);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void savePoisonousGas(TunnelBoringMachine tunnelBoringMachine, Integer gasType, Integer unit, double value) {
|
||||||
|
PoisonousGasDevCurrentData poisonousGasDevCurrentData = new PoisonousGasDevCurrentData();
|
||||||
|
poisonousGasDevCurrentData.setDevSn(tunnelBoringMachine.getDevSn());
|
||||||
|
poisonousGasDevCurrentData.setProjectSn(tunnelBoringMachine.getProjectSn());
|
||||||
|
poisonousGasDevCurrentData.setGasType(gasType);
|
||||||
|
poisonousGasDevCurrentData.setGasVal(value);
|
||||||
|
poisonousGasDevCurrentData.setUnit(unit);
|
||||||
|
poisonousGasDevCurrentData.setUploadTime(new Date());
|
||||||
|
poisonousGasDevCurrentDataMapper.insert(poisonousGasDevCurrentData);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user