Commit d7fb5ebf authored by KeYong's avatar KeYong

Merge branch 'develop_station' into developer

parents 5492919b 4a5e22d1
......@@ -179,7 +179,7 @@ public class FireEquipment implements Serializable {
@ApiModelProperty(value = "资产生命周期日期")
@TableField("lifecycledate")
private String lifecycledate = "";
private Date lifecycledate;
@ApiModelProperty(value = "资产生命周期状态")
@TableField("lifecyclestate")
......
......@@ -105,6 +105,8 @@ public class EquipmentSpecificAlarmServiceImpl extends ServiceImpl<EquipmentSpec
CommonPageInfoParam param = new CommonPageInfoParam();
if (AlarmTypeEnum.GZGJ.getCode().equals(alarmType)) {
param.setIsFireAlarm("false");
} else if (AlarmTypeEnum.HZGJ.getCode().equals(alarmType)) {
param.setAlarmType(alarmType);
}
List<HashMap<String, Object>> list = this.baseMapper.getAlarmList(param);
List<EquipmentAlarmDownloadVO> equipmentDownloads = handleExportData(ids, list);
......
......@@ -416,6 +416,17 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
this.update(new LambdaUpdateWrapper<EquipmentSpecific>().set(EquipmentSpecific::getAgencyId, equipmentSpecific.getAgencyId()).set(EquipmentSpecific::getTeamId, equipmentSpecific.getTeamId()).eq(EquipmentSpecific::getId, equipmentSpecific.getId()));
if (equipmentSpecific.getStockDetail() != null && equipmentSpecific.getStockDetail().getWarehouseStructureId() != null) {
equipmentSpecific.setWarehouseStructureId(equipmentSpecific.getStockDetail().getWarehouseStructureId());
// 更新alarm表没有复位的装备位置信息
LambdaQueryWrapper<EquipmentSpecificAlarm> queryWrapper = new LambdaQueryWrapper();
queryWrapper.eq(EquipmentSpecificAlarm::getEquipmentSpecificId, equipmentSpecific.getId());
queryWrapper.ne(EquipmentSpecificAlarm::getStatus, AlarmStatusEnum.HF.getCode());
List<EquipmentSpecificAlarm> alarms = equipmentSpecificAlarmService.getBaseMapper().selectList(queryWrapper);
if (0 < alarms.size()) {
alarms.stream().map(x -> x.setLocation(equipmentSpecific.getPosition() + " "
+ null == equipmentSpecific.getStockDetail().getDescription() ? "" : equipmentSpecific.getStockDetail().getDescription())).collect(Collectors.toList());
equipmentSpecificAlarmService.updateBatchById(alarms);
}
}
boolean updateById = this.updateById(equipmentSpecific);
if (updateById) {
......@@ -474,17 +485,6 @@ public class EquipmentSpecificSerivceImpl extends ServiceImpl<EquipmentSpecificM
equipmentSpecific.getStockDetail().setDescription(detail.getArea());
stockDetailService.save(equipmentSpecific.getStockDetail());
// 更新alarm表没有复位的装备位置信息
LambdaQueryWrapper<EquipmentSpecificAlarm> queryWrapper = new LambdaQueryWrapper();
queryWrapper.eq(EquipmentSpecificAlarm::getEquipmentSpecificId, equipmentSpecific.getId());
queryWrapper.ne(EquipmentSpecificAlarm::getStatus, AlarmStatusEnum.HF.getCode());
List<EquipmentSpecificAlarm> alarms = equipmentSpecificAlarmService.getBaseMapper().selectList(queryWrapper);
if (0 < alarms.size()) {
alarms.stream().map(x -> x.setLocation(equipmentSpecific.getPosition() + " "
+ equipmentSpecific.getStockDetail().getDescription())).collect(Collectors.toList());
equipmentSpecificAlarmService.updateBatchById(alarms);
}
//生成入库单
StockBill stockBill = buildStockBills(equipmentSpecific, reginParams, agencyUserModel);
stockBillService.save(stockBill);
......
......@@ -282,7 +282,7 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
}
static void upAlarmLogStatus(String iotCode, String equipmentSpecificIndexKey, IEquipmentSpecificAlarmLogService equipmentSpecificAlarmLogService) {
public static List<EquipmentSpecificAlarmLog> upAlarmLogStatus(String iotCode, String equipmentSpecificIndexKey, IEquipmentSpecificAlarmLogService equipmentSpecificAlarmLogService) {
LambdaQueryWrapper<EquipmentSpecificAlarmLog> queryWrapper = new LambdaQueryWrapper();
queryWrapper.eq(EquipmentSpecificAlarmLog::getIotCode, iotCode);
queryWrapper.eq(EquipmentSpecificAlarmLog::getEquipmentSpecificIndexKey, equipmentSpecificIndexKey);
......@@ -295,6 +295,7 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
if (!logs.isEmpty()) {
equipmentSpecificAlarmLogService.updateBatchById(logs);
}
return logs;
}
public void publishDataToCanvas(List<EquipmentSpecificIndex> indexList) {
......@@ -321,8 +322,17 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
}
Map<String, Object> map = JSON.parseObject(JSON.toJSONString(equipmentStateVo));
map.put(canvasTopic, topicObject);
// 发送数据至画布
mqttSendGateway.sendToMqtt(canvasTopic, JSON.toJSONString(map));
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() {
@Override
public void afterCompletion(int status) {
if (TransactionSynchronization.STATUS_COMMITTED == status) {
// 发送数据至画布
mqttSendGateway.sendToMqtt(canvasTopic, JSON.toJSONString(map));
}
}
});
}
}
......@@ -679,15 +689,13 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
}
}
});
//向画布推送
publishDataToCanvas(equipmentSpecificIndexList);
// 首页性能指标数据订阅
mqttSendGateway.sendToMqtt(indexTopic, JSON.toJSONString(indexStateList));
//组态大屏消息推送,设备表实时指标修改
intePageSysDataRefresh(equipmentSpecificIndexList, topicEntity);
//数字换流站同步指标修改
syncSpecificIndexsToGS(equipmentSpecificIndexList);
......@@ -696,7 +704,9 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
//则更新拓扑节点数据及告警状态
updateNodeDateByEquipId(equipmentSpecificIndexList);
//向画布推送
publishDataToCanvas(equipmentSpecificIndexList);
}
......@@ -714,23 +724,20 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
}
mqttSendGateway.sendToMqtt(TopicEnum.EQDQR.getTopic(), JSONArray.toJSON(action).toString());
} else {
upAlarmLogStatus(action.getIotCode(), action.getEquipmentSpecificIndexKey(), equipmentSpecificAlarmLogService);
equipmentAlarmLogs.addAll(upAlarmLogStatus(action.getIotCode(), action.getEquipmentSpecificIndexKey(), equipmentSpecificAlarmLogService));
mqttSendGateway.sendToMqtt(TopicEnum.EQYQR.getTopic(), JSONArray.toJSON(action).toString());
bool = Boolean.TRUE;
}
});
if(ObjectUtils.isEmpty(equipmentAlarmLogs)){
return;
}
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() {
@Override
public void afterCommit() {
JSONObject jsonObject = new JSONObject();
jsonObject.put("seqNo", UUID.randomUUID().toString().replace("-", "").toLowerCase());
mqttSendGateway.sendToMqtt(TopicEnum.ALARM_LOG_INSERT.getTopic(), jsonObject.toString());
mqttSendGateway.sendToMqtt(TopicEnum.EQZXDT.getTopic(), "");
// 数字换流站数据处理(高斯库同步及南瑞告警推送)
if (syncSwitch) {
List<FireEquipmentFireAlarm> alarmList = createFireEquipmentFireAlarmVo(equipmentAlarmLogs);
......@@ -761,7 +768,9 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
}
// 向南瑞平台推送报警消息
syncDataService.syncCreatedSendAlarm(equipmentAlarmLogs);
if(!bool){
syncDataService.syncCreatedSendAlarm(equipmentAlarmLogs);
}
}
}
});
......@@ -913,7 +922,6 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() {
@Override
public void afterCommit() {
mqttSendGateway.sendToMqtt(TopicEnum.EQZXDT.getTopic(), "");
mqttSendGateway.sendToMqtt(TopicEnum.EQXXTJ.getTopic(), "");
iEquipmentSpecificSerivce.integrationPageSysDataRefresh(topicEntity.getCode());
iEquipmentSpecificSerivce.updateEquipmentSpecIndexRealtimeData(equipmentSpecificIndexList);
......@@ -960,7 +968,7 @@ public class MqttReceiveServiceImpl implements MqttReceiveService {
}
}
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
......
......@@ -1296,61 +1296,117 @@
</select>
<select id="fireWaterSysHydrant" resultType="java.util.Map">
SELECT
xhsanhj,
xhsangz,
xhsanpb,
ABS(xhsan - xhsanhj- xhsangz-xhsanpb) as xhszc,
xhsan
from
(select
(SELECT
count(1)
FROM `wl_equipment_specific_index` s
where s.equipment_index_key = 'FAS_FireHydrantButton_FireAlarm'
and s.`value` = 'true') as xhsanhj,
(SELECT
count(1)
FROM `wl_equipment_specific_index` s
where s.equipment_index_key = 'FAS_FireHydrantButton_Fault'
and s.`value` = 'true') as xhsangz,
(SELECT
count(1)
FROM `wl_equipment_specific_index` s
where s.equipment_index_key = 'FAS_FireHydrantButton_Shield'
and s.`value` = 'true') as xhsanpb,
(SELECT
count(1)
from
`wl_equipment_specific_index` si
where
si.equipment_index_key = 'FAS_FireHydrantButton_FireAlarm') as xhsan
) as hydrant
xhsanhj,
xhsangz,
xhsanpb,
(xhszc - noZcTotal) AS xhszc,
xhsan
FROM
(
SELECT
(
SELECT
count(1)
FROM
`wl_equipment_specific_index` s
WHERE
s.equipment_index_key = 'FAS_FireHydrantButton_FireAlarm'
AND s.`value` = 'true'
) AS xhsanhj,
(
SELECT
count(1)
FROM
`wl_equipment_specific_index` s
WHERE
s.equipment_index_key = 'FAS_FireHydrantButton_Fault'
AND s.`value` = 'true'
) AS xhsangz,
(
SELECT
count(1)
FROM
`wl_equipment_specific_index` s
WHERE
s.equipment_index_key = 'FAS_FireHydrantButton_Shield'
AND s.`value` = 'true'
) AS xhsanpb,
(
SELECT
count(1)
FROM
`wl_equipment_specific_index` si
WHERE
si.equipment_index_key = 'FAS_FireHydrantButton_FireAlarm'
) AS xhsan,
(
SELECT
count(
DISTINCT equipment_specific_id
)
FROM
`wl_equipment_specific_index` s
WHERE
(
s.`value` = 'false'
OR s.`value` IS NULL
)
AND (
s.equipment_index_key = 'FAS_FireHydrantButton_FireAlarm'
OR s.equipment_index_key = 'FAS_FireHydrantButton_Fault'
OR s.equipment_index_key = 'FAS_FireHydrantButton_Shield'
)
) AS xhszc,
(
SELECT
count(
DISTINCT equipment_specific_id
)
FROM
`wl_equipment_specific_index` s
WHERE
(
s.`value` = 'true'
)
AND (
s.equipment_index_key = 'FAS_FireHydrantButton_FireAlarm'
OR s.equipment_index_key = 'FAS_FireHydrantButton_Fault'
OR s.equipment_index_key = 'FAS_FireHydrantButton_Shield'
)
) AS noZcTotal
) AS hydrant
</select>
<select id="fireWaterSysCollectingDevice" resultType="java.util.Map">
SELECT
sbfcjzzyc,
sbfcjzzbs,
(sbfcjzz-sbfcjzzyc-sbfcjzzbs) as sbfcjzzzc,
( sbfcjzzzc - noZcTotal ) AS sbfcjzzzc,
sbfcjzz
from
(select
(SELECT
count(1)
FROM `wl_equipment_specific_index` s
where s.equipment_index_key = 'FHS_CollectingDevice_DeviceAbnormal'
and s.`value` = 'true') as sbfcjzzyc,
(SELECT
count(1)
FROM `wl_equipment_specific_index` s
where s.equipment_index_key = 'FHS_CollectingDevice_DeviceLock'
and s.`value` = 'true') as sbfcjzzbs,
(SELECT
count(1)
from
`wl_equipment_specific_index` si
where
si.equipment_index_key = 'FHS_CollectingDevice_DeviceAbnormal') as sbfcjzz
) as collectingDevice
FROM
(
SELECT
( SELECT count( 1 ) FROM `wl_equipment_specific_index` s WHERE s.equipment_index_key = 'FHS_CollectingDevice_DeviceAbnormal' AND s.`value` = 'true' ) AS sbfcjzzyc,
( SELECT count( 1 ) FROM `wl_equipment_specific_index` s WHERE s.equipment_index_key = 'FHS_CollectingDevice_DeviceLock' AND s.`value` = 'true' ) AS sbfcjzzbs,
(
SELECT
count( DISTINCT equipment_specific_id )
FROM
`wl_equipment_specific_index` s
WHERE
( s.`value` = 'false' OR s.`value` IS NULL )
AND ( s.equipment_index_key = 'FHS_CollectingDevice_DeviceAbnormal' )
) AS sbfcjzz,
(
SELECT
count( DISTINCT equipment_specific_id )
FROM
`wl_equipment_specific_index` s
WHERE
( s.`value` = 'false' OR s.`value` IS NULL )
AND s.equipment_index_key = 'FHS_CollectingDevice_DeviceAbnormal'
) AS sbfcjzzzc,
( SELECT count( DISTINCT equipment_specific_id ) FROM `wl_equipment_specific_index` s WHERE ( s.`value` = 'true' ) AND s.equipment_index_key = 'FHS_CollectingDevice_DeviceAbnormal' ) AS noZcTotal
) AS collectingDevice
</select>
<select id="fireWaterSysWaterPump" resultType="java.util.Map">
select
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment