diff --git a/hzims-service-api/alarm-api/src/main/java/com/hnac/hzims/alarm/entity/AlarmConfigEntity.java b/hzims-service-api/alarm-api/src/main/java/com/hnac/hzims/alarm/entity/AlarmConfigEntity.java index 7022fa3..bf85187 100644 --- a/hzims-service-api/alarm-api/src/main/java/com/hnac/hzims/alarm/entity/AlarmConfigEntity.java +++ b/hzims-service-api/alarm-api/src/main/java/com/hnac/hzims/alarm/entity/AlarmConfigEntity.java @@ -24,7 +24,4 @@ public class AlarmConfigEntity extends TenantEntity { @ApiModelProperty(value = "站点名称") private String stationName; - - @ApiModelProperty(value = "是否启用 :0-启用 1-不启用") - private Integer isEnable; } \ No newline at end of file diff --git a/hzims-service/equipment/src/main/java/com/hnac/hzims/emParam/service/impl/ParamServiceImpl.java b/hzims-service/equipment/src/main/java/com/hnac/hzims/emParam/service/impl/ParamServiceImpl.java index 10b4a7b..12fced6 100644 --- a/hzims-service/equipment/src/main/java/com/hnac/hzims/emParam/service/impl/ParamServiceImpl.java +++ b/hzims-service/equipment/src/main/java/com/hnac/hzims/emParam/service/impl/ParamServiceImpl.java @@ -70,17 +70,17 @@ public class ParamServiceImpl implements IParamService { public List recall(String emCode,String stationCode) { List result = Lists.newArrayList(); // 获取设备物模型中是参数的属性 - Result> paramDeviceAttrR = deviceDataClient.getIsParamDeviceAttr(emCode); + R> paramDeviceAttrR = deviceClient.getOnlineAttr(emCode); Assert.isTrue(paramDeviceAttrR.isSuccess() && CollectionUtil.isNotEmpty(paramDeviceAttrR.getData()),() -> { throw new ServiceException("获取设备实例物模型属性失败!"); }); // 获取实时数据 - List signageList = paramDeviceAttrR.getData().stream().map(DeviceInstanceAttrVO::getSignage).filter(StringUtil::isNotBlank).collect(Collectors.toList()); + List signageList = paramDeviceAttrR.getData().stream().filter(o->StringUtil.isNotBlank(o.getSignage()) && StringUtil.isNotBlank(o.getFacDeviceAttrId())).map(DeviceInstanceAttrVO::getSignage).collect(Collectors.toList()); Result realDataR = deviceDataClient.getDeviceRealDataByCode(emCode, signageList); Assert.isTrue(realDataR.isSuccess(),() -> { throw new ServiceException("参数召回获取实时数据失败"); }); - Map> paramGroupVOListMap = paramDeviceAttrR.getData().stream().map(this::convert).collect(Collectors.groupingBy(p -> { + Map> paramGroupVOListMap = paramDeviceAttrR.getData().stream().filter(o->StringUtil.isNotBlank(o.getFacDeviceAttrId())).map(this::convert).collect(Collectors.groupingBy(p -> { ParamGroupVO paramGroupVO = new ParamGroupVO(); paramGroupVO.setGroupId(String.valueOf(p.getModelClassifyId())); paramGroupVO.setGroupName(p.getModelClassifyName()); diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/config/service/impl/AlarmConfigServiceImpl.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/config/service/impl/AlarmConfigServiceImpl.java index 9b553cd..b2c012a 100644 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/config/service/impl/AlarmConfigServiceImpl.java +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/config/service/impl/AlarmConfigServiceImpl.java @@ -103,8 +103,7 @@ public class AlarmConfigServiceImpl extends BaseServiceImpllambdaQuery() - .eq(AlarmConfigEntity::getStationId,code) - .eq(AlarmConfigEntity::getIsEnable,"0")); + .eq(AlarmConfigEntity::getStationId,code)); if(ObjectUtil.isEmpty(config)){ return detailService.defaultMark(source,type); } diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/ConditionAlarmService.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/DroolsAlarmService.java similarity index 85% rename from hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/ConditionAlarmService.java rename to hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/DroolsAlarmService.java index f2c7364..186609a 100644 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/ConditionAlarmService.java +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/DroolsAlarmService.java @@ -8,7 +8,7 @@ import java.util.List; * 等级处理接口 * @author ysj */ -public interface ConditionAlarmService { +public interface DroolsAlarmService { String message(); diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/impl/ConditionAlarmServiceImpl.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/impl/DroolsAlarmServiceImpl.java similarity index 95% rename from hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/impl/ConditionAlarmServiceImpl.java rename to hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/impl/DroolsAlarmServiceImpl.java index c04ba7a..501b131 100644 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/impl/ConditionAlarmServiceImpl.java +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/handle/service/impl/DroolsAlarmServiceImpl.java @@ -3,7 +3,7 @@ package com.hnac.hzims.alarm.handle.service.impl; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.hnac.hzims.alarm.entity.AlarmEntity; -import com.hnac.hzims.alarm.handle.service.ConditionAlarmService; +import com.hnac.hzims.alarm.handle.service.DroolsAlarmService; import com.hnac.hzims.alarm.handle.service.MessageService; import com.hnac.hzims.alarm.show.service.AlarmService; import com.hnac.hzims.alarm.vo.ConditionAlarmVo; @@ -31,7 +31,7 @@ import static com.hnac.hzims.alarm.constants.AlarmConstants.CONDITION_ALARM; @Slf4j @Service @RequiredArgsConstructor -public class ConditionAlarmServiceImpl implements ConditionAlarmService { +public class DroolsAlarmServiceImpl implements DroolsAlarmService { private final AlarmService alarmService; diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/DroolsMqttConsumer.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/DroolsMqttConsumer.java new file mode 100644 index 0000000..33a9697 --- /dev/null +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/DroolsMqttConsumer.java @@ -0,0 +1,41 @@ +package com.hnac.hzims.alarm.mqtt; + +import com.alibaba.fastjson.JSONObject; +import com.hnac.hzims.alarm.entity.AlarmEntity; +import com.hnac.hzims.alarm.handle.service.DroolsAlarmService; +import com.hnac.hzims.alarm.monitor.service.AlarmSaveService; +import com.hnac.hzinfo.subscribe.SubscribeCallBack; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + * + * @Author: ty + */ + +@Service +@Slf4j +public class DroolsMqttConsumer implements SubscribeCallBack { + @Autowired + private DroolsAlarmService droolsAlarmService; + @Autowired + private AlarmSaveService alarmSaveService; + @Override + public void onMessage(Map data) { + System.out.println("监听到消息"+data.toString()); + String s = JSONObject.toJSONString(data); + //消费代码 + List alarmEntities = droolsAlarmService.receiveMessage(s); + //统一数据处理 + try { + alarmSaveService.save(alarmEntities); + }catch (Exception e){ + log.error("规则引擎告警数据处理报错(DroolsAlarm):"+e); + System.out.println("规则引擎告警数据处理报错(DroolsAlarm):"+e); + } + } +} diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/fdpMqttConsumer.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/FdpMqttConsumer.java similarity index 82% rename from hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/fdpMqttConsumer.java rename to hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/FdpMqttConsumer.java index fe90f1b..90fd7a6 100644 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/fdpMqttConsumer.java +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/FdpMqttConsumer.java @@ -3,7 +3,7 @@ package com.hnac.hzims.alarm.mqtt; import com.alibaba.fastjson.JSONObject; import com.hnac.hzims.alarm.entity.AlarmEntity; import com.hnac.hzims.alarm.handle.service.FdpAlarmService; -import com.hnac.hzims.alarm.show.service.AlarmService; +import com.hnac.hzims.alarm.monitor.service.AlarmSaveService; import com.hnac.hzinfo.subscribe.SubscribeCallBack; import org.springblade.core.log.exception.ServiceException; import org.springframework.beans.factory.annotation.Autowired; @@ -18,11 +18,11 @@ import java.util.Map; */ @Service -public class fdpMqttConsumer implements SubscribeCallBack { +public class FdpMqttConsumer implements SubscribeCallBack { @Autowired private FdpAlarmService fdpAlarmService; @Autowired - private AlarmService alarmService; + private AlarmSaveService alarmSaveService; @Override public void onMessage(Map data) { System.out.println("监听到消息"+data.toString()); @@ -32,7 +32,7 @@ public class fdpMqttConsumer implements SubscribeCallBack { List alarmEntities = fdpAlarmService.receiveMessage(s); //统一数据处理 try { - alarmService.dealAlarmEntities(alarmEntities); + alarmSaveService.save(alarmEntities); }catch (Exception e){ throw new ServiceException("集中监控告警数据处理报错(FdpAlarm):"+e); } diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/HZ300MqttConsumer.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/HZ300MqttConsumer.java new file mode 100644 index 0000000..6060a59 --- /dev/null +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/HZ300MqttConsumer.java @@ -0,0 +1,40 @@ +package com.hnac.hzims.alarm.mqtt; + +import com.alibaba.fastjson.JSONObject; +import com.hnac.hzims.alarm.entity.AlarmEntity; +import com.hnac.hzims.alarm.handle.service.SystemAlarmService; +import com.hnac.hzims.alarm.monitor.service.AlarmSaveService; +import com.hnac.hzinfo.subscribe.SubscribeCallBack; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + * + * @Author: ty + */ + +@Service +@Slf4j +public class HZ300MqttConsumer implements SubscribeCallBack { + @Autowired + private SystemAlarmService systemAlarmService; + @Autowired + private AlarmSaveService alarmSaveService; + @Override + public void onMessage(Map data) { + System.out.println("监听到消息"+data.toString()); + String s = JSONObject.toJSONString(data); + //消费代码 + List alarmEntities = systemAlarmService.receiveMessage(s); + //统一数据处理 + try { + alarmSaveService.save(alarmEntities); + }catch (Exception e){ + log.error("HZ3000告警数据处理报错(HZ300Alarm):"+e); + } + } +} diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/MqttConfig.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/MqttConfig.java new file mode 100644 index 0000000..d6bfe52 --- /dev/null +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/MqttConfig.java @@ -0,0 +1,75 @@ +package com.hnac.hzims.alarm.mqtt; + +import com.hnac.hzinfo.subscribe.AnalysisSubscribe; +import com.hnac.hzinfo.subscribe.DroolsSoeSubscribe; +import com.hnac.hzinfo.subscribe.HZ3000SoeSubscribe; +import com.hnac.hzinfo.subscribe.SoeSubscribe; +import lombok.extern.slf4j.Slf4j; +import org.eclipse.paho.client.mqttv3.MqttAsyncClient; +import org.eclipse.paho.client.mqttv3.MqttException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Component; + +import javax.annotation.PostConstruct; +import java.util.Collections; + +/** + * @Author: ty + */ + +@Component +@Slf4j +public class MqttConfig { + + @Autowired + FdpMqttConsumer fdpMqttConsumer; + @Autowired + DroolsMqttConsumer droolsMqttConsumer; + @Autowired + HZ300MqttConsumer hz300MqttConsumer; + @Autowired + VideoMqttConsumer videoMqttConsumer; + @Value("${hzims.mqtt.url}") + private String mqtt_fdp_url; + @Value("${hzims.mqtt.group}") + private String mqtt_fdp_group; + @Value("${hzims.mqtt.password}") + private String mqtt_fdp_password; + @Value("${hzims.mqtt.username}") + private String mqtt_fdp_username; +// @Value("${hzims.mqtt.fdp.topname}") +// private String mqtt_fdp_topname; +// @Value("${hzims.mqtt.drools.topname}") +// private String mqtt_drools_topname; +// @Value("${hzims.mqtt.system.topname}") +// private String mqtt_system_topname; + @PostConstruct + public void registerMqtt(){ +try { + com.hnac.hzinfo.subscribe.MqttConfig mqttConfig = new com.hnac.hzinfo.subscribe.MqttConfig(); + mqttConfig.setUrl(mqtt_fdp_url); + mqttConfig.setGroup(mqtt_fdp_group); + mqttConfig.setPassword(mqtt_fdp_password); + mqttConfig.setUsername(mqtt_fdp_username); + //fdp + AnalysisSubscribe analysisSubscribe = new AnalysisSubscribe(); + MqttAsyncClient fdpClient = analysisSubscribe.subscribe(mqttConfig, Collections.singletonList("#"), fdpMqttConsumer); + log.info(fdpClient.toString()); + //drools + DroolsSoeSubscribe droolsSoeSubscribe = new DroolsSoeSubscribe(); + MqttAsyncClient droolsClient = droolsSoeSubscribe.subscribe(mqttConfig, Collections.singletonList("#"), droolsMqttConsumer); + log.info(droolsClient.toString()); + //hz3000 + HZ3000SoeSubscribe hz3000SoeSubscribe = new HZ3000SoeSubscribe(); + MqttAsyncClient hz3000Client = hz3000SoeSubscribe.subscribe(mqttConfig, Collections.singletonList("#"), hz300MqttConsumer); + log.info(hz3000Client.toString()); + //视频 + SoeSubscribe subscribe = new SoeSubscribe(); + MqttAsyncClient videoClient = subscribe.subscribe(mqttConfig, Collections.singletonList("#"), videoMqttConsumer); + log.info(videoClient.toString()); + }catch (MqttException e){ + log.error(e.toString()) ; + } + } +} diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/VideoMqttConsumer.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/VideoMqttConsumer.java new file mode 100644 index 0000000..e42bfa3 --- /dev/null +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/VideoMqttConsumer.java @@ -0,0 +1,40 @@ +package com.hnac.hzims.alarm.mqtt; + +import com.alibaba.fastjson.JSONObject; +import com.hnac.hzims.alarm.entity.AlarmEntity; +import com.hnac.hzims.alarm.handle.service.VideoAlarmService; +import com.hnac.hzims.alarm.monitor.service.AlarmSaveService; +import com.hnac.hzinfo.subscribe.SubscribeCallBack; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + * + * @Author: ty + */ + +@Service +@Slf4j +public class VideoMqttConsumer implements SubscribeCallBack { + @Autowired + private VideoAlarmService videoAlarmService; + @Autowired + private AlarmSaveService alarmSaveService; + @Override + public void onMessage(Map data) { + System.out.println("监听到消息"+data.toString()); + String s = JSONObject.toJSONString(data); + //消费代码 + List alarmEntities = videoAlarmService.receiveMessage(s); + //统一数据处理 + try { + alarmSaveService.save(alarmEntities); + }catch (Exception e){ + log.error("HZ3000告警数据处理报错(HZ300Alarm):"+e); + } + } +} diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/fdpMqttConfig.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/fdpMqttConfig.java deleted file mode 100644 index f0f4d96..0000000 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/mqtt/fdpMqttConfig.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.hnac.hzims.alarm.mqtt; - -import com.hnac.hzinfo.subscribe.AnalysisSubscribe; -import com.hnac.hzinfo.subscribe.MqttConfig; -import org.eclipse.paho.client.mqttv3.MqttException; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.stereotype.Component; - -import javax.annotation.PostConstruct; -import java.util.Collections; - -/** - * @Author: ty - */ - -@Component -public class fdpMqttConfig { - - @Autowired - fdpMqttConsumer fdpMqttConsumer; - /*@Value("${hzims.mqtt.fdp-url}") - private String mqtt_fdp_url; - @Value("${hzims.mqtt.fdp-group}") - private String mqtt_fdp_group; - @Value("${hzims.mqtt.fdp-password}") - private String mqtt_fdp_password; - @Value("${hzims.mqtt.fdp-username}") - private String mqtt_fdp_username; - @Value("${hzims.mqtt.fdp-topname}") - private String mqtt_fdp_topname;*/ - @PostConstruct - public void registerMqtt(){ - try { - MqttConfig mqttConfig = new MqttConfig(); - mqttConfig.setUrl("tcp://175.6.40.68:1883"); - mqttConfig.setGroup("hzims-alarm"); - mqttConfig.setPassword("hz123456"); - mqttConfig.setUsername("hzinfo"); -// mqttConfig.setUrl(mqtt_fdp_url); -// mqttConfig.setGroup(mqtt_fdp_group); -// mqttConfig.setPassword(mqtt_fdp_password); -// mqttConfig.setUsername(mqtt_fdp_username); - AnalysisSubscribe analysisSubscribe = new AnalysisSubscribe(); - analysisSubscribe.subscribe(mqttConfig, Collections.singletonList("iot/sync/analytics/#"), fdpMqttConsumer); -// analysisSubscribe.subscribe(mqttConfig, mqtt_fdp_topname, fdpMqttConsumer); - }catch (MqttException e){ - e.printStackTrace(); - } - - - } -} diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/show/service/AlarmService.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/show/service/AlarmService.java index 1ab1026..488ae76 100644 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/show/service/AlarmService.java +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/show/service/AlarmService.java @@ -17,6 +17,4 @@ public interface AlarmService extends BaseService { List counts(); List broadcast(String startTime, String endTime); - - void dealAlarmEntities(List param); } \ No newline at end of file diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/show/service/impl/AlarmServiceImpl.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/show/service/impl/AlarmServiceImpl.java index 5280909..45eccff 100644 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/show/service/impl/AlarmServiceImpl.java +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/show/service/impl/AlarmServiceImpl.java @@ -2,7 +2,6 @@ package com.hnac.hzims.alarm.show.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hnac.hzims.alarm.config.service.AlarmConfigService; import com.hnac.hzims.alarm.constants.AlarmConstants; import com.hnac.hzims.alarm.entity.AlarmEntity; @@ -20,7 +19,6 @@ import lombok.extern.slf4j.Slf4j; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.CollectionUtil; -import org.springblade.core.tool.utils.DateUtil; import org.springblade.core.tool.utils.StringUtil; import org.springblade.system.user.entity.User; import org.springblade.system.user.feign.IUserClient; @@ -28,9 +26,7 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.Collections; -import java.util.Date; import java.util.List; -import java.util.concurrent.CompletableFuture; import java.util.stream.Collectors; /** @@ -159,38 +155,6 @@ public class AlarmServiceImpl extends BaseServiceImpl return this.list(wrapper); } - /** - * websocket 消息推送保存 - * @param param - */ - @Override - public void dealAlarmEntities(List param) { - if (CollectionUtil.isNotEmpty(param)) { - // 查询当天已经记录的告警 - List historys = this.list(Wrappers.lambdaQuery(). - ge(AlarmEntity::getCreateTime, DateUtil.format(new Date(), DateUtil.PATTERN_DATE) + " 00:00:00") - .eq(AlarmEntity::getAlarmSource, param.get(0).getAlarmSource())); - - // 数据过滤 - List entitys = param.stream() - .filter(alarm -> CollectionUtil.isNotEmpty(historys) || !historys.stream().map(AlarmEntity::getAlarmId).collect(Collectors.toList()).contains(alarm.getAlarmId())) - .map(item -> { - //消息推送 - // 短信 - CompletableFuture.runAsync(() -> messageService.shortMessage(item)); - // web/app消息推送 - CompletableFuture.runAsync(() -> messageService.webAppMessage(item)); - // 微信公众号推送 - CompletableFuture.runAsync(() -> messageService.weChatMessage(item)); - return item; - }).collect(Collectors.toList()); - if (CollectionUtil.isEmpty(entitys)) { - return; - } - // 批量保存 - this.saveBatch(entitys); - } - } diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/task/VideoScheduledTask.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/task/VideoScheduledTask.java index 05e61aa..6b5daf0 100644 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/task/VideoScheduledTask.java +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/task/VideoScheduledTask.java @@ -2,7 +2,7 @@ package com.hnac.hzims.alarm.task; import com.hnac.hzims.alarm.entity.AlarmEntity; import com.hnac.hzims.alarm.handle.service.VideoAlarmService; -import com.hnac.hzims.alarm.show.service.AlarmService; +import com.hnac.hzims.alarm.monitor.service.AlarmSaveService; import com.xxl.job.core.biz.model.ReturnT; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -22,7 +22,7 @@ public class VideoScheduledTask { @Autowired private VideoAlarmService service; @Autowired - private AlarmService alarmService; + private AlarmSaveService alarmService; /** * 设备信息缓存 @@ -37,7 +37,7 @@ public class VideoScheduledTask { List alarmEntities = service.sendMessage(); //获取消息 // List alarmEntities = service.receiveMessage(param); - alarmService.dealAlarmEntities(alarmEntities); + alarmService.save(alarmEntities); return new ReturnT<>("SUCCESS"); } diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/condition/ConditionAlarmRegular.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/condition/ConditionAlarmRegular.java deleted file mode 100644 index 900bbc0..0000000 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/condition/ConditionAlarmRegular.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.hnac.hzims.alarm.ws.condition; - -import com.hnac.hzims.alarm.handle.service.ConditionAlarmService; -import com.hnac.hzims.alarm.ws.level.LevelAlarmWebSocket; -import lombok.extern.slf4j.Slf4j; -import org.springblade.core.tool.utils.ObjectUtil; -import org.springblade.core.tool.utils.StringUtil; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.scheduling.annotation.EnableScheduling; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; - -import java.net.URI; - -/** - * @author ysj - */ -@Slf4j -@Component -@EnableScheduling -public class ConditionAlarmRegular { - - @Autowired - private ConditionAlarmService conditionService; - - private LevelAlarmWebSocket socket; - - @Value("${hzims.condition.wss-url}") - private String condition_wss_url; - - // 两分钟进行一次检查链接是否存活,不存活了重新建立链接 - @Scheduled(cron = "0 0/2 * * * ?") - private void regular(){ - // 检查链接存活状态 - if(ObjectUtil.isEmpty(socket) || !socket.isOpen()){ - log.error("level websocket survival check : {}","死亡"); - this.createSocket(); - if(ObjectUtil.isNotEmpty(socket) && socket.isOpen()){ - String message = conditionService.message(); - if(!StringUtil.isEmpty(message)){ - socket.send(message); - } - } - log.error("conditionAlarm survival check : {}","重新建立链接"); - }else{ - log.error("conditionAlarm survival check : {}","存活"); - } - } - - // 创建websocket链接 - private void createSocket() { - try{ - socket = new LevelAlarmWebSocket(new URI(condition_wss_url)); - socket.connectBlocking(); - }catch (Exception e){ - log.error("conditionAlarm create error : {}",e.getMessage()); - } - } -} \ No newline at end of file diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/condition/ConditionAlarmWebSocket.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/condition/ConditionAlarmWebSocket.java deleted file mode 100644 index f3078ea..0000000 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/condition/ConditionAlarmWebSocket.java +++ /dev/null @@ -1,136 +0,0 @@ -package com.hnac.hzims.alarm.ws.condition; - -import com.hnac.hzims.alarm.entity.AlarmEntity; -import com.hnac.hzims.alarm.handle.service.ConditionAlarmService; -import com.hnac.hzims.alarm.show.service.AlarmService; -import lombok.extern.slf4j.Slf4j; -import org.java_websocket.client.WebSocketClient; -import org.java_websocket.handshake.ServerHandshake; -import org.springblade.core.log.exception.ServiceException; -import org.springblade.core.tool.utils.SpringUtil; -import org.springblade.core.tool.utils.StringUtil; - -import javax.net.ssl.SSLContext; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; -import java.net.Socket; -import java.net.URI; -import java.security.SecureRandom; -import java.security.cert.X509Certificate; -import java.util.List; -import java.util.Optional; - -/** - * @author ysj - */ -@Slf4j -public class ConditionAlarmWebSocket extends WebSocketClient { - - - private final ConditionAlarmService conditionService; - private AlarmService alarmService; - - /** - * 构造等级告警websocket - * @param uri - */ - public ConditionAlarmWebSocket(URI uri) { - super(uri); - conditionService = SpringUtil.getBean(ConditionAlarmService.class); - connection(this); - } - - // 链接到服务器回调接口 - @Override - public void onOpen(ServerHandshake handshakedata) { - log.error("conditionAlarm websocket open"); - } - - // 接收到服务器消息回调接口 - @Override - public void onMessage(String message) { - if(StringUtil.isEmpty(message)){ - log.error("conditionAlarm on message is null"); - }else{ - // 告警数据转化 - List alarmEntities = conditionService.receiveMessage(message); - // 等级告警数据处理 - try { - alarmService.dealAlarmEntities(alarmEntities); - }catch (Exception e){ - throw new ServiceException("集中监控告警数据处理报错(conditionAlarm):"+e); - } - } - } - - // 与服务器链接中断回调接口 - @Override - public void onClose(int code, String reason, boolean remote) { - log.error("conditionAlarm websocket close"); - } - - // 与服务器通讯异常触发 - @Override - public void onError(Exception e) { - log.error("conditionAlarm websocket error : {}",e.getMessage()); - } - - /** - * 建立链接 - * @param webSocket - */ - private void connection(ConditionAlarmWebSocket webSocket) { - SSLContext context = init(); - if(Optional.ofNullable(context).isPresent()){ - Socket socket = create(context); - if(Optional.ofNullable(socket).isPresent()){ - webSocket.setSocket(socket); - } - } - } - - /** - * 创建Socket - * @param context - * @return - */ - private Socket create(SSLContext context) { - Socket socket = null; - try{ - socket = context.getSocketFactory().createSocket(); - }catch (Exception e){ - log.error("conditionAlarm socket create error : {}",e.getMessage()); - } - return socket; - } - - /** - * 协议初始化 - * @return SSLContext - */ - private SSLContext init() { - SSLContext SSL = null; - try{ - SSL = SSLContext.getInstance("TLS"); - SSL.init(null, new TrustManager[]{new X509TrustManager() { - @Override - public void checkClientTrusted(X509Certificate[] chain, - String authType) { - } - - @Override - public void checkServerTrusted(X509Certificate[] chain, String authType) { - } - - @Override - public X509Certificate[] getAcceptedIssuers() { - return new X509Certificate[0]; - } - }}, new SecureRandom()); - }catch (Exception e){ - log.error("conditionAlarm SSL init error : {}",e.getMessage()); - } - return SSL; - } - -} \ No newline at end of file diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/fdp/FdpAlarmRegular.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/fdp/FdpAlarmRegular.java deleted file mode 100644 index 5631319..0000000 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/fdp/FdpAlarmRegular.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.hnac.hzims.alarm.ws.fdp; - -import com.hnac.hzims.alarm.handle.service.FdpAlarmService; -import lombok.extern.slf4j.Slf4j; -import org.springblade.core.tool.utils.ObjectUtil; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.scheduling.annotation.EnableScheduling; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; - -import java.net.URI; - -/** - * 等级告警获取数据长链接 - * @author ty - */ -@Slf4j -@Component -@EnableScheduling -public class FdpAlarmRegular { - - @Value("${hzims.fdp.alarm-url}") - private String fdp_alarm_url; - - private FdpAlarmWebSocket client; - - @Autowired - private FdpAlarmService fdpAlarmService; - - // 定时发送消息 - @Scheduled(cron = "0 0/30 * * * ?") - private void regular(){ - System.out.println("系统告警链接检查"); - // 检查链接存活状态 - if(ObjectUtil.isNotEmpty(client) && client.isOpen()){ - client.send(fdpAlarmService.sendMessage()); - System.out.println("FdpAlarm:链接成功"); - }else { - System.out.println("FdpAlarm:链接失败"); - this.createClient(); - System.out.println("FdpAlarm:重新链接"); - } - } - - // 创建websocket链接 - private void createClient() { - try{ - client = new FdpAlarmWebSocket(new URI(fdp_alarm_url)); - client.connectBlocking(); - System.out.println("FdpAlarm create success"); - }catch (Exception e){ - log.error("FdpAlarm create error : {}",e.getMessage()); - } - } -} \ No newline at end of file diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/fdp/FdpAlarmWebSocket.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/fdp/FdpAlarmWebSocket.java deleted file mode 100644 index f8513a0..0000000 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/fdp/FdpAlarmWebSocket.java +++ /dev/null @@ -1,138 +0,0 @@ -package com.hnac.hzims.alarm.ws.fdp; - -import com.hnac.hzims.alarm.entity.AlarmEntity; -import com.hnac.hzims.alarm.handle.service.FdpAlarmService; -import com.hnac.hzims.alarm.show.service.AlarmService; -import lombok.extern.slf4j.Slf4j; -import org.java_websocket.client.WebSocketClient; -import org.java_websocket.handshake.ServerHandshake; -import org.springblade.core.log.exception.ServiceException; -import org.springblade.core.tool.utils.SpringUtil; -import org.springblade.core.tool.utils.StringUtil; -import org.springframework.beans.factory.annotation.Autowired; - -import javax.net.ssl.SSLContext; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; -import java.net.Socket; -import java.net.URI; -import java.security.SecureRandom; -import java.security.cert.X509Certificate; -import java.util.List; -import java.util.Optional; - -/** - * 等级告警获取数据长链接 - * @author ty - */ -@Slf4j -public class FdpAlarmWebSocket extends WebSocketClient { - @Autowired - private FdpAlarmService fdpAlarmService; - private AlarmService alarmService; - - /** - * 构造等级告警websocket - * @param uri - */ - public FdpAlarmWebSocket(URI uri) { - super(uri); - fdpAlarmService = SpringUtil.getBean(FdpAlarmService.class); - connection(this); - } - - // 链接到服务器回调接口 - @Override - public void onOpen(ServerHandshake handshakedata) { - log.error("FdpAlarm websocket open"); - } - - // 接收到服务器消息回调接口 - @Override - public void onMessage(String message) { - if(StringUtil.isEmpty(message)){ - log.error("FdpAlarm on message is null"); - }else{ - // 告警数据转化 - List alarmEntities = fdpAlarmService.receiveMessage(message); - //统一数据处理 - try { - //websocket 消息推送保存 - alarmService.dealAlarmEntities(alarmEntities); - }catch (Exception e){ - throw new ServiceException("集中监控告警数据处理报错(FdpAlarm):"+e); - } - } - } - - // 与服务器链接中断回调接口 - @Override - public void onClose(int code, String reason, boolean remote) { - log.error("FdpAlarm websocket close"); - } - - // 与服务器通讯异常触发 - @Override - public void onError(Exception e) { - log.error("FdpAlarm websocket error : {}",e.getMessage()); - } - - /** - * 建立链接 - * @param webSocket - */ - private void connection(FdpAlarmWebSocket webSocket) { - SSLContext context = init(); - if(Optional.ofNullable(context).isPresent()){ - Socket socket = create(context); - if(Optional.ofNullable(socket).isPresent()){ - webSocket.setSocket(socket); - } - } - } - - /** - * 创建Socket - * @param context - * @return - */ - private Socket create(SSLContext context) { - Socket socket = null; - try{ - socket = context.getSocketFactory().createSocket(); - }catch (Exception e){ - log.error("FdpAlarm socket create error : {}",e.getMessage()); - } - return socket; - } - - /** - * 协议初始化 - * @return SSLContext - */ - private SSLContext init() { - SSLContext SSL = null; - try{ - SSL = SSLContext.getInstance("TLS"); - SSL.init(null, new TrustManager[]{new X509TrustManager() { - @Override - public void checkClientTrusted(X509Certificate[] chain, - String authType) { - } - - @Override - public void checkServerTrusted(X509Certificate[] chain, String authType) { - } - - @Override - public X509Certificate[] getAcceptedIssuers() { - return new X509Certificate[0]; - } - }}, new SecureRandom()); - }catch (Exception e){ - log.error("FdpAlarm SSL init error : {}",e.getMessage()); - } - return SSL; - } - -} \ No newline at end of file diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/hz3000/SystemAlarmRegular.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/hz3000/SystemAlarmRegular.java deleted file mode 100644 index 71712aa..0000000 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/hz3000/SystemAlarmRegular.java +++ /dev/null @@ -1,60 +0,0 @@ -package com.hnac.hzims.alarm.ws.hz3000; - -import com.hnac.hzims.alarm.handle.service.SystemAlarmService; -import lombok.extern.slf4j.Slf4j; -import org.springblade.core.tool.utils.ObjectUtil; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.scheduling.annotation.EnableScheduling; -import org.springframework.scheduling.annotation.Scheduled; -import org.springframework.stereotype.Component; - -import java.net.URI; - -/** - * 等级告警获取数据长链接 - * @author ty - */ -@Slf4j -@Component -@EnableScheduling -public class SystemAlarmRegular { - - @Value("${hzims.system.wss-url}") - private String system_wss_url; - - private SystemAlarmWebSocket client; - - @Autowired - private SystemAlarmService systemAlarmService; - - int count=0; - // 定时发送消息 - @Scheduled(cron = "0 0/30 * * * ?") - private void regular(){ - // 检查链接存活状态 - if(ObjectUtil.isNotEmpty(client) && client.isOpen()){ - client.send(systemAlarmService.sendMessage()); - System.out.println("systemAlarm:存活"); - count=0; - }else { - System.out.println("systemAlarm:链接失败"); - this.createClient(); - count++; - if (count>=3){ - - } - } - } - - // 创建websocket链接 - private void createClient() { - try{ - client = new SystemAlarmWebSocket(new URI(system_wss_url)); - client.connectBlocking(); - System.out.println("systemAlarm create success"); - }catch (Exception e){ - log.error("systemAlarm create error : {}",e.getMessage()); - } - } -} \ No newline at end of file diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/hz3000/SystemAlarmWebSocket.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/hz3000/SystemAlarmWebSocket.java deleted file mode 100644 index fa019c9..0000000 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/hz3000/SystemAlarmWebSocket.java +++ /dev/null @@ -1,142 +0,0 @@ -package com.hnac.hzims.alarm.ws.hz3000; - -import com.hnac.hzims.alarm.entity.AlarmEntity; -import com.hnac.hzims.alarm.handle.service.SystemAlarmService; -import com.hnac.hzims.alarm.show.service.AlarmService; -import lombok.extern.slf4j.Slf4j; -import org.java_websocket.client.WebSocketClient; -import org.java_websocket.handshake.ServerHandshake; -import org.springblade.core.log.exception.ServiceException; -import org.springblade.core.tool.utils.SpringUtil; -import org.springblade.core.tool.utils.StringUtil; - -import javax.net.ssl.SSLContext; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; -import java.net.Socket; -import java.net.URI; -import java.security.SecureRandom; -import java.security.cert.X509Certificate; -import java.util.List; -import java.util.Optional; - -/** - * 等级告警获取数据长链接 - * @author ty - */ -@Slf4j -public class SystemAlarmWebSocket extends WebSocketClient { - - private final SystemAlarmService systemAlarmService; - - private AlarmService alarmService; - - /** - * 构造等级告警websocket - * @param uri - */ - public SystemAlarmWebSocket(URI uri) { - super(uri); - systemAlarmService = SpringUtil.getBean(SystemAlarmService.class); - connection(this); - } - - // 链接到服务器回调接口 - @Override - public void onOpen(ServerHandshake handshakedata) { - log.error("SystemAlarmWebSocket链接到服务器回调接口"); - } - - // 接收到服务器消息回调接口 - @Override - public void onMessage(String message) { - if(StringUtil.isEmpty(message)){ - log.error("systemAlarm on message is null"); - }else{ - // 华自3000告警数据转化 - List alarmEntities = systemAlarmService.receiveMessage(message); - //统一数据处理 - try { - //websocket 消息推送保存 - alarmService.dealAlarmEntities(alarmEntities); - }catch (Exception e){ - throw new ServiceException("集中监控告警数据处理报错:"+e); - } - log.error("华自3000告警数据处理"); - } - } - - // 与服务器链接中断回调接口 - @Override - public void onClose(int code, String reason, boolean remote) { - log.error("SystemAlarmWebSocket与服务器链接中断回调接口 "); - } - - // 与服务器通讯异常触发 - @Override - public void onError(Exception e) { - log.error("systemAlarm websocket error : {}",e.getMessage()); - } - - /** - * 建立链接 - * @param webSocket - */ - private void connection(SystemAlarmWebSocket webSocket) { - SSLContext context = init(); - if(Optional.ofNullable(context).isPresent()){ - Socket socket = create(context); - if(Optional.ofNullable(socket).isPresent()){ - webSocket.setSocket(socket); - } - } - System.out.println("systemAlarm create success"); - } - - /** - * 创建Socket - * @param context - * @return - */ - private Socket create(SSLContext context) { - Socket socket = null; - try{ - socket = context.getSocketFactory().createSocket(); - log.error("SystemAlarmWebSocket链接创建成功"); - }catch (Exception e){ - log.error("systemAlarm socket create error : {}",e.getMessage()); - } - return socket; - } - - /** - * 协议初始化 - * @return SSLContext - */ - private SSLContext init() { - SSLContext SSL = null; - try{ - SSL = SSLContext.getInstance("TLS"); - SSL.init(null, new TrustManager[]{new X509TrustManager() { - @Override - public void checkClientTrusted(X509Certificate[] chain, - String authType) { - } - - @Override - public void checkServerTrusted(X509Certificate[] chain, String authType) { - } - - @Override - public X509Certificate[] getAcceptedIssuers() { - return new X509Certificate[0]; - } - }}, new SecureRandom()); - log.error("SystemAlarmWebSocket初始化成功"); - }catch (Exception e){ - log.error("systemAlarm SSL init error : {}",e.getMessage()); - } - return SSL; - } - -} \ No newline at end of file diff --git a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/level/LevelAlarmWebSocket.java b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/level/LevelAlarmWebSocket.java index b9691f3..601071c 100644 --- a/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/level/LevelAlarmWebSocket.java +++ b/hzims-service/hzims-alarm/src/main/java/com/hnac/hzims/alarm/ws/level/LevelAlarmWebSocket.java @@ -2,7 +2,7 @@ package com.hnac.hzims.alarm.ws.level; import com.hnac.hzims.alarm.entity.AlarmEntity; import com.hnac.hzims.alarm.handle.service.LevelAlarmService; -import com.hnac.hzims.alarm.show.service.AlarmService; +import com.hnac.hzims.alarm.monitor.service.AlarmSaveService; import lombok.extern.slf4j.Slf4j; import org.java_websocket.client.WebSocketClient; import org.java_websocket.handshake.ServerHandshake; @@ -29,7 +29,7 @@ public class LevelAlarmWebSocket extends WebSocketClient { private final LevelAlarmService levelService; - private AlarmService alarmService; + private AlarmSaveService alarmSaveService; /** * 构造等级告警websocket @@ -59,7 +59,7 @@ public class LevelAlarmWebSocket extends WebSocketClient { // 等级告警数据处理 try { //websocket 消息推送保存 - alarmService.dealAlarmEntities(alarmEntities); + alarmSaveService.save(alarmEntities); }catch (Exception e){ throw new ServiceException("集中监控告警数据处理报错(levelAlarm):"+e); } diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/access/dto/OperAccessPlanListDTO.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/access/dto/OperAccessPlanListDTO.java index 1a19f47..6b40770 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/access/dto/OperAccessPlanListDTO.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/access/dto/OperAccessPlanListDTO.java @@ -1,6 +1,7 @@ package com.hnac.hzims.operational.access.dto; import com.hnac.hzims.operational.access.entity.OperAccessPlanEntity; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; @@ -16,4 +17,10 @@ public class OperAccessPlanListDTO extends OperAccessPlanEntity { private static final long serialVersionUID = 1L; + @ApiModelProperty(value = "开始时间") + private String startDate; + + @ApiModelProperty(value = "结束时间") + private String endDate; + } diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/access/service/impl/OperAccessPlanServiceImpl.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/access/service/impl/OperAccessPlanServiceImpl.java index 84e1308..bfb6c10 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/access/service/impl/OperAccessPlanServiceImpl.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/access/service/impl/OperAccessPlanServiceImpl.java @@ -1,9 +1,7 @@ package com.hnac.hzims.operational.access.service.impl; -import cn.hutool.core.io.unit.DataUnit; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -20,17 +18,14 @@ import com.hnac.hzims.operational.access.vo.OperAccessContentVO; import com.hnac.hzims.operational.access.vo.OperAccessPlanVO; import com.hnac.hzims.operational.access.wrapper.OperAccessContentDetailWrapper; import com.hnac.hzims.operational.access.wrapper.OperAccessContentWrapper; -import com.hnac.hzims.operational.access.wrapper.OperAccessMaterialWrapper; import com.hnac.hzims.operational.access.wrapper.OperAccessPlanWrapper; import com.hnac.hzims.operational.defect.constants.RepairConstant; import com.hnac.hzims.operational.defect.constants.TreatMethodConstant; import com.hnac.hzims.operational.defect.entity.OperDefectEntity; import com.hnac.hzims.operational.defect.entity.OperPhenomenonEntity; -import com.hnac.hzims.operational.defect.mapper.OperDefectMapper; import com.hnac.hzims.operational.defect.mapper.OperPhenomenonMapper; import com.hnac.hzims.operational.defect.service.IOperDefectService; import com.hnac.hzims.operational.util.WordUtils; -import com.hnac.hzims.spare.entity.WtSpTotalEntity; import com.hnac.hzims.ticket.constants.TicketConstants; import com.hnac.hzims.ticket.workTicket.entity.WorkTicketInfoEntity; import com.hnac.hzims.ticket.workTicket.entity.WorkTicketTemplateEntity; @@ -39,7 +34,6 @@ import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.apache.commons.lang3.RandomUtils; -import org.jsoup.helper.DataUtil; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.support.Condition; @@ -60,13 +54,12 @@ import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; + import javax.servlet.http.HttpServletResponse; import java.text.DecimalFormat; import java.time.LocalDateTime; import java.time.ZoneOffset; import java.util.*; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; import java.util.stream.Collectors; /** @@ -445,6 +438,12 @@ public class OperAccessPlanServiceImpl extends BaseServiceImpl entry.getValue().stream().map(StationEntity::getRefDept).collect(Collectors.toList()).contains(real.getDeptId()) && real.getState()).count(); long sum = reals.stream().filter(real->entry.getValue().stream().map(StationEntity::getRefDept).collect(Collectors.toList()).contains(real.getDeptId())).count(); if(Math.abs(sum) > 0){ - scale.setDeviceUse(BigDecimal.valueOf(on / sum * 100).setScale(1, BigDecimal.ROUND_HALF_UP).doubleValue()); + scale.setDeviceUse(BigDecimal.valueOf(on / (double)sum * 100).setScale(1, RoundingMode.HALF_UP).doubleValue()); } } return scale; diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/main/service/impl/SideHustleServiceImpl.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/main/service/impl/SideHustleServiceImpl.java index 7cd4825..487c78c 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/main/service/impl/SideHustleServiceImpl.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/main/service/impl/SideHustleServiceImpl.java @@ -57,6 +57,7 @@ import org.springframework.stereotype.Service; import javax.validation.constraints.NotNull; import java.math.BigDecimal; +import java.math.RoundingMode; import java.sql.Time; import java.text.SimpleDateFormat; import java.time.LocalDate; @@ -1139,7 +1140,7 @@ public class SideHustleServiceImpl implements ISideHustleService { } // 机组开机总数 int onOffCount = map.entrySet().stream().filter(o->deptIds.contains(o.getKey())).mapToInt(vo-> vo.getValue().getStartingUpCount()).sum(); - return BigDecimal.valueOf(onOffCount / (double)unitSumCount * 100).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); + return BigDecimal.valueOf(onOffCount / (double)unitSumCount * 100).setScale(2, RoundingMode.HALF_UP).doubleValue(); } diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/maintenance/service/impl/OperMaintenanceMonitorServiceImpl.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/maintenance/service/impl/OperMaintenanceMonitorServiceImpl.java index de665d9..9c19abc 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/maintenance/service/impl/OperMaintenanceMonitorServiceImpl.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/maintenance/service/impl/OperMaintenanceMonitorServiceImpl.java @@ -53,8 +53,8 @@ public class OperMaintenanceMonitorServiceImpl implements IOperMaintenanceMonito }}); //获取列表班次ID集合 - List classIdList = planEntities.stream().filter(planEntity -> ObjectUtil.isNotEmpty(planEntity.getImsDutyClassId())) - .map(OperMaintenancePlanEntity::getImsDutyClassId).collect(Collectors.toList()); + List classIdList = planEntities.stream().map(OperMaintenancePlanEntity::getImsDutyClassId) + .filter(ObjectUtil::isNotEmpty).collect(Collectors.toList()); IImsDutyClassService imsDutyClassService = SpringUtil.getBean(IImsDutyClassService.class); Map> classMap = null; if (CollectionUtil.isNotEmpty(classIdList)) { diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/station/service/impl/StationServiceImpl.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/station/service/impl/StationServiceImpl.java index dad2d28..e73d35a 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/station/service/impl/StationServiceImpl.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/station/service/impl/StationServiceImpl.java @@ -95,11 +95,11 @@ public class StationServiceImpl extends BaseServiceImpl sort = Optional.ofNullable(this.getStationMaxOrder()); req.setSort(sort.isPresent() ? sort.get() + 1 : 1); + this.pushStation(req); boolean updateResult = this.saveOrUpdate(req); Assert.isTrue(updateResult, () -> { throw new ServiceException("创建/修改站点信息失败!"); }); - this.pushStation(req); } /** @@ -130,6 +130,7 @@ public class StationServiceImpl extends BaseServiceImpl pages = this.page(Condition.getPage(query), lqw); //数据转换