13 Commits

Author SHA1 Message Date
e9ac024f73 1.趋势图查询添加多线程处理
2.变压器策略调整
2025-11-11 14:33:16 +08:00
xy
b7e3bb9796 驾驶舱功能调整 2025-11-11 11:39:59 +08:00
4bebf28b76 抽取公共代码提供给物联项目使用 2025-11-06 16:10:00 +08:00
xy
5e93eb3691 驾驶舱功能调整 2025-10-24 16:14:54 +08:00
xy
b63fab9085 云前置改造-暂态数据补召功能新增topic 2025-10-15 20:50:47 +08:00
hzj
aba66aaf4a Merge branch 'main' of http://192.168.1.22:3000/Microservice/pqs 2025-10-15 11:46:05 +08:00
hzj
1c7c514691 报表bug修改 2025-10-15 11:42:56 +08:00
04fe9bdbbd Merge pull request 'liaoning' (#1) from liaoning into main
Reviewed-on: #1
2025-10-15 10:39:21 +08:00
hzj
b41347c596 Merge remote-tracking branch 'origin/main' into liaoning 2025-10-15 10:38:02 +08:00
hzj
4f75deac43 报表bug修改 2025-10-15 10:33:51 +08:00
2c68646fc9 本地文件bug修改 2025-10-14 20:35:36 +08:00
02599eeb81 bug修改 2025-10-14 18:06:22 +08:00
xy
0cec471ce2 云前置改造-新增mq信息 2025-10-14 11:40:44 +08:00
189 changed files with 2257 additions and 1379 deletions

View File

@@ -41,9 +41,9 @@
<properties>
<!--中间件目标地址-->
<!-- <middle.server.url>10.95.53.49</middle.server.url>-->
<middle.server.url>192.168.1.22</middle.server.url>
<middle.server.url>192.168.1.103</middle.server.url>
<!--微服务模块发布地址-->
<service.server.url>192.168.1.127</service.server.url>
<service.server.url>127.0.0.1</service.server.url>
<!--docker仓库地址-->
<docker.server.url>192.168.1.22</docker.server.url>
<!--nacos的ip:port-->
@@ -55,7 +55,7 @@
<!--服务器发布内容为空-->
<!-- <nacos.namespace></nacos.namespace>-->
<!-- <nacos.namespace>30c701c4-2a94-49d9-82e1-76aa9456573f</nacos.namespace>-->
<nacos.namespace>78588706-e06f-4580-b612-b26d72493fcb</nacos.namespace>
<nacos.namespace>6fd2d036-f390-46ee-9c9d-d5a5c00e3314</nacos.namespace>
<!-- <nacos.namespace>910d0d69-2254-481b-b9f7-7ecf9cb881b0</nacos.namespace>-->
<!-- sentinel:port-->
<sentinel.url>${middle.server.url}:8080</sentinel.url>

View File

@@ -47,6 +47,36 @@ public interface BusinessTopic {
*/
String DEVICE_RUN_FLAG_TOPIC = "Device_Run_Flag_Topic";
/**
* 云前置日志主题
*/
String LOG_TOPIC = "log_Topic";
/**
* 台账更新下发
*/
String CONTROL_TOPIC = "control_Topic";
/**
* 台账更新前置端响应
*/
String REPLY_TOPIC = "Reply_Topic";
/**
* 前置进程控制
*/
String PROCESS_TOPIC = "process_Topic";
/**
* 补召下发命令
*/
String ASK_RECALL_TOPIC = "ask_recall_Topic";
/**
* 补召应答命令
*/
String REPLY_RECALL_TOPIC = "reply_recall_Topic";
/********************************数据中心*********************************/
String RMP_EVENT_DETAIL_TOPIC = "rmpEventDetailTopic";

View File

@@ -28,14 +28,14 @@ public class AppFileMessage extends BaseMessage {
private Integer code;
private AppFileMessage.Msg msg;
private Msg msg;
@Data
public static class Msg{
private String type;
private AppFileMessage.FileInfo fileInfo;
private FileInfo fileInfo;
private String data;

View File

@@ -0,0 +1,59 @@
package com.njcn.mq.message;
import com.njcn.middle.rocket.domain.BaseMessage;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* @author xy
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class BZEventMessage extends BaseMessage {
//补召事件
@Data
public static class Event{
@ApiModelProperty("请求的guid")
private String guid;
@ApiModelProperty("终端id")
private String terminalId;
@ApiModelProperty("监测点id")
private List<String> monitorIdList;
@ApiModelProperty("数据类型 0 稳态 1 暂态事件 2 暂态波形")
private Integer dataType;
@ApiModelProperty("时间范围")
private List<String> timeInterval;
}
//补召波形
@Data
public static class File{
@ApiModelProperty("请求的guid")
private String guid;
@ApiModelProperty("终端id")
private String terminalId;
@ApiModelProperty("监测点id")
private String monitorId;
@ApiModelProperty("数据类型 0 稳态 1 暂态事件 2 暂态波形")
private Integer dataType;
@ApiModelProperty("缺失波形时标集合")
private List<String> timeList;
}
}

View File

@@ -0,0 +1,53 @@
package com.njcn.mq.message;
import com.njcn.middle.rocket.domain.BaseMessage;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
/**
* 类的介绍:
*
* @author xuyang
* @version 1.0.0
* @createTime 2025/9/29 15:06
*/
@EqualsAndHashCode(callSuper = true)
@Data
@AllArgsConstructor
@NoArgsConstructor
public class BzMessage extends BaseMessage {
@ApiModelProperty("唯一标识")
private String guid;
@ApiModelProperty("补召类型")
private String dataType;
@ApiModelProperty("响应码")
private Integer code;
@ApiModelProperty("结果")
private String result;
@ApiModelProperty("设备id")
private String terminalId;
@ApiModelProperty("监测点id")
private String monitorId;
@ApiModelProperty("补召起始时间")
private String recallStartDate;
@ApiModelProperty("补召结束时间")
private String recallEndDate;
@ApiModelProperty("前置服务器id")
private String nodeId;
@ApiModelProperty("前置进程")
private String processNo;
}

View File

@@ -0,0 +1,38 @@
package com.njcn.mq.message;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 类的介绍:日志信息
*
* @author xuyang
* @version 1.0.0
* @createTime 2025/9/18 15:06
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CldControlMessage {
@ApiModelProperty("请求的guid")
private String guid;
@ApiModelProperty("功能代号")
private String code;
@ApiModelProperty("前置服务器id")
private String nodeId;
@ApiModelProperty("指定处理的进程号")
private Integer processNo;
@ApiModelProperty("delete用于杀死进程")
private String fun;
@ApiModelProperty("进程数")
private Integer processNum;
}

View File

@@ -0,0 +1,47 @@
package com.njcn.mq.message;
import com.njcn.middle.rocket.domain.BaseMessage;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
/**
* 类的介绍:日志信息
*
* @author xuyang
* @version 1.0.0
* @createTime 2025/9/18 15:06
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AllArgsConstructor
@NoArgsConstructor
public class CldLogMessage extends BaseMessage {
@ApiModelProperty("前置id")
private String nodeId;
@ApiModelProperty("进程id")
private String processNo;
@ApiModelProperty("监测点id、装置id")
private String businessId;
@ApiModelProperty("级别(process进程、terminal装置、measurepoint监测点)")
private String level;
@ApiModelProperty("日志等级")
private String grade;
@ApiModelProperty("告警码")
private String code;
@ApiModelProperty("告警时间")
private String time;
@ApiModelProperty("日志信息")
private String log;
}

View File

@@ -0,0 +1,93 @@
package com.njcn.mq.message;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* cld设备更新台账实体
* @author xy
*/
@Data
public class CldUpdateLedgerMessage implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("消息唯一标识")
private String guid;
@ApiModelProperty("add_terminal/delete_terminal/ledger_modify")
private String code;
@ApiModelProperty("进程号")
private Integer processNo;
@ApiModelProperty("数据")
private List<CldDeviceDto> data;
@Data
public static class CldDeviceDto implements Serializable {
@ApiModelProperty("最大进程数")
private Integer maxProcessNum;
@ApiModelProperty("进程号")
private Integer node;
@ApiModelProperty("设备id")
private String id;
@ApiModelProperty("设备MAC")
private String ip;
@ApiModelProperty("设备型号")
private String devType;
@ApiModelProperty("设备名称")
private String name;
@ApiModelProperty("监测点信息集合")
private List<CldMonitorDto> monitorData;
}
@Data
public static class CldMonitorDto implements Serializable {
@ApiModelProperty("监测点id")
private String id;
@ApiModelProperty("监测点名称")
private String name;
@ApiModelProperty("监测点线路号")
private String lineNo;
@ApiModelProperty("电压等级")
private String voltageLevel;
@ApiModelProperty("status")
private Integer status;
@ApiModelProperty("接线方式")
private String ptType;
@ApiModelProperty("设备id")
private String deviceId;
@ApiModelProperty("pt一次变比")
private Double pt1;
@ApiModelProperty("pt二次变比")
private Double pt2;
@ApiModelProperty("ct一次变比")
private Double ct1;
@ApiModelProperty("ct二次变比")
private Double ct2;
}
}

View File

@@ -1,14 +1,10 @@
package com.njcn.mq.message;
import com.njcn.middle.rocket.domain.BaseMessage;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* 类的介绍:
*
@@ -39,4 +35,7 @@ public class RealDataMessage {
@ApiModelProperty("限制")
private Integer count;
@ApiModelProperty("idx")
private Integer idx;
}

View File

@@ -0,0 +1,45 @@
package com.njcn.mq.message;
import com.njcn.middle.rocket.domain.BaseMessage;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
/**
* 类的介绍:
*
* @author xuyang
* @version 1.0.0
* @createTime 2025/9/29 15:06
*/
@EqualsAndHashCode(callSuper = true)
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UpdateLedgerMessage extends BaseMessage {
@ApiModelProperty("唯一标识")
private String guid;
@ApiModelProperty("数据")
private List<HandleData> data;
@Data
public static class HandleData implements Serializable {
@ApiModelProperty("设备id")
private String deviceId;
@ApiModelProperty("响应码")
private Integer code;
@ApiModelProperty("结果描述")
private String result;
}
}

View File

@@ -0,0 +1,31 @@
package com.njcn.mq.template;
import com.alibaba.nacos.shaded.com.google.gson.Gson;
import com.njcn.middle.rocket.domain.BaseMessage;
import com.njcn.middle.rocket.template.RocketMQEnhanceTemplate;
import com.njcn.mq.constant.BusinessResource;
import com.njcn.mq.constant.BusinessTopic;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.stereotype.Component;
/**
* 类的介绍:补召事件
*
* @author xuyang
* @version 1.0.0
*/
@Component
public class BZEventMessageTemplate extends RocketMQEnhanceTemplate {
public BZEventMessageTemplate(RocketMQTemplate template) {
super(template);
}
public SendResult sendMember(Object message, String tag) {
BaseMessage baseMessage = new BaseMessage();
baseMessage.setSource(BusinessResource.WEB_RESOURCE);
baseMessage.setMessageBody(new Gson().toJson(message));
return send(BusinessTopic.ASK_RECALL_TOPIC,tag,baseMessage);
}
}

View File

@@ -0,0 +1,33 @@
package com.njcn.mq.template;
import com.alibaba.nacos.shaded.com.google.gson.Gson;
import com.njcn.middle.rocket.domain.BaseMessage;
import com.njcn.middle.rocket.template.RocketMQEnhanceTemplate;
import com.njcn.mq.constant.BusinessResource;
import com.njcn.mq.constant.BusinessTopic;
import com.njcn.mq.message.CldControlMessage;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.stereotype.Component;
/**
* 类的介绍:实时数据模板
*
* @author xuyang
* @version 1.0.0
* @createTime 2023/8/11 15:28
*/
@Component
public class CldControlMessageTemplate extends RocketMQEnhanceTemplate {
public CldControlMessageTemplate(RocketMQTemplate template) {
super(template);
}
public SendResult sendMember(CldControlMessage message, String tag) {
BaseMessage baseMessage = new BaseMessage();
baseMessage.setSource(BusinessResource.WEB_RESOURCE);
baseMessage.setMessageBody(new Gson().toJson(message));
return send(BusinessTopic.PROCESS_TOPIC,tag,baseMessage);
}
}

View File

@@ -0,0 +1,33 @@
package com.njcn.mq.template;
import com.alibaba.nacos.shaded.com.google.gson.Gson;
import com.njcn.middle.rocket.domain.BaseMessage;
import com.njcn.middle.rocket.template.RocketMQEnhanceTemplate;
import com.njcn.mq.constant.BusinessResource;
import com.njcn.mq.constant.BusinessTopic;
import com.njcn.mq.message.CldUpdateLedgerMessage;
import org.apache.rocketmq.client.producer.SendResult;
import org.apache.rocketmq.spring.core.RocketMQTemplate;
import org.springframework.stereotype.Component;
/**
* 类的介绍:实时数据模板
*
* @author xuyang
* @version 1.0.0
* @createTime 2023/8/11 15:28
*/
@Component
public class CldUpdateLedgerMessageTemplate extends RocketMQEnhanceTemplate {
public CldUpdateLedgerMessageTemplate(RocketMQTemplate template) {
super(template);
}
public SendResult sendMember(CldUpdateLedgerMessage cldUpdateLedgerMessage, String tag) {
BaseMessage baseMessage = new BaseMessage();
baseMessage.setSource(BusinessResource.WEB_RESOURCE);
baseMessage.setMessageBody(new Gson().toJson(cldUpdateLedgerMessage));
return send(BusinessTopic.CONTROL_TOPIC,tag,baseMessage);
}
}

View File

@@ -2,6 +2,7 @@ package com.njcn.oss.utils;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.lang.UUID;
import cn.hutool.core.util.IdUtil;
import com.njcn.common.config.GeneralInfo;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.huawei.obs.util.OBSUtil;
@@ -88,16 +89,23 @@ public class FileStorageUtil {
}
}else {
try {
// 确保目录存在
Path uploadPath = Paths.get(generalInfo.getLocalStorePath());
// 构建完整目录:基准目录 + dir子目录
Path basePath = Paths.get(generalInfo.getLocalStorePath());
Path uploadPath = basePath.resolve(dir); // 将dir作为子目录添加
// 确保完整目录存在包括dir子目录
if (!Files.exists(uploadPath)) {
Files.createDirectories(uploadPath);
}
// 生成本地文件名(可以添加时间戳或UUID防止重名
// 生成本地文件名(处理扩展名,防止异常
String originalFilename = multipartFile.getOriginalFilename();
String fileExtension = originalFilename.substring(originalFilename.lastIndexOf("."));
String newFilename = UUID.randomUUID().toString() + fileExtension;
String fileExtension = "";
int extIndex = originalFilename.lastIndexOf(".");
if (extIndex > 0 && extIndex < originalFilename.length() - 1) {
fileExtension = originalFilename.substring(extIndex);
}
String newFilename = IdUtil.simpleUUID().toUpperCase() + fileExtension;
// 构建完整路径
Path filePathPath = uploadPath.resolve(newFilename);
@@ -105,7 +113,7 @@ public class FileStorageUtil {
// 保存文件
multipartFile.transferTo(filePathPath.toFile());
// 返回相对路径或完整路径,根据需求调整
// 返回相对路径或完整路径
filePath = dir + File.separator + newFilename;
} catch (IOException e) {
throw new BusinessException("本地文件上传失败: " + e.getMessage());

View File

@@ -45,7 +45,7 @@ public enum RedisKeyEnum {
/**
* 云前置心跳
*/
CLD_HEART_BEAT_KEY("CLD_HEART_BEAT:", 120L);
CLD_HEART_BEAT_KEY("CLD_HEART_BEAT:", 180L);
private final String key;

View File

@@ -32,6 +32,7 @@ public enum DeviceResponseEnum {
DEVICE_SAME_NAME("A0290","设备名称已存在"),
DEVICE_REPETITION("A0291","设备名称重复"),
MODEL_NAME_REPEAT("A00350","名称不可重复"),
DEVICE_IP_REPETITION("A0292","设备ip端口号重复"),
DEVICE_SAME_IP("A0293","当前设备ip端口号已存在"),
DEVICE_EMPTY("A0294","设备为空"),

View File

@@ -14,6 +14,7 @@
<modules>
<module>pq-device-api</module>
<module>pq-device-boot</module>
<module>pq-device-com</module>
</modules>
<properties>

View File

@@ -20,10 +20,9 @@
<dependencies>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>pq-device-api</artifactId>
<version>${project.version}</version>
<artifactId>pq-device-com</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>system-api</artifactId>
@@ -39,26 +38,10 @@
<artifactId>common-web</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>common-oss</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.njcn.platform</groupId>
<artifactId>message-api</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>supervision-api</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.njcn.platform</groupId>

View File

@@ -8,7 +8,7 @@ import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.biz.pojo.dto.LineDTO;
import com.njcn.device.biz.pojo.dto.LineALLInfoDTO;
import com.njcn.device.biz.pojo.dto.PollutionLineInfoDTO;
import com.njcn.device.pq.service.LineService;
import com.njcn.device.line.service.LineService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

View File

@@ -11,14 +11,12 @@ import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.biz.pojo.dto.*;
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
import com.njcn.device.biz.pojo.param.SubstationParam;
import com.njcn.device.biz.pojo.po.Overlimit;
import com.njcn.device.biz.pojo.po.PqsDeviceUnit;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.line.service.LineService;
import com.njcn.device.line.mapper.LineDetailMapper;
import com.njcn.device.pq.service.CommTerminalService;
import com.njcn.device.pq.service.IOverLimitService;
import com.njcn.device.pq.service.IPqsDeviceUnitService;
import com.njcn.device.pq.service.LineService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -57,9 +55,6 @@ public class CommTerminalController extends BaseController {
private final IPqsDeviceUnitService iPqsDeviceUnitService;
private final IOverLimitService iOverLimitService;
/**
* 通过部门获取所有子集部门所拥有的监测点基本信息
@@ -241,34 +236,6 @@ public class CommTerminalController extends BaseController {
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getOverLimitData")
@ApiOperation("根据监测点id获取越限数值")
@ApiImplicitParam(name = "id", value = "监测点id", required = true)
public HttpResult<Overlimit> getOverLimitData(@RequestParam("id") String id) {
String methodDescribe = getMethodDescribe("getOverLimitData");
Overlimit result = lineService.getOverLimitData(id);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getAllLineOverLimit")
@ApiOperation("获取投运在线的监测点的限值")
public HttpResult<List<Overlimit>> getAllLineOverLimit() {
String methodDescribe = getMethodDescribe("getAllLineOverLimit");
List<Overlimit> result = lineService.getAllLineOverLimit("harmonic-boot", null);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getOverLimitDataByIds")
@ApiOperation("根据监测点id集合获取越限数值")
@ApiImplicitParam(name = "ids", value = "监测点id集合", required = true)
public HttpResult<List<Overlimit>> getOverLimitDataByIds(@RequestBody List<String> ids) {
String methodDescribe = getMethodDescribe("getOverLimitDataByIds");
List<Overlimit> result = iOverLimitService.listByIds(ids);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@PostMapping("/getLineBySubstationRelation")
@ApiOperation("获取变电站和监测点的关系")

View File

@@ -7,10 +7,10 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.common.utils.LogUtil;
import com.njcn.device.pq.mapper.DeptLineMapper;
import com.njcn.device.line.mapper.DeptLineMapper;
import com.njcn.device.line.service.DeptLineService;
import com.njcn.device.pq.pojo.po.DeptLine;
import com.njcn.device.pq.pojo.vo.LineDeviceStateVO;
import com.njcn.device.pq.service.DeptLineService;
import com.njcn.web.controller.BaseController;
import com.njcn.web.pojo.param.DeptLineParam;
import io.swagger.annotations.Api;

View File

@@ -6,6 +6,8 @@ import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.common.service.TerminalBaseService;
import com.njcn.device.pq.mapper.RStatOnlinerateDMapper;
import com.njcn.device.pq.pojo.bo.BaseLineInfo;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
@@ -13,8 +15,6 @@ import com.njcn.device.pq.pojo.param.DeviceInfoParam;
import com.njcn.device.pq.pojo.param.OnlineRateParam;
import com.njcn.device.pq.pojo.po.TopMsgPO;
import com.njcn.device.pq.pojo.vo.*;
import com.njcn.device.pq.service.TerminalBaseService;
import com.njcn.device.pq.service.impl.GeneralDeviceService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;

View File

@@ -7,20 +7,18 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.common.utils.LogUtil;
import com.njcn.device.line.service.LineService;
import com.njcn.device.pq.pojo.param.DeviceInfoParam;
import com.njcn.device.pq.pojo.param.PqsParam;
import com.njcn.device.pq.pojo.po.TopMsgPO;
import com.njcn.device.pq.pojo.vo.*;
import com.njcn.device.pq.service.LineService;
import com.njcn.web.controller.BaseController;
import com.njcn.web.utils.RequestUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Param;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;

View File

@@ -1,69 +0,0 @@
package com.njcn.device.pq.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.biz.pojo.po.Overlimit;
import com.njcn.device.pq.pojo.param.AlarmStrategyParam;
import com.njcn.device.pq.pojo.vo.AlarmStrategyVO;
import com.njcn.device.pq.service.AlarmStrategyService;
import com.njcn.device.pq.service.IOverLimitService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
/**
* 监测点限值
* @author cdf
* @date 2023/6/7
*/
@Slf4j
@RestController
@RequestMapping("/overLimit")
@Api(tags = "监测点限值")
@RequiredArgsConstructor
public class OverLimitController extends BaseController {
private final IOverLimitService iOverLimitService;
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getOverLimitByLineIds")
@ApiOperation("监测点集合获取限值")
@ApiImplicitParam(name = "lineIds", value = "监测点ids", required = true)
@ApiIgnore
public HttpResult<List<Overlimit>> getOverLimitByLineIds(@RequestBody List<String> lineIds){
String methodDescribe = getMethodDescribe("getOverLimitByLineIds");
List<Overlimit> overLimitList= iOverLimitService.list(new LambdaQueryWrapper<Overlimit>().in(Overlimit::getId,lineIds));
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, overLimitList, methodDescribe);
}
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/getLimitMapsByLineIds")
@ApiOperation("监测点集合获取限值")
@ApiImplicitParam(name = "lineIds", value = "监测点ids", required = true)
@ApiIgnore
public HttpResult<List<Map<String, Object>>> getLimitMapsByLineIds(@RequestBody List<String> lineIds){
String methodDescribe = getMethodDescribe("getLimitMapsByLineIds");
List<Map<String, Object>> overLimitList= iOverLimitService.listMaps(new LambdaQueryWrapper<Overlimit>().in(Overlimit::getId,lineIds));
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, overLimitList, methodDescribe);
}
}

View File

@@ -12,6 +12,9 @@ import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.common.utils.LogUtil;
import com.njcn.device.biz.enums.DeviceResponseEnum;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.common.service.TerminalBaseService;
import com.njcn.device.line.service.LineService;
import com.njcn.device.pq.pojo.bo.DeviceType;
import com.njcn.device.pq.pojo.bo.excel.TerminalBaseExcel;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
@@ -20,10 +23,6 @@ import com.njcn.device.pq.pojo.dto.PushResultDTO;
import com.njcn.device.pq.pojo.param.*;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.pq.pojo.vo.*;
import com.njcn.device.pq.service.LineService;
import com.njcn.device.pq.service.TerminalBaseService;
import com.njcn.device.pq.service.impl.GeneralDeviceService;
import com.njcn.message.constant.DeviceRebootType;
import com.njcn.poi.util.PoiUtil;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.*;

View File

@@ -4,21 +4,13 @@ import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.njcn.dataProcess.api.PqsCommunicateFeignClient;
import com.njcn.dataProcess.pojo.dto.PqsCommunicateDto;
import com.njcn.device.pq.constant.Param;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.NodeMapper;
import com.njcn.device.pq.mapper.PqsTerminalLogsMapper;
import com.njcn.device.pq.pojo.dto.DeviceInfo;
import com.njcn.device.pq.pojo.dto.NodeProcessDeviceTree;
import com.njcn.device.device.service.DeviceProcessService;
import com.njcn.device.device.service.IDeviceService;
import com.njcn.device.node.mapper.NodeMapper;
import com.njcn.device.pq.pojo.po.Device;
import com.njcn.device.pq.pojo.po.DeviceProcess;
import com.njcn.device.pq.pojo.po.Node;
import com.njcn.device.pq.pojo.po.PqsTerminalLogs;
import com.njcn.device.pq.service.DeviceProcessService;
import com.njcn.device.pq.service.IDeviceService;
import com.njcn.message.constant.DeviceRebootType;
import com.njcn.redis.utils.RedisUtil;
import com.njcn.system.api.DicDataFeignClient;
import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.springframework.scheduling.annotation.EnableScheduling;
@@ -26,12 +18,9 @@ import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**

View File

@@ -1,29 +0,0 @@
package com.njcn.device.pq.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.device.pq.pojo.po.Device;
import com.njcn.device.pq.pojo.po.DeviceProcess;
import com.njcn.device.pq.pojo.vo.DevDetail;
import com.njcn.device.pq.pojo.vo.LineInfluxDbOnlineVO;
import com.njcn.device.pq.pojo.vo.RunManageVO;
import com.njcn.device.pq.pojo.vo.RunTimeVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
*
* @author cdf
* @since 2022-01-04
*/
public interface DeviceProcessMapper extends BaseMapper<DeviceProcess> {
}

View File

@@ -1,17 +0,0 @@
package com.njcn.device.pq.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.device.biz.pojo.po.Overlimit;
/**
* <p>
* Mapper 接口
* </p>
*
* @author cdf
* @since 2022-01-04
*/
public interface OverlimitMapper extends BaseMapper<Overlimit> {
}

View File

@@ -1,5 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.OverlimitMapper">
</mapper>

View File

@@ -1,20 +0,0 @@
package com.njcn.device.pq.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.device.biz.pojo.po.Overlimit;
import com.njcn.device.pq.pojo.po.RStatIntegrityD;
/**
* <p>
* 越限表实体
* </p>
*
* @author hongawen
* @since 2023-03-28
*/
public interface IOverLimitService extends IService<Overlimit> {
}

View File

@@ -10,11 +10,11 @@ import com.njcn.common.utils.EnumUtils;
import com.njcn.device.biz.pojo.dto.*;
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
import com.njcn.device.biz.pojo.param.SubstationParam;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.line.service.DeptLineService;
import com.njcn.device.pq.enums.RunFlagEnum;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.pojo.param.dataClean.MonitorBaseParam;
import com.njcn.device.pq.service.CommTerminalService;
import com.njcn.device.pq.service.DeptLineService;
import com.njcn.redis.utils.RedisUtil;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO;

View File

@@ -3,8 +3,7 @@ package com.njcn.device.pq.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.*;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.njcn.device.pq.mapper.OnlineRateMapper;
import com.njcn.device.pq.mapper.RStatIntegrityDMapper;
import com.njcn.device.line.service.LineService;
import com.njcn.device.pq.mapper.RStatOnlinerateDMapper;
import com.njcn.device.pq.pojo.param.OnlineRateParam;
import com.njcn.device.pq.pojo.param.PulicTimeParam;
@@ -12,23 +11,17 @@ import com.njcn.device.pq.pojo.param.PulicTimeStatisParam;
import com.njcn.device.pq.pojo.po.RStatOnlinerateD;
import com.njcn.device.pq.pojo.vo.*;
import com.njcn.device.pq.service.CommunicateService;
import com.njcn.device.pq.service.LineService;
import com.njcn.device.pq.utils.PublicDateUtil;
import com.njcn.device.rstatintegrity.mapper.RStatIntegrityDMapper;
import com.njcn.web.enums.DateFlagEnum;
import lombok.AllArgsConstructor;
import lombok.SneakyThrows;
import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.DecimalFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**

View File

@@ -4,13 +4,9 @@ package com.njcn.device.pq.service.impl;
import cn.hutool.core.codec.Base64;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.*;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.C;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.dataProcess.api.DataLimitRateDetailFeignClient;
@@ -21,31 +17,23 @@ import com.njcn.dataProcess.enums.DataCleanEnum;
import com.njcn.dataProcess.param.DataCleanParam;
import com.njcn.dataProcess.param.LineCountEvaluateParam;
import com.njcn.dataProcess.pojo.dto.DataLimitRateDetailDto;
import com.njcn.dataProcess.pojo.dto.DataLimitRateDto;
import com.njcn.dataProcess.pojo.dto.DataLimitTargetDto;
import com.njcn.dataProcess.pojo.dto.PqReasonableRangeDto;
import com.njcn.device.biz.enums.DeviceResponseEnum;
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
import com.njcn.device.pq.constant.Param;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.pq.mapper.DataVerifyMapper;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.PqDataVerifyBakMapper;
import com.njcn.device.pq.pojo.param.dataClean.MonitorBaseParam;
import com.njcn.device.pq.pojo.po.DataVerify;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.pq.pojo.po.LineDetail;
import com.njcn.device.pq.pojo.vo.AreaLineInfoVO;
import com.njcn.device.pq.pojo.vo.LineDetailDataVO;
import com.njcn.device.pq.pojo.vo.dataClean.*;
import com.njcn.device.pq.service.CommTerminalService;
import com.njcn.device.pq.service.IDataVerifyService;
import com.njcn.device.pq.service.LineService;
import com.njcn.harmonic.pojo.vo.RStatLimitTargetVO;
import com.njcn.supervision.api.UserLedgerFeignClient;
import com.njcn.supervision.pojo.vo.user.NewUserReportVO;
import com.njcn.supervision.pojo.vo.user.UserLedgerVO;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.api.DictTreeFeignClient;
import com.njcn.system.enums.DicDataEnum;
@@ -58,16 +46,12 @@ import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import java.lang.reflect.Field;
import java.text.DateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.function.Function;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**

View File

@@ -9,7 +9,9 @@ import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.njcn.device.pq.mapper.RStatIntegrityDMapper;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.line.service.DeptLineService;
import com.njcn.device.pq.mapper.RStatOnlinerateDMapper;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
import com.njcn.device.pq.pojo.param.DevRunEvaluateParam;
@@ -23,11 +25,10 @@ import cn.hutool.core.collection.CollectionUtil;
import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.enums.PowerFlagEnum;
import com.njcn.device.pq.enums.RunFlagEnum;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.pojo.dto.MonitorInfoDTO;
import com.njcn.device.pq.pojo.vo.TerminalEvaluateAreaVO;
import com.njcn.device.pq.service.DeptLineService;
import com.njcn.device.pq.service.DeviceRunEvaluateService;
import com.njcn.device.rstatintegrity.mapper.RStatIntegrityDMapper;
import com.njcn.harmonic.api.RStatLimitRateDClient;
import com.njcn.harmonic.pojo.param.RStatLimitQueryParam;
import com.njcn.harmonic.pojo.po.day.RStatLimitRateDPO;

View File

@@ -5,7 +5,6 @@ import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -14,8 +13,11 @@ import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO;
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.pq.mapper.RStatIntegrityDMapper;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.device.service.IDeviceService;
import com.njcn.device.line.mapper.LineDetailMapper;
import com.njcn.device.line.service.DeptLineService;
import com.njcn.device.line.service.LineService;
import com.njcn.device.pq.mapper.RStatOnlinerateDMapper;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
import com.njcn.device.pq.pojo.param.GridDiagramParam;
@@ -25,12 +27,12 @@ import com.njcn.device.pq.pojo.po.*;
import com.njcn.device.pq.pojo.vo.GridDiagramProVO;
import com.njcn.device.pq.pojo.vo.GridDiagramVO;
import com.njcn.device.pq.service.*;
import com.njcn.device.rstatintegrity.mapper.RStatIntegrityDMapper;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO;
import com.njcn.user.pojo.po.Dept;
import java.time.ZoneId;
@@ -39,7 +41,6 @@ import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import com.njcn.web.utils.WebUtil;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

View File

@@ -1,6 +1,7 @@
package com.njcn.device.pq.service.impl;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.pq.mapper.LargeScreenMapper;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
import com.njcn.device.pq.pojo.param.DeviceInfoParam;

View File

@@ -8,6 +8,7 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.config.GeneralInfo;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.pq.api.AlarmClient;
import com.njcn.device.pq.api.GeneralDeviceInfoClient;
import com.njcn.device.biz.enums.DeviceResponseEnum;
@@ -15,7 +16,6 @@ import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.enums.PowerFlagEnum;
import com.njcn.device.pq.enums.RunFlagEnum;
import com.njcn.device.pq.mapper.LineIntegrityDataMapper;
import com.njcn.device.pq.mapper.RStatIntegrityDMapper;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
import com.njcn.device.pq.pojo.dto.PublicDTO;
import com.njcn.device.pq.pojo.param.DeviceInfoParam;
@@ -27,6 +27,7 @@ import com.njcn.device.pq.pojo.vo.LineIntegrityDataVO;
import com.njcn.device.pq.pojo.vo.RStatIntegrityVO;
import com.njcn.device.pq.service.LineIntegrityDataService;
import com.njcn.device.pq.utils.DataStatisticsUtil;
import com.njcn.device.rstatintegrity.mapper.RStatIntegrityDMapper;
import com.njcn.harmonic.pojo.vo.IntegrityIconVO;
import com.njcn.supervision.api.UserLedgerFeignClient;
import com.njcn.supervision.pojo.param.user.UserReportParam;

View File

@@ -9,7 +9,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.biz.enums.DeviceResponseEnum;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.line.mapper.LineDetailMapper;
import com.njcn.device.pq.mapper.LineMarkMapper;
import com.njcn.device.pq.pojo.bo.excel.LineMark;
import com.njcn.device.pq.pojo.param.TerminalMainQueryParam;

View File

@@ -7,30 +7,20 @@ import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists;
import com.njcn.db.constant.DbConstant;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.pq.mapper.EventPushLogsMapper;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.LogManageMapper;
import com.njcn.device.pq.pojo.constant.DeviceValidMessage;
import com.njcn.device.pq.pojo.param.DeviceLogParam;
import com.njcn.device.pq.pojo.param.EventLogParam;
import com.njcn.device.pq.pojo.po.EventPushLogs;
import com.njcn.device.pq.pojo.vo.AreaLineInfoVO;
import com.njcn.device.pq.pojo.vo.DeviceLogVO;
import com.njcn.device.pq.pojo.vo.EventLogVO;
import com.njcn.device.pq.service.LogManageService;
import com.njcn.event.api.EventDetailFeignClient;
import com.njcn.event.pojo.po.EventDetail;
import lombok.AllArgsConstructor;
import org.influxdb.dto.QueryResult;
import org.influxdb.impl.InfluxDBResultMapper;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;

View File

@@ -7,8 +7,8 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.biz.enums.DeviceResponseEnum;
import com.njcn.device.line.mapper.LineDetailMapper;
import com.njcn.device.pq.enums.PvDeviceResponseEnum;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.pq.mapper.NewStationMapper;
import com.njcn.device.pq.pojo.param.NewStationQueryParam;
import com.njcn.device.pq.pojo.po.NewStation;

View File

@@ -1,20 +0,0 @@
package com.njcn.device.pq.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.device.biz.pojo.po.Overlimit;
import com.njcn.device.pq.mapper.OverlimitMapper;
import com.njcn.device.pq.service.IOverLimitService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
/**
* pqs
*
* @author cdf
* @date 2023/6/7
*/
@Service
@RequiredArgsConstructor
public class OverLimitServiceImpl extends ServiceImpl<OverlimitMapper, Overlimit> implements IOverLimitService {
}

View File

@@ -17,15 +17,11 @@ import com.njcn.dataProcess.api.PqReasonableRangeFeignClient;
import com.njcn.dataProcess.enums.DataCleanEnum;
import com.njcn.dataProcess.param.DataCleanParam;
import com.njcn.dataProcess.pojo.dto.PqReasonableRangeDto;
import com.njcn.device.biz.enums.DeviceResponseEnum;
import com.njcn.device.biz.enums.LineFlagEnum;
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.pq.constant.Param;
import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.PqDataVerifyBakMapper;
import com.njcn.device.pq.pojo.param.dataClean.MonitorBaseParam;
import com.njcn.device.pq.pojo.po.DataVerify;
import com.njcn.device.pq.pojo.po.PqDataVerifyBak;
import com.njcn.device.pq.pojo.vo.AreaLineInfoVO;
import com.njcn.device.pq.pojo.vo.LineDetailDataVO;
@@ -35,8 +31,6 @@ import com.njcn.device.pq.pojo.vo.dataClean.VerifyMonitorVO;
import com.njcn.device.pq.pojo.vo.dataClean.VerifyTargetVO;
import com.njcn.device.pq.service.CommTerminalService;
import com.njcn.device.pq.service.IPqDataVerifyBakService;
import com.njcn.harmonic.enums.HarmonicResponseEnum;
import com.njcn.oss.constant.OssPath;
import com.njcn.oss.utils.FileStorageUtil;
import com.njcn.supervision.api.UserLedgerFeignClient;
import com.njcn.supervision.pojo.vo.user.NewUserReportVO;
@@ -45,13 +39,10 @@ import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.pojo.po.SysDicTreePO;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Service;
import java.io.InputStream;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.function.Function;

View File

@@ -9,18 +9,17 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.bpm.utils.CollectionUtils;
import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.device.service.IDeviceService;
import com.njcn.device.device.service.PqDevTypeService;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.pms.enums.PmsDeviceResponseEnum;
import com.njcn.device.pq.constant.Param;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.PqsTerminalLogsMapper;
import com.njcn.device.pq.pojo.dto.PqIcdPathDTO;
import com.njcn.device.pq.pojo.param.PqIcdPathParam;
import com.njcn.device.pq.pojo.po.*;
import com.njcn.device.pq.service.IDeviceService;
import com.njcn.device.pq.service.PqDevTypeService;
import com.njcn.device.terminal.mapper.PqsTerminalLogsMapper;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
@@ -59,7 +58,7 @@ public class PqIcdPathServiceImpl extends ServiceImpl<PqIcdPathMapper, PqIcdPath
private final IDeviceService deviceService;
private final PqsTerminalLogsMapper pqsTerminalLogsMapper;
private final DicDataFeignClient dicDataFeignClient;
private final LineMapper lineMapper;
private final LineMapper lineMapper;
@Override
public List<PqIcdPathDTO> icdPathList(List<String> devType) {
@@ -152,9 +151,9 @@ public class PqIcdPathServiceImpl extends ServiceImpl<PqIcdPathMapper, PqIcdPath
icdPath.setPath(param.getFilePath());
//查询绑定的icd的设备型号
List<PqDevType> pqDevTypeList = devTypeService.lambdaQuery().eq(PqDevType::getIcdId, param.getId()).eq(PqDevType::getState, 1).list();
if(!CollectionUtil.isEmpty(pqDevTypeList)) {
if (!CollectionUtil.isEmpty(pqDevTypeList)) {
List<String> collect = pqDevTypeList.stream().map(PqDevType::getId).collect(Collectors.toList());
List<Device> list = deviceService.lambdaQuery().in(Device::getDevType,collect).eq(Device::getRunFlag, 0).list();
List<Device> list = deviceService.lambdaQuery().in(Device::getDevType, collect).eq(Device::getRunFlag, 0).list();
list.forEach(temp -> {
//记录日志
DictData dataDic = dicDataFeignClient.getDicDataByCodeAndType(DicDataEnum.DEV_PARAMETER.getCode(), DicDataTypeEnum.DEV_OPS.getCode()).getData();

View File

@@ -2,8 +2,8 @@ package com.njcn.device.pq.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.PqsDeviceUnitMapper;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.biz.pojo.po.PqsDeviceUnit;

View File

@@ -11,7 +11,7 @@ import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.pq.mapper.PqsLineWeightMapper;
import com.njcn.device.pq.pojo.param.TerminalMainQueryParam;
import com.njcn.device.pq.pojo.po.PqsLineWeight;
@@ -19,7 +19,7 @@ import com.njcn.device.pq.pojo.vo.PqsLineWeightVo;
import com.njcn.device.pq.pojo.vo.TerminalTree;
import com.njcn.device.pq.service.IPqsLineWeightService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.device.pq.utils.ExcelStyleUtil;
import com.njcn.device.utils.ExcelStyleUtil;
import com.njcn.poi.excel.ExcelUtil;
import com.njcn.poi.util.PoiUtil;
import lombok.RequiredArgsConstructor;

View File

@@ -8,10 +8,11 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.enums.PvDeviceResponseEnum;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.PqsTflgassMapper;
import com.njcn.device.pq.mapper.PqsTransformerMapper;
import com.njcn.device.pq.pojo.dto.transformer.EntityLogicDTO;
@@ -176,9 +177,9 @@ public class PqsTransformerServiceImpl extends ServiceImpl<PqsTransformerMapper,
.eq(PqsTflgass::getLogicNext, param.getDownNode())
)
);
if(ObjectUtil.isNotNull(tflgass)){
if (ObjectUtil.isNotNull(tflgass)) {
throw new BusinessException(PvDeviceResponseEnum.TRANSFORMER_NAME_REPEAT);
}else{
} else {
fly = iPqsTflgassService.save(ass);
}
@@ -198,59 +199,182 @@ public class PqsTransformerServiceImpl extends ServiceImpl<PqsTransformerMapper,
PqsTflgass one = iPqsTflgassService.getOne(new LambdaQueryWrapper<PqsTflgass>()
.eq(PqsTflgass::getTfIndex, id));
//1.获取当前变电站下,所拥有的母线条数
List<TerminalTree> downVoltage = lineMapper.getvoltage(subId, 1);
//获取母线id
List<String> ids = downVoltage.stream().map(TerminalTree::getId).collect(Collectors.toList());
//查询节点是否绑定
List<PqsTflgass> pqsTflgasses = pqsTflgassMapper.selectFlgass(subId, ids);
String[][] arr = new String[pqsTflgasses.size()][2];
if (CollUtil.isNotEmpty(pqsTflgasses) && ids.size() > 2) {
for (int i = 0; i < pqsTflgasses.size(); i++) {
arr[i][0] = pqsTflgasses.get(i).getLogicBefore();
arr[i][1] = pqsTflgasses.get(i).getLogicNext();
}
List<String> arr = new ArrayList<>();
if (Objects.nonNull(one)) {
arr.add(one.getLogicBefore());
arr.add(one.getLogicNext());
}
voltage.put("bind", arr);
Stream<String> beforeStream = pqsTflgasses.stream().map(PqsTflgass::getLogicBefore);
Stream<String> nextStream = pqsTflgasses.stream().map(PqsTflgass::getLogicNext);
//合并节点,要是母线都存在,说明是跨变电站,反之是本变电站
List<String> merge = Stream.concat(beforeStream, nextStream)
.distinct()
.collect(Collectors.toList());
//查看已经绑定的母线
List<String> bindList = merge.stream().filter(x -> ids.contains(x)).collect(Collectors.toList());
//绑定母线,如有绑定的母线下不存在这个母线,说明是有跨变电站数据,则新增母线节点,为最底层节点往后,拼接
List<String> straddleList = merge.stream().filter(x -> !ids.contains(x)).collect(Collectors.toList());
//判断当前母线下是否还存在,没绑定节点
List<String> not = ids.stream().filter(x -> !bindList.contains(x)).collect(Collectors.toList());
//1.获取当前变电站下,所拥有的母线条数
List<TerminalTree> downVoltage = lineMapper.getvoltage(subId, 1);
if(CollUtil.isNotEmpty(arr)) {
downVoltage.forEach(item->{
if(Objects.equals(item.getId(),arr.get(1))){
item.setLevel(LineBaseEnum.SUB_V_LEVEL.getCode());
}
});
}
//获取所有母线层级
List<Line> UpBusList = lineMapper.selectList(new LambdaQueryWrapper<Line>().eq(Line::getLevel, LineBaseEnum.SUB_V_LEVEL.getCode()).eq(Line::getState, DataStateEnum.ENABLE.getCode()).orderByAsc(Line::getSort));
List<TerminalTree> upTreeList = UpBusList.stream().map(it -> {
TerminalTree terminalTree = new TerminalTree();
terminalTree.setId(it.getId());
terminalTree.setName(it.getName());
terminalTree.setPid(it.getPids().split(StrUtil.COMMA)[LineBaseEnum.SUB_LEVEL.getCode()]);
terminalTree.setSort(it.getSort());
if(CollUtil.isNotEmpty(arr)) {
if (it.getId().equals(arr.get(0))) {
terminalTree.setLevel(LineBaseEnum.SUB_V_LEVEL.getCode());
}
}
return terminalTree;
}).collect(Collectors.toList());
//获取母线id
//List<String> ids = downVoltage.stream().map(TerminalTree::getId).collect(Collectors.toList());
List<TerminalTree> upList = TreedChildren(upTreeList, "变压器上节点设备树", subId);
voltage.put("upNode", upList);
List<TerminalTree> downList = TreedChildren(downVoltage, "变压器下节点设备树", subId);
voltage.put("downNode", downList);
return voltage;
}
public Map<String, Object> getGeneratrixOld(String subId, String id) {
Map<String, Object> voltage = new HashMap<>();
//先判断当前,变电站是否已添加了节点
PqsTflgass one = iPqsTflgassService.getOne(new LambdaQueryWrapper<PqsTflgass>()
.eq(PqsTflgass::getTfIndex, id));
//1.获取当前变电站下,所拥有的母线条数
List<TerminalTree> downVoltage = lineMapper.getvoltage(subId, 1);
//获取母线id
List<String> ids = downVoltage.stream().map(TerminalTree::getId).collect(Collectors.toList());
//查询节点是否绑定
List<PqsTflgass> pqsTflgasses = pqsTflgassMapper.selectFlgass(subId, ids);
String[][] arr = new String[pqsTflgasses.size()][2];
if (CollUtil.isNotEmpty(pqsTflgasses) && ids.size() > 2) {
for (int i = 0; i < pqsTflgasses.size(); i++) {
arr[i][0] = pqsTflgasses.get(i).getLogicBefore();
arr[i][1] = pqsTflgasses.get(i).getLogicNext();
}
}
voltage.put("bind", arr);
Stream<String> beforeStream = pqsTflgasses.stream().map(PqsTflgass::getLogicBefore);
Stream<String> nextStream = pqsTflgasses.stream().map(PqsTflgass::getLogicNext);
//合并节点,要是母线都存在,说明是跨变电站,反之是本变电站
List<String> merge = Stream.concat(beforeStream, nextStream)
.distinct()
.collect(Collectors.toList());
//查看已经绑定的母线
List<String> bindList = merge.stream().filter(x -> ids.contains(x)).collect(Collectors.toList());
//绑定母线,如有绑定的母线下不存在这个母线,说明是有跨变电站数据,则新增母线节点,为最底层节点往后,拼接
List<String> straddleList = merge.stream().filter(x -> !ids.contains(x)).collect(Collectors.toList());
//判断当前母线下是否还存在,没绑定节点
List<String> not = ids.stream().filter(x -> !bindList.contains(x)).collect(Collectors.toList());
/**
* 当母线节点+1等于去重之后的绑定节点说明节点已经全部绑定了
*
* 跨变电站
* 1.1当母线小于俩条时为跨
* 1.2当都所有节点都绑定时,只有最起始节点为跨
* 本变电站
* 1.1当有俩条时或者大于俩条时时为本
* 1.2当已绑定有跨变电站时,则上节点为最底层节点母线,下节点为没绑定的母线信息
*/
if (ObjectUtil.isNotNull(one)) {
List<String> collect = ids.stream().filter(x -> x.equals(one.getLogicBefore())).collect(Collectors.toList());
/**
* 当母线节点+1等于去重之后的绑定节点说明节点已经全部绑定了
*
* 跨变电站
* 1.1当母线小于俩条时为跨
* 1.2当都所有节点都绑定时,只有最起始节点为跨
* 本变电站
* 1.1当有俩条时或者大于俩条时时为本
* 1.2当已绑定有跨变电站时,则上节点为最底层节点母线,下节点为没绑定的母线信息
*
* 1.当母线大于俩条
* 2.当所有母线没有绑定是
*/
if (collect.size() > 0) {
List<TerminalTree> upVOList;
if (straddleList.size() > 0 && not.size() > 0) {
String s = mostNext(pqsTflgasses);
upVOList = downVoltage.stream().filter(x -> s.equals(x.getId())).collect(Collectors.toList());
} else {
//上节点id
List<String> upIDs = pqsTflgasses.stream().map(PqsTflgass::getLogicBefore).collect(Collectors.toList());
upVOList = downVoltage.stream().filter(x -> !upIDs.contains(x.getId())).collect(Collectors.toList());
}
//下节点id
List<String> downIDs = pqsTflgasses.stream().map(PqsTflgass::getLogicNext).collect(Collectors.toList());
List<TerminalTree> downVOList = downVoltage.stream().filter(x -> !downIDs.contains(x.getId())).collect(Collectors.toList());
if (ObjectUtil.isNotNull(one)) {
List<String> collect = ids.stream().filter(x -> x.equals(one.getLogicBefore())).collect(Collectors.toList());
/**
* 本
* 1.当母线大于俩条
* 2.当所有母线没有绑定是
*/
if (collect.size() > 0) {
if (ObjectUtil.isNotNull(one)) {
TerminalTree beforeTree = addTree(one.getLogicBefore());
TerminalTree nextTree = addTree(one.getLogicNext());
upVOList.add(beforeTree);
downVOList.add(nextTree);
}
List<TerminalTree> upList = TreedChildren(upVOList, "变压器上节点设备树", subId);
voltage.put("upNode", upList);
List<TerminalTree> downList = TreedChildren(downVOList, "变压器下节点设备树", subId);
voltage.put("downNode", downList);
return voltage;
} else {
//查询所有变电站下母线信息
List<TerminalTree> upVoltage = lineMapper.getvoltage(subId, 0);
if (merge.size() == ids.size()) {
String s = mostBefore(pqsTflgasses);
downVoltage = downVoltage.stream().filter(x -> x.getId().equals(s)).collect(Collectors.toList());
}
if (ObjectUtil.isNotNull(one)) {
TerminalTree beforeTree = addTree(one.getLogicBefore());
TerminalTree nextTree = addTree(one.getLogicNext());
upVoltage = upVoltage.stream().filter(x -> !x.getId().equals(beforeTree.getId())).collect(Collectors.toList());
upVoltage.add(beforeTree);
downVoltage.clear();
downVoltage.add(nextTree);
}
List<TerminalTree> upList = TreedChildren(upVoltage, "变压器上节点设备树", null);
voltage.put("upNode", upList);
List<TerminalTree> downList = TreedChildren(downVoltage, "变压器下节点设备树", subId);
voltage.put("downNode", downList);
return voltage;
}
} else {
//判断是否已经全部绑定
String chain = chain(pqsTflgasses);
String chain2 = chain2(pqsTflgasses);
if (StrUtil.isNotBlank(chain) && not.size() == 0 && pqsTflgasses.size() + 1 != ids.size() && straddleList.size() == 0
|| StrUtil.isNotBlank(chain2) && not.size() == 0 && pqsTflgasses.size() + 1 != ids.size() && straddleList.size() == 0) {
List<String> logicBefore = pqsTflgasses.stream().map(PqsTflgass::getLogicBefore).collect(Collectors.toList());
List<String> logicNext = pqsTflgasses.stream().map(PqsTflgass::getLogicNext).collect(Collectors.toList());
List<TerminalTree> up = downVoltage.stream().filter(x -> !logicBefore.contains(x.getId())).collect(Collectors.toList());
List<TerminalTree> upList = TreedChildren(up, "变压器上节点设备树", subId);
voltage.put("upNode", upList);
List<TerminalTree> down = downVoltage.stream().filter(x -> !logicNext.contains(x.getId())).collect(Collectors.toList());
List<TerminalTree> downList = TreedChildren(down, "变压器下节点设备树", subId);
voltage.put("downNode", downList);
return voltage;
} else {
if (downVoltage.size() > 1 && straddleList.size() == 0 && bindList.size() != ids.size()
|| straddleList.size() > 0 && not.size() > 0
) {
List<TerminalTree> upVOList;
if (straddleList.size() > 0 && not.size() > 0) {
String s = mostNext(pqsTflgasses);
@@ -263,20 +387,24 @@ public class PqsTransformerServiceImpl extends ServiceImpl<PqsTransformerMapper,
//下节点id
List<String> downIDs = pqsTflgasses.stream().map(PqsTflgass::getLogicNext).collect(Collectors.toList());
List<TerminalTree> downVOList = downVoltage.stream().filter(x -> !downIDs.contains(x.getId())).collect(Collectors.toList());
if (ObjectUtil.isNotNull(one)) {
TerminalTree beforeTree = addTree(one.getLogicBefore());
TerminalTree nextTree = addTree(one.getLogicNext());
upVOList.add(beforeTree);
downVOList.add(nextTree);
List<TerminalTree> downVOList = downVoltage.stream().filter(x -> !downIDs.contains(x.getId())).collect(Collectors.toList());
if (not.size() == 1) {
List<String> logicBefore = pqsTflgasses.stream().map(PqsTflgass::getLogicBefore).collect(Collectors.toList());
downVOList = downVOList.stream().filter(x -> !logicBefore.contains(x.getId())).collect(Collectors.toList());
}
List<TerminalTree> upList = TreedChildren(upVOList, "变压器上节点设备树", subId);
voltage.put("upNode", upList);
List<TerminalTree> downList = TreedChildren(downVOList, "变压器下节点设备树", subId);
voltage.put("downNode", downList);
return voltage;
} else {
}
/**
* 跨
* 1.当母线小于2条跨
* 2.当所有母线都绑定为跨
*/
else {
//查询所有变电站下母线信息
List<TerminalTree> upVoltage = lineMapper.getvoltage(subId, 0);
if (merge.size() == ids.size()) {
@@ -284,304 +412,231 @@ public class PqsTransformerServiceImpl extends ServiceImpl<PqsTransformerMapper,
downVoltage = downVoltage.stream().filter(x -> x.getId().equals(s)).collect(Collectors.toList());
}
if (ObjectUtil.isNotNull(one)) {
TerminalTree beforeTree = addTree(one.getLogicBefore());
TerminalTree nextTree = addTree(one.getLogicNext());
upVoltage = upVoltage.stream().filter(x -> !x.getId().equals(beforeTree.getId())).collect(Collectors.toList());
upVoltage.add(beforeTree);
//下节点id
List<String> downIDs = pqsTflgasses.stream().map(PqsTflgass::getLogicNext).collect(Collectors.toList());
List<TerminalTree> downVOList = downVoltage.stream().filter(x -> !downIDs.contains(x.getId())).collect(Collectors.toList());
downVoltage.clear();
downVoltage.add(nextTree);
}
List<TerminalTree> upList = TreedChildren(upVoltage, "变压器上节点设备树", null);
voltage.put("upNode", upList);
List<TerminalTree> downList = TreedChildren(downVoltage, "变压器下节点设备树", subId);
List<TerminalTree> downList = TreedChildren(downVOList, "变压器下节点设备树", subId);
voltage.put("downNode", downList);
return voltage;
}
}
}
return voltage;
}
@Override
public List<TerminalTree> getTransformerTree() {
List<TerminalTree> terminalTrees = this.baseMapper.listTransformer();
return TreedChildren(terminalTrees, "变压器设备树", null);
}
@Override
public List<EntityLogicDTO> getLogic() {
return pqsTflgassMapper.getLogic();
}
/**
* 获取全部子节点
*
* @author cdf
* @date 2021/7/19
*/
public List<TerminalTree> getChildren(TerminalTree item, List<TerminalTree> all) {
return all.stream().filter(allItem -> allItem.getPid().equals(item.getId())).collect(Collectors.toList());
}
/**
* 初始化设备树
*
* @param children 子节点
* @param name 节点名称
* @param subId 不为空则只展示,当前变电站节点的信息,为空则展示所有信息
* @return
*/
public List<TerminalTree> TreedChildren(List<TerminalTree> children, String name, String subId) {
List<TerminalTree> taiZhang = new ArrayList<>();
List<TerminalTree> allList = lineMapper.getAllList();
List<TerminalTree> gdList;
List<TerminalTree> subList;
List<TerminalTree> provinceList;
if (StrUtil.isBlank(subId)) {
subList = allList.stream().filter(item -> item.getLevel().equals(LineBaseEnum.SUB_LEVEL.getCode())).sorted(Comparator.comparing(TerminalTree::getSort)).collect(Collectors.toList());
gdList = allList.stream().filter(item -> item.getLevel().equals(LineBaseEnum.GD_LEVEL.getCode())).sorted(Comparator.comparing(TerminalTree::getSort)).collect(Collectors.toList());
provinceList = lineMapper.getProvinceList(null, 0);
} else {
subList = allList.stream().filter(item -> item.getLevel().equals(LineBaseEnum.SUB_LEVEL.getCode())
&& item.getId().equals(subId)
).sorted(Comparator.comparing(TerminalTree::getSort)).collect(Collectors.toList());
gdList = allList.stream().filter(item -> item.getLevel().equals(LineBaseEnum.GD_LEVEL.getCode())
&& item.getId().equals(subList.get(0).getPid())
).sorted(Comparator.comparing(TerminalTree::getSort)).collect(Collectors.toList());
provinceList = lineMapper.getProvinceList(Arrays.asList(gdList.get(0).getPid()), 1);
}
List<TerminalTree> terminal = children.stream().sorted(Comparator.comparing(TerminalTree::getSort)).collect(Collectors.toList());
subList.forEach(sub -> sub.setChildren(getChildren(sub, terminal)));
gdList.forEach(gd -> gd.setChildren(getChildren(gd, subList)));
provinceList.forEach(province -> province.setChildren(getChildren(province, gdList)));
if (CollectionUtil.isNotEmpty(allList)) {
TerminalTree terminalTree = new TerminalTree();
terminalTree.setId("9999999");
terminalTree.setLevel(0);
terminalTree.setName(name);
if (CollectionUtil.isNotEmpty(provinceList)) {
terminalTree.setChildren(provinceList);
}
taiZhang.add(terminalTree);
}
return taiZhang;
}
/**
* 查找最顶层节点信息
*
* @param pqsTflgasses
* @return
*/
private static String mostBefore(List<PqsTflgass> pqsTflgasses) {
String logicBefore = null;
for (PqsTflgass pqsTflgass : pqsTflgasses) {
//根据获取的的上节点判断是否存在,这上节点是否是尾节点
if (ObjectUtil.isNull(logicBefore)) {
logicBefore = pqsTflgass.getLogicBefore();
} else {
//判断是否已经全部绑定
String chain = chain(pqsTflgasses);
String chain2 = chain2(pqsTflgasses);
if (StrUtil.isNotBlank(chain) && not.size() == 0&& pqsTflgasses.size()+1!=ids.size()&&straddleList.size()==0
|| StrUtil.isNotBlank(chain2) && not.size() == 0&& pqsTflgasses.size()+1!=ids.size()&&straddleList.size()==0) {
List<String> logicBefore = pqsTflgasses.stream().map(PqsTflgass::getLogicBefore).collect(Collectors.toList());
List<String> logicNext = pqsTflgasses.stream().map(PqsTflgass::getLogicNext).collect(Collectors.toList());
List<TerminalTree> up = downVoltage.stream().filter(x -> !logicBefore.contains(x.getId())).collect(Collectors.toList());
List<TerminalTree> upList = TreedChildren(up, "变压器上节点设备树", subId);
voltage.put("upNode", upList);
List<TerminalTree> down = downVoltage.stream().filter(x -> !logicNext.contains(x.getId())).collect(Collectors.toList());
List<TerminalTree> downList = TreedChildren(down, "变压器下节点设备树", subId);
voltage.put("downNode", downList);
return voltage;
} else {
if (downVoltage.size() > 1 && straddleList.size() == 0 && bindList.size() != ids.size()
|| straddleList.size() > 0 && not.size() > 0
) {
List<TerminalTree> upVOList;
if (straddleList.size() > 0 && not.size() > 0) {
String s = mostNext(pqsTflgasses);
upVOList = downVoltage.stream().filter(x -> s.equals(x.getId())).collect(Collectors.toList());
while (true) {
for (int i1 = 0; i1 < pqsTflgasses.size(); i1++) {
String logicNext = pqsTflgasses.get(i1).getLogicNext();
if (logicBefore.equals(logicNext)) {
logicBefore = pqsTflgasses.get(i1).getLogicBefore();
break;
} else {
//上节点id
List<String> upIDs = pqsTflgasses.stream().map(PqsTflgass::getLogicBefore).collect(Collectors.toList());
upVOList = downVoltage.stream().filter(x -> !upIDs.contains(x.getId())).collect(Collectors.toList());
if (i1 == pqsTflgasses.size()) {
break;
}
}
//下节点id
List<String> downIDs = pqsTflgasses.stream().map(PqsTflgass::getLogicNext).collect(Collectors.toList());
List<TerminalTree> downVOList = downVoltage.stream().filter(x -> !downIDs.contains(x.getId())).collect(Collectors.toList());
if(not.size() ==1){
List<String> logicBefore = pqsTflgasses.stream().map(PqsTflgass::getLogicBefore).collect(Collectors.toList());
downVOList = downVOList.stream().filter(x -> !logicBefore.contains(x.getId())).collect(Collectors.toList());
}
List<TerminalTree> upList = TreedChildren(upVOList, "变压器上节点设备树", subId);
voltage.put("upNode", upList);
List<TerminalTree> downList = TreedChildren(downVOList, "变压器下节点设备树", subId);
voltage.put("downNode", downList);
}
/**
* 跨
* 1.当母线小于2条跨
* 2.当所有母线都绑定为跨
*/
else {
//查询所有变电站下母线信息
List<TerminalTree> upVoltage = lineMapper.getvoltage(subId, 0);
if (merge.size() == ids.size()) {
String s = mostBefore(pqsTflgasses);
downVoltage = downVoltage.stream().filter(x -> x.getId().equals(s)).collect(Collectors.toList());
}
//下节点id
List<String> downIDs = pqsTflgasses.stream().map(PqsTflgass::getLogicNext).collect(Collectors.toList());
List<TerminalTree> downVOList = downVoltage.stream().filter(x -> !downIDs.contains(x.getId())).collect(Collectors.toList());
List<TerminalTree> upList = TreedChildren(upVoltage, "变压器上节点设备树", null);
voltage.put("upNode", upList);
List<TerminalTree> downList = TreedChildren(downVOList, "变压器下节点设备树", subId);
voltage.put("downNode", downList);
return voltage;
}
break;
}
}
return voltage;
}
return logicBefore;
}
@Override
public List<TerminalTree> getTransformerTree() {
List<TerminalTree> terminalTrees = this.baseMapper.listTransformer();
return TreedChildren(terminalTrees, "变压器设备树", null);
}
@Override
public List<EntityLogicDTO> getLogic() {
return pqsTflgassMapper.getLogic();
}
/**
* 获取全部子节点
*
* @author cdf
* @date 2021/7/19
*/
public List<TerminalTree> getChildren(TerminalTree item, List<TerminalTree> all) {
return all.stream().filter(allItem -> allItem.getPid().equals(item.getId())).collect(Collectors.toList());
}
/**
* 初始化设备树
*
* @param children 子节点
* @param name 节点名称
* @param subId 不为空则只展示,当前变电站节点的信息,为空则展示所有信息
* @return
*/
public List<TerminalTree> TreedChildren(List<TerminalTree> children, String name, String subId) {
List<TerminalTree> taiZhang = new ArrayList<>();
List<TerminalTree> allList = lineMapper.getAllList();
List<TerminalTree> gdList;
List<TerminalTree> subList;
List<TerminalTree> provinceList;
if (StrUtil.isBlank(subId)) {
subList = allList.stream().filter(item -> item.getLevel().equals(LineBaseEnum.SUB_LEVEL.getCode())).sorted(Comparator.comparing(TerminalTree::getSort)).collect(Collectors.toList());
gdList = allList.stream().filter(item -> item.getLevel().equals(LineBaseEnum.GD_LEVEL.getCode())).sorted(Comparator.comparing(TerminalTree::getSort)).collect(Collectors.toList());
provinceList = lineMapper.getProvinceList(null, 0);
/**
* 查找最底层节点信息
*
* @param pqsTflgasses
* @return
*/
private static String mostNext(List<PqsTflgass> pqsTflgasses) {
String logicNext = null;
for (PqsTflgass pqsTflgass : pqsTflgasses) {
//根据获取的的上节点判断是否存在,这上节点是否是尾节点
if (ObjectUtil.isNull(logicNext)) {
logicNext = pqsTflgass.getLogicNext();
} else {
subList = allList.stream().filter(item -> item.getLevel().equals(LineBaseEnum.SUB_LEVEL.getCode())
&& item.getId().equals(subId)
).sorted(Comparator.comparing(TerminalTree::getSort)).collect(Collectors.toList());
gdList = allList.stream().filter(item -> item.getLevel().equals(LineBaseEnum.GD_LEVEL.getCode())
&& item.getId().equals(subList.get(0).getPid())
).sorted(Comparator.comparing(TerminalTree::getSort)).collect(Collectors.toList());
provinceList = lineMapper.getProvinceList(Arrays.asList(gdList.get(0).getPid()), 1);
}
List<TerminalTree> terminal = children.stream().sorted(Comparator.comparing(TerminalTree::getSort)).collect(Collectors.toList());
subList.forEach(sub -> sub.setChildren(getChildren(sub, terminal)));
gdList.forEach(gd -> gd.setChildren(getChildren(gd, subList)));
provinceList.forEach(province -> province.setChildren(getChildren(province, gdList)));
if (CollectionUtil.isNotEmpty(allList)) {
TerminalTree terminalTree = new TerminalTree();
terminalTree.setId("9999999");
terminalTree.setLevel(0);
terminalTree.setName(name);
if (CollectionUtil.isNotEmpty(provinceList)) {
terminalTree.setChildren(provinceList);
}
taiZhang.add(terminalTree);
}
return taiZhang;
}
/**
* 查找最顶层节点信息
*
* @param pqsTflgasses
* @return
*/
private static String mostBefore(List<PqsTflgass> pqsTflgasses) {
String logicBefore = null;
for (PqsTflgass pqsTflgass : pqsTflgasses) {
//根据获取的的上节点判断是否存在,这上节点是否是尾节点
if (ObjectUtil.isNull(logicBefore)) {
logicBefore = pqsTflgass.getLogicBefore();
} else {
while (true) {
for (int i1 = 0; i1 < pqsTflgasses.size(); i1++) {
String logicNext = pqsTflgasses.get(i1).getLogicNext();
if (logicBefore.equals(logicNext)) {
logicBefore = pqsTflgasses.get(i1).getLogicBefore();
while (true) {
for (int i1 = 0; i1 < pqsTflgasses.size(); i1++) {
String logicBefore = pqsTflgasses.get(i1).getLogicBefore();
if (logicNext.equals(logicBefore)) {
logicNext = pqsTflgasses.get(i1).getLogicNext();
break;
} else {
if (i1 == pqsTflgasses.size()) {
break;
} else {
if (i1 == pqsTflgasses.size()) {
break;
}
}
}
break;
}
break;
}
}
return logicBefore;
}
return logicNext;
}
/**
* 查找最底层节点信息
*
* @param pqsTflgasses
* @return
*/
private static String mostNext(List<PqsTflgass> pqsTflgasses) {
String logicNext = null;
for (PqsTflgass pqsTflgass : pqsTflgasses) {
//根据获取的的上节点判断是否存在,这上节点是否是尾节点
if (ObjectUtil.isNull(logicNext)) {
logicNext = pqsTflgass.getLogicNext();
} else {
while (true) {
for (int i1 = 0; i1 < pqsTflgasses.size(); i1++) {
String logicBefore = pqsTflgasses.get(i1).getLogicBefore();
if (logicNext.equals(logicBefore)) {
logicNext = pqsTflgasses.get(i1).getLogicNext();
break;
} else {
if (i1 == pqsTflgasses.size()) {
break;
}
/**
* 判断是否已经成为链行
*
* @param pqsTflgasses
* @return
*/
private static String chain(List<PqsTflgass> pqsTflgasses) {
if (pqsTflgasses.size() < 2) {
return null;
}
String logicNext = null;
for (PqsTflgass pqsTflgass : pqsTflgasses) {
//根据获取的的下节点判断是否存在,这下节点是否是首节点
if (ObjectUtil.isNull(logicNext)) {
logicNext = pqsTflgass.getLogicNext();
} else {
while (true) {
for (int i1 = 0; i1 < pqsTflgasses.size(); i1++) {
String logicBefore = pqsTflgasses.get(i1).getLogicBefore();
if (logicNext.equals(logicBefore)) {
logicNext = pqsTflgasses.get(i1).getLogicNext();
break;
} else {
if (i1 == pqsTflgasses.size() - 1) {
return logicNext;
}
}
break;
}
break;
}
}
return logicNext;
}
/**
* 判断是否已经成为链行
*
* @param pqsTflgasses
* @return
*/
private static String chain(List<PqsTflgass> pqsTflgasses) {
if(pqsTflgasses.size()<2){
return null;
}
String logicNext = null;
for (PqsTflgass pqsTflgass : pqsTflgasses) {
//根据获取的的下节点判断是否存在,这下节点是否是首节点
if (ObjectUtil.isNull(logicNext)) {
logicNext = pqsTflgass.getLogicNext();
} else {
while (true) {
for (int i1 = 0; i1 < pqsTflgasses.size(); i1++) {
String logicBefore = pqsTflgasses.get(i1).getLogicBefore();
if (logicNext.equals(logicBefore)) {
logicNext = pqsTflgasses.get(i1).getLogicNext();
break;
} else {
if (i1 == pqsTflgasses.size() - 1) {
return logicNext;
}
}
return logicNext;
}
private static String chain2(List<PqsTflgass> pqsTflgasses) {
if (pqsTflgasses.size() < 2) {
return null;
}
String logicBefore = null;
for (PqsTflgass pqsTflgass : pqsTflgasses) {
//根据获取的的下节点判断是否存在,这下节点是否是首节点
if (ObjectUtil.isNull(logicBefore)) {
logicBefore = pqsTflgass.getLogicBefore();
} else {
while (true) {
for (int i1 = 0; i1 < pqsTflgasses.size(); i1++) {
String logicNext = pqsTflgasses.get(i1).getLogicNext();
if (logicBefore.equals(logicNext)) {
logicBefore = pqsTflgasses.get(i1).getLogicBefore();
break;
} else {
if (i1 == pqsTflgasses.size() - 1) {
return logicBefore;
}
}
break;
}
break;
}
}
return logicNext;
}
private static String chain2(List<PqsTflgass> pqsTflgasses) {
if(pqsTflgasses.size()<2){
return null;
}
String logicBefore = null;
for (PqsTflgass pqsTflgass : pqsTflgasses) {
//根据获取的的下节点判断是否存在,这下节点是否是首节点
if (ObjectUtil.isNull(logicBefore)) {
logicBefore = pqsTflgass.getLogicBefore();
} else {
while (true) {
for (int i1 = 0; i1 < pqsTflgasses.size(); i1++) {
String logicNext = pqsTflgasses.get(i1).getLogicNext();
if (logicBefore.equals(logicNext)) {
logicBefore = pqsTflgasses.get(i1).getLogicBefore();
break;
} else {
if (i1 == pqsTflgasses.size() - 1) {
return logicBefore;
}
}
}
break;
}
}
}
return logicBefore;
}
return logicBefore;
}
/**
* 根据母线获取信息
*
* @param id
* @return
*/
public TerminalTree addTree(String id) {
List<TerminalTree> getvoltage = lineMapper.getvoltage(id, 2);
getvoltage.get(0).setLevel(5);
return getvoltage.get(0);
}
/**
* 根据母线获取信息
*
* @param id
* @return
*/
public TerminalTree addTree(String id) {
List<TerminalTree> getvoltage = lineMapper.getvoltage(id, 2);
getvoltage.get(0).setLevel(5);
return getvoltage.get(0);
}

View File

@@ -6,11 +6,9 @@ import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.RStatIntegrityDMapper;
import com.njcn.device.line.mapper.LineDetailMapper;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.pq.mapper.RStatOnlinerateDMapper;
import com.njcn.device.pq.pojo.dto.LineDataQualityDTO;
import com.njcn.device.pq.pojo.dto.MonitorIntegrityDTO;
@@ -21,6 +19,7 @@ import com.njcn.device.pq.pojo.po.RStatIntegrityD;
import com.njcn.device.pq.pojo.po.RStatOnlinerateD;
import com.njcn.device.pq.pojo.vo.LineDetailDataVO;
import com.njcn.device.pq.service.IRStatIntegrityDService;
import com.njcn.device.rstatintegrity.mapper.RStatIntegrityDMapper;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

View File

@@ -8,11 +8,13 @@ import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.common.service.TerminalBaseService;
import com.njcn.device.device.mapper.DeviceMapper;
import com.njcn.device.line.mapper.LineDetailMapper;
import com.njcn.device.line.service.LineService;
import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.mapper.DeviceMapper;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
import com.njcn.device.pq.pojo.param.DeviceInfoParam;
import com.njcn.device.pq.pojo.param.RunManageParam;
@@ -22,12 +24,9 @@ import com.njcn.device.pq.pojo.vo.LineInfluxDbOnlineVO;
import com.njcn.device.pq.pojo.vo.RunManageVO;
import com.njcn.device.pq.pojo.vo.RunTimeVO;
import com.njcn.device.pq.pojo.vo.TerminalLedgerVO;
import com.njcn.device.pq.service.LineService;
import com.njcn.device.pq.service.RunManageService;
import com.njcn.device.pq.service.TerminalBaseService;
import com.njcn.supervision.api.UserLedgerFeignClient;
import com.njcn.supervision.pojo.vo.user.NewUserReportVO;
import com.njcn.supervision.pojo.vo.user.UserLedgerVO;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.enums.StatisticsEnum;

View File

@@ -4,13 +4,14 @@ package com.njcn.device.pq.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.common.service.TerminalBaseService;
import com.njcn.device.pq.pojo.bo.DeviceType;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
import com.njcn.device.pq.pojo.param.DeviceInfoParam;
import com.njcn.device.pq.pojo.vo.CommunicateVO;
import com.njcn.device.pq.pojo.vo.TerminalBaseVO;
import com.njcn.device.pq.service.ISubstationExpendService;
import com.njcn.device.pq.service.TerminalBaseService;
import com.njcn.influx.imapper.PqsCommunicateMapper;
import com.njcn.influx.pojo.constant.InfluxDBTableConstant;
import com.njcn.influx.pojo.po.PqsCommunicate;

View File

@@ -5,22 +5,19 @@ import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.device.line.mapper.LineDetailMapper;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.enums.PowerFlagEnum;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.SubstationMapper;
import com.njcn.device.pq.mapper.VoltageMapper;
import com.njcn.device.pq.pojo.dto.SubstationDTO;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.pq.pojo.po.LineDetail;
import com.njcn.device.pq.pojo.po.Substation;
import com.njcn.device.pq.pojo.po.Voltage;
import com.njcn.device.pq.pojo.vo.LedgerSelectVO;
import com.njcn.device.pq.pojo.vo.LineDetailVO;
import com.njcn.device.pq.service.ISubstationService;
import com.njcn.device.substation.mapper.SubstationMapper;
import com.njcn.device.subvoltage.mapper.VoltageMapper;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.RequiredArgsConstructor;

View File

@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.njcn.common.config.GeneralInfo;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.pq.api.AlarmClient;
import com.njcn.device.biz.enums.DeviceResponseEnum;
import com.njcn.device.pq.enums.LineBaseEnum;

View File

@@ -9,10 +9,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.njcn.common.pojo.enums.common.ServerEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.device.biz.pojo.vo.TerminalSelectTreeVO;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.line.mapper.DeptLineMapper;
import com.njcn.device.line.mapper.LineDetailMapper;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.mapper.DeptLineMapper;
import com.njcn.device.pq.mapper.LineDetailMapper;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.TreeMapper;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
import com.njcn.device.pq.pojo.param.DeviceInfoParam;
@@ -25,7 +26,6 @@ import com.njcn.supervision.api.UserLedgerFeignClient;
import com.njcn.supervision.pojo.param.user.UserReportParam;
import com.njcn.supervision.pojo.vo.user.UserLedgerVO;
import com.njcn.system.api.AreaFeignClient;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.pojo.enums.StatisticsEnum;
import com.njcn.system.pojo.po.Area;
import com.njcn.web.utils.RequestUtil;

View File

@@ -5,13 +5,13 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.njcn.device.biz.pojo.dto.SubGetBase;
import com.njcn.device.biz.pojo.param.SubstationParam;
import com.njcn.device.pq.mapper.SubstationMapper;
import com.njcn.device.pq.mapper.YwZtSubstationMapper;
import com.njcn.device.pq.pojo.po.Substation;
import com.njcn.device.pq.pojo.po.YwZtSubstation;
import com.njcn.device.pq.service.ISubstationService;
import com.njcn.device.pq.service.IYwZtSubstationService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.device.substation.mapper.SubstationMapper;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO;
import com.njcn.user.pojo.po.Dept;

View File

@@ -0,0 +1,53 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.njcn</groupId>
<artifactId>pq-device</artifactId>
<version>1.0.0</version>
</parent>
<artifactId>pq-device-com</artifactId>
<name>传统设备通用业务</name>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>pq-device-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>common-web</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>supervision-api</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.njcn</groupId>
<artifactId>common-oss</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.njcn.platform</groupId>
<artifactId>message-api</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.common.mapper;
import com.njcn.device.pq.pojo.param.BaseReamParam;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.common.mapper;
import cn.hutool.core.date.DateTime;

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.SuperDataMapper">
<mapper namespace="com.njcn.device.common.mapper.SuperDataMapper">
<select id="getPointSuper" resultType="com.njcn.device.pq.pojo.param.SuperDataParam">

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.TopMsgMapper">
<mapper namespace="com.njcn.device.common.mapper.TopMsgMapper">
<select id="dailyDeviceAbnormalStatistics" resultType="com.njcn.device.pq.pojo.po.TopMsgPO">
SELECT

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service.impl;
package com.njcn.device.common.service;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
@@ -9,24 +9,24 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.common.pojo.enums.common.ServerEnum;
import com.njcn.common.utils.EnumUtils;
import com.njcn.device.common.mapper.TopMsgMapper;
import com.njcn.device.device.mapper.DeviceMapper;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.line.service.DeptLineService;
import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.enums.PowerFlagEnum;
import com.njcn.device.pq.mapper.DeviceMapper;
import com.njcn.device.pq.mapper.LineMapper;
import com.njcn.device.pq.mapper.TopMsgMapper;
import com.njcn.device.pq.pojo.bo.BaseLineInfo;
import com.njcn.device.pq.pojo.bo.DeviceType;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
import com.njcn.device.pq.pojo.param.DeviceInfoParam;
import com.njcn.device.pq.pojo.param.OnlineRateParam;
import com.njcn.device.pq.pojo.po.*;
import com.njcn.device.pq.pojo.po.DeptLine;
import com.njcn.device.pq.pojo.po.Device;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.pq.pojo.po.TopMsgPO;
import com.njcn.device.pq.pojo.vo.DeptDeviceDetailVO;
import com.njcn.device.pq.pojo.vo.DeptSubstationDetailVO;
import com.njcn.device.pq.pojo.vo.DevDetail;
import com.njcn.device.pq.pojo.vo.ExceptionDeviceInfoVO;
import com.njcn.device.pq.service.DeptLineService;
import com.njcn.device.pq.service.TerminalBaseService;
import com.njcn.redis.utils.RedisUtil;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
@@ -66,11 +66,10 @@ public class GeneralDeviceService {
private final DicDataFeignClient dicDataFeignClient;
private final RedisUtil redisUtil;
private final DeviceMapper deviceMapper;
private final LineMapper lineMapper;
private final TopMsgMapper topMsgMapper;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service;
package com.njcn.device.common.service;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.device.pq.pojo.bo.BaseLineInfo;
@@ -8,7 +8,6 @@ import com.njcn.device.pq.pojo.dto.PreCommandDTO;
import com.njcn.device.pq.pojo.dto.PushResultDTO;
import com.njcn.device.pq.pojo.param.*;
import com.njcn.device.pq.pojo.po.Line;
import com.njcn.device.pq.pojo.vo.DevStatusNumVO;
import com.njcn.device.pq.pojo.vo.LineWiringDiagramVO;
import com.njcn.device.pq.pojo.vo.TerminalBaseVO;
import com.njcn.device.pq.pojo.vo.TerminalVO;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service.impl;
package com.njcn.device.common.service.impl;
import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.ExcelImportUtil;
@@ -16,9 +16,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
import com.njcn.common.pojo.dto.SimpleDTO;
import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
@@ -32,10 +29,22 @@ import com.njcn.device.biz.pojo.dto.LineDTO;
import com.njcn.device.biz.pojo.po.DeviceBak;
import com.njcn.device.biz.pojo.po.Overlimit;
import com.njcn.device.biz.utils.COverlimitUtil;
import com.njcn.device.common.mapper.SuperDataMapper;
import com.njcn.device.common.service.TerminalBaseService;
import com.njcn.device.device.mapper.DevFuctionMapper;
import com.njcn.device.device.mapper.DeviceMapper;
import com.njcn.device.device.service.DeviceBakService;
import com.njcn.device.device.service.DeviceProcessService;
import com.njcn.device.device.service.NodeDeviceService;
import com.njcn.device.line.mapper.DeptLineMapper;
import com.njcn.device.line.mapper.LineDetailMapper;
import com.njcn.device.line.mapper.LineMapper;
import com.njcn.device.line.service.LineBakService;
import com.njcn.device.node.service.INodeService;
import com.njcn.device.overlimit.mapper.OverlimitMapper;
import com.njcn.device.pq.constant.Param;
import com.njcn.device.pq.enums.LineBaseEnum;
import com.njcn.device.pq.enums.PvDeviceResponseEnum;
import com.njcn.device.pq.mapper.*;
import com.njcn.device.pq.pojo.bo.BaseLineInfo;
import com.njcn.device.pq.pojo.bo.DeviceType;
import com.njcn.device.pq.pojo.bo.excel.NodeExcel;
@@ -47,9 +56,11 @@ import com.njcn.device.pq.pojo.param.*;
import com.njcn.device.pq.pojo.param.oracle.*;
import com.njcn.device.pq.pojo.po.*;
import com.njcn.device.pq.pojo.vo.*;
import com.njcn.device.pq.service.*;
import com.njcn.device.pq.utils.DeviceUtil;
import com.njcn.device.pq.utils.ExcelStyleUtil;
import com.njcn.device.substation.mapper.SubstationMapper;
import com.njcn.device.subvoltage.mapper.VoltageMapper;
import com.njcn.device.terminal.mapper.PqsTerminalLogsMapper;
import com.njcn.device.utils.ExcelStyleUtil;
import com.njcn.message.api.ProduceFeignClient;
import com.njcn.message.constant.DeviceRebootType;
import com.njcn.message.constant.RedisKeyPrefix;
@@ -63,12 +74,10 @@ import com.njcn.poi.util.PoiUtil;
import com.njcn.redis.utils.RedisUtil;
import com.njcn.supervision.api.UserLedgerFeignClient;
import com.njcn.supervision.pojo.vo.user.UserLedgerVO;
import com.njcn.supervision.pojo.vo.user.UserReportVO;
import com.njcn.system.api.AreaFeignClient;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.enums.DicTreeEnum;
import com.njcn.system.pojo.po.Area;
import com.njcn.system.pojo.po.DictData;
import com.njcn.web.utils.RequestUtil;
@@ -92,8 +101,6 @@ import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.*;
import java.util.function.Function;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -4129,8 +4136,6 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
pushResultDTO.setCode("2");
pushResultDTO.setResult("");
}else {
TopicReplyDTO topicReplyDTO =JSONObject.parseObject(stringByKey,TopicReplyDTO.class);
pushResultDTO.setCode("1");
pushResultDTO.setResult(topicReplyDTO.getResult());

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.controller;
package com.njcn.device.device.controller;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Console;
@@ -12,6 +12,8 @@ import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.common.service.GeneralDeviceService;
import com.njcn.device.device.service.IDeviceService;
import com.njcn.device.pq.pojo.dto.DevComFlagDTO;
import com.njcn.device.pq.pojo.dto.DeviceDTO;
import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO;
@@ -19,8 +21,6 @@ import com.njcn.device.pq.pojo.param.ConstantValueParam;
import com.njcn.device.pq.pojo.param.DeviceInfoParam;
import com.njcn.device.pq.pojo.po.Device;
import com.njcn.device.pq.pojo.vo.DevStatusNumVO;
import com.njcn.device.pq.service.IDeviceService;
import com.njcn.device.pq.service.impl.GeneralDeviceService;
import com.njcn.web.controller.BaseController;
import com.njcn.web.utils.RequestUtil;
import io.swagger.annotations.Api;

View File

@@ -1,14 +1,14 @@
package com.njcn.device.pq.controller;
package com.njcn.device.device.controller;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.device.service.TerminalVersionService;
import com.njcn.device.pq.pojo.param.TerminalMainQueryParam;
import com.njcn.device.pq.pojo.po.DevVersion;
import com.njcn.device.pq.pojo.vo.TerminalVersionVO;
import com.njcn.device.pq.service.TerminalVersionService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -29,7 +29,7 @@ import java.util.List;
@RestController
@RequestMapping("/version")
@RequiredArgsConstructor
public class TerminalVersionController extends BaseController {
public class DeviceVersionController extends BaseController {
private final TerminalVersionService terminalVersionService;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.controller;
package com.njcn.device.device.controller;
import com.njcn.common.pojo.annotation.OperateInfo;
@@ -6,15 +6,13 @@ import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.device.service.NodeDeviceService;
import com.njcn.device.pq.pojo.dto.DeviceInfo;
import com.njcn.device.pq.pojo.dto.NodeProcessDeviceTree;
import com.njcn.device.pq.pojo.param.NodeDeviceParam;
import com.njcn.device.pq.pojo.po.DeviceProcess;
import com.njcn.device.pq.service.NodeDeviceService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.controller;
package com.njcn.device.device.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -10,16 +10,19 @@ import com.njcn.common.pojo.enums.common.LogEnum;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.device.service.PqDevTypeService;
import com.njcn.device.pq.pojo.param.PqDevTypeParam;
import com.njcn.device.pq.pojo.po.PqDevType;
import com.njcn.device.pq.service.PqDevTypeService;
import com.njcn.web.controller.BaseController;
import com.njcn.web.pojo.param.BaseParam;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.controller;
package com.njcn.device.device.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.annotation.OperateInfo;
@@ -7,9 +7,9 @@ import com.njcn.common.pojo.enums.response.CommonResponseEnum;
import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.common.pojo.response.HttpResult;
import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.device.service.ProgramVersionService;
import com.njcn.device.pq.pojo.param.ProgramParam;
import com.njcn.device.pq.pojo.vo.VersionVO;
import com.njcn.device.pq.service.ProgramVersionService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.device.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.device.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.device.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.device.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.device.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.device.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@@ -0,0 +1,20 @@
package com.njcn.device.device.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.device.pq.pojo.po.DeviceProcess;
/**
* <p>
* Mapper 接口
* </p>
*
* @author cdf
* @since 2022-01-04
*/
public interface DeviceProcessMapper extends BaseMapper<DeviceProcess> {
}

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.device.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.njcn.device.pq.pojo.po.PqDevType;

View File

@@ -1,9 +1,8 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.device.mapper;
import com.njcn.device.pq.pojo.param.ProgramParam;
import com.njcn.device.pq.pojo.vo.ShowVersionVO;
import com.njcn.device.pq.pojo.vo.VersionVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;

View File

@@ -1,8 +1,7 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.device.mapper;
import com.njcn.device.pq.pojo.param.TerminalMainQueryParam;
import com.njcn.device.pq.pojo.po.DevVersion;
import com.njcn.device.pq.pojo.vo.TerminalMaintainVO;
import com.njcn.device.pq.pojo.vo.TerminalVersionVO;
import org.apache.ibatis.annotations.Param;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.mapper;
package com.njcn.device.device.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.DevFuctionMapper">
<mapper namespace="com.njcn.device.device.mapper.DevFuctionMapper">
<insert id="addBatch">
insert into cld_dev_fuction (id,line_id,fuc_name) values

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.DevStrategyMapper">
<mapper namespace="com.njcn.device.device.mapper.DevMealMapper">
</mapper>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.DevMealMapper">
<mapper namespace="com.njcn.device.device.mapper.DevStrategyMapper">
</mapper>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.DevVersionMapper">
<mapper namespace="com.njcn.device.device.mapper.DevVersionMapper">
</mapper>

View File

@@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.DeviceProcessMapper">
<mapper namespace="com.njcn.device.device.mapper.DeviceBakMapper">
</mapper>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.DeviceMapper">
<mapper namespace="com.njcn.device.device.mapper.DeviceMapper">
<select id="getDeviceBySubId" resultType="com.njcn.device.pq.pojo.po.Device">

View File

@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.DeviceBakMapper">
<mapper namespace="com.njcn.device.device.mapper.DeviceProcessMapper">
</mapper>

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.PqDevTypeMapper">
<mapper namespace="com.njcn.device.device.mapper.PqDevTypeMapper">
</mapper>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.ProgramVersionMapper">
<mapper namespace="com.njcn.device.device.mapper.ProgramVersionMapper">
<select id="getVersion" resultType="VersionVO">
SELECT

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.TerminalVersionMapper">
<mapper namespace="com.njcn.device.device.mapper.TerminalVersionMapper">
<select id="getTerminalVersionInfo" resultType="TerminalVersionVO">

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njcn.device.pq.mapper.VersionMapper">
<mapper namespace="com.njcn.device.device.mapper.VersionMapper">
<select id="selectVersion" resultType="com.njcn.device.pq.pojo.vo.VersionVO">
select

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service;
package com.njcn.device.device.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.device.pq.pojo.po.DevFuction;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service;
package com.njcn.device.device.service;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@@ -1,8 +1,7 @@
package com.njcn.device.pq.service;
package com.njcn.device.device.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.device.biz.pojo.po.DeviceBak;
import com.njcn.device.pq.pojo.po.DeviceProcess;
/**

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service;
package com.njcn.device.device.service;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service;
package com.njcn.device.device.service;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service;
package com.njcn.device.device.service;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@@ -1,10 +1,9 @@
package com.njcn.device.pq.service;
package com.njcn.device.device.service;
import com.njcn.device.pq.pojo.dto.DeviceInfo;
import com.njcn.device.pq.pojo.dto.NodeProcessDeviceTree;
import com.njcn.device.pq.pojo.param.NodeDeviceParam;
import com.njcn.device.pq.pojo.po.DeviceProcess;
import org.springframework.stereotype.Service;
import java.util.List;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service;
package com.njcn.device.device.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service;
package com.njcn.device.device.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

View File

@@ -1,4 +1,4 @@
package com.njcn.device.pq.service;
package com.njcn.device.device.service;
import com.njcn.device.pq.pojo.param.TerminalMainQueryParam;
import com.njcn.device.pq.pojo.po.DevVersion;

View File

@@ -1,10 +1,9 @@
package com.njcn.device.pq.service.impl;
package com.njcn.device.device.service.impl;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.device.pq.mapper.DevFuctionMapper;
import com.njcn.device.device.mapper.DevFuctionMapper;
import com.njcn.device.pq.pojo.po.DevFuction;
import com.njcn.device.pq.service.DevFuctionService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
/**
@@ -13,6 +12,6 @@ import org.springframework.stereotype.Service;
* @date 2022/05/24
*/
@Service
public class DevFuctionServiceImpl extends ServiceImpl<DevFuctionMapper, DevFuction> implements DevFuctionService {
public class DevFuctionServiceImpl extends ServiceImpl<DevFuctionMapper, DevFuction> implements IService<DevFuction> {
}

View File

@@ -1,10 +1,10 @@
package com.njcn.device.pq.service.impl;
package com.njcn.device.device.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.device.pq.mapper.DevMealMapper;
import com.njcn.device.device.mapper.DevMealMapper;
import com.njcn.device.device.service.IDevMealService;
import com.njcn.device.pq.pojo.po.DevMeal;
import com.njcn.device.pq.service.IDevMealService;
import org.springframework.stereotype.Service;
/**

Some files were not shown because too many files have changed in this diff Show More