refactor(device): 重构设备交付服务并更新Nacos配置

- 在多个模块的bootstrap.yml中添加Nacos用户名密码配置
- 注释掉日志配置中的用户名密码参数避免安全风险
- 重构CsEquipmentDeliveryServiceImpl中的updateEquipmentDelivery方法
- 添加NDID变更处理逻辑,包括设备注册表更新和Redis缓存迁移
- 实现设备名称重复校验功能
- 添加工程项目的变更处理和台账树更新
- 移除CsEventPO中的rms和uchg字段及JsonFormat注解
- 将getYzd方法从CsEventPOServiceImpl迁移到PortableOfflLogServiceImpl
- 添加事件严重度和落点计算功能
- 更新补召查询逻辑,使用SortBy参数区分不同类型
- 添加CsLedgerService的queryByPid接口实现
This commit is contained in:
xy
2026-06-25 15:53:10 +08:00
parent a27315075c
commit dbdf9ba000
13 changed files with 332 additions and 145 deletions

View File

@@ -1,19 +1,25 @@
package com.njcn.csharmonic.offline.log.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Data
public class NewTaglogbuffer implements Serializable {
private NewHeadTaglogbuffer newHeadTaglogbuffer;
private List<NewBodyTaglogbuffer> newBodyTaglogbuffers;
private LocalDateTime start, end; //事件起始和结束时间
private String path = ""; //事件对应波形文件名称
//事件起始事件
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS")
private LocalDateTime start;
//事件结束时间
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSS")
private LocalDateTime end;
//事件对应波形文件名称
private String path = "";
public NewTaglogbuffer(NewHeadTaglogbuffer head, ArrayList<NewBodyTaglogbuffer> body) {
newHeadTaglogbuffer = head;

View File

@@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.njcn.db.bo.BaseEntity;
import lombok.Data;
import lombok.NoArgsConstructor;
@@ -44,7 +43,7 @@ public class CsEventPO extends BaseEntity {
/**
* 事件时间
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
//@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@TableField(value = "start_time")
private LocalDateTime startTime;
@@ -154,18 +153,6 @@ public class CsEventPO extends BaseEntity {
@TableField(value = "sag_source")
private String sagSource;
/**
* 瞬态-有效值
*/
@TableField(value = "rms")
private Double rms;
/**
* 瞬态-电压变化
*/
@TableField(value = "uchg")
private Double uchg;
/**
* 暂降严重度
*/

View File

@@ -768,29 +768,6 @@ public class CsEventPOServiceImpl extends ServiceImpl<CsEventPOMapper, CsEventPO
return vo;
}
/**
* 获取该事件的严重度
*
* @param persisttime 持续时间 ms单位
* @param eventvaule 暂降、暂升幅值
*/
public static String getYzd(Float persisttime, Float eventvaule) {
float yzd;
DecimalFormat df = new DecimalFormat("0.000");// 格式化小数
if (persisttime <= 20) {
yzd = 1 - eventvaule;
} else if (persisttime > 20 && persisttime <= 200) {
yzd = 2 * (1 - eventvaule);
} else if (persisttime > 200 && persisttime <= 500) {
yzd = 3.3f * (1 - eventvaule);
} else if (persisttime > 500 && persisttime <= 10000) {
yzd = 5 * (1 - eventvaule);
} else {
yzd = 10 * (1 - eventvaule);
}
return df.format(yzd);
}
public String getTag(Integer type) {
String tag;
switch (type) {

View File

@@ -5,20 +5,15 @@ import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.nacos.shaded.com.google.gson.Gson;
import com.github.tocrhz.mqtt.publisher.MqttPublisher;
import com.njcn.access.api.CsTopicFeignClient;
import com.njcn.access.enums.AccessEnum;
import com.njcn.access.enums.TypeEnum;
import com.njcn.access.pojo.RspDataDto;
import com.njcn.access.pojo.dto.ReqAndResDto;
import com.njcn.access.pojo.dto.file.FileDto;
import com.njcn.access.utils.ChannelObjectUtil;
import com.njcn.access.utils.MqttUtil;
import com.njcn.common.config.GeneralInfo;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.csdevice.api.CsLineFeignClient;
import com.njcn.csdevice.api.DeviceFtpFeignClient;
import com.njcn.csdevice.api.EquipmentFeignClient;
import com.njcn.csdevice.api.PortableOffLogFeignClient;
import com.njcn.csdevice.pojo.po.CsEquipmentDeliveryPO;
import com.njcn.csdevice.pojo.po.CsLinePO;
import com.njcn.csdevice.pojo.vo.CsEquipmentDeliveryVO;
@@ -75,15 +70,9 @@ import static com.njcn.access.enums.TypeEnum.DATA_48;
public class OfflineDataUploadServiceImpl implements OfflineDataUploadService {
private final MqttPublisher publisher;
private final CsTopicFeignClient csTopicFeignClient;
private final RedisUtil redisUtil;
private final ChannelObjectUtil channelObjectUtil;
private final MqttUtil mqttUtil;
private static Integer mid = 1;
private final DeviceFtpFeignClient deviceFtpFeignClient;
private final FileStorageUtil fileStorageUtil;
private final GeneralInfo generalInfo;
private final PortableOffLogFeignClient portableOffLogFeignClient;
private final EquipmentFeignClient equipmentFeignClient;
private final CsLineFeignClient csLineFeignClient;

View File

@@ -21,9 +21,13 @@ spring:
discovery:
ip: @service.server.url@
server-addr: @nacos.url@
username: @nacos.username@
password: @nacos.password@
namespace: @nacos.namespace@
config:
server-addr: @nacos.url@
username: @nacos.username@
password: @nacos.password@
namespace: @nacos.namespace@
file-extension: yaml
shared-configs:
@@ -41,6 +45,7 @@ spring:
#项目日志的配置
logging:
# config: http://@nacos.url@/nacos/v1/cs/configs?tenant=@nacos.namespace@&username=@nacos.username@&password=@nacos.password@&group=DEFAULT_GROUP&dataId=logback.xml
config: http://@nacos.url@/nacos/v1/cs/configs?tenant=@nacos.namespace@&group=DEFAULT_GROUP&dataId=logback.xml
level:
root: warn