录波功能完善
This commit is contained in:
@@ -1013,6 +1013,7 @@ public class SocketContrastResponseService {
|
||||
webSend.setCode(SourceResponseCodeEnum.ALL_SUCCESS.getCode());//最终成功推送
|
||||
WebServiceManager.sendMsg(param.getUserPageId(), JSON.toJSONString(webSend));
|
||||
// 修改设备状态
|
||||
|
||||
pqDevService.updateResult(true, param.getDevIds(), adTypes, code, param.getUserId(), param.getTemperature(), param.getHumidity());
|
||||
}
|
||||
}
|
||||
@@ -1121,7 +1122,7 @@ public class SocketContrastResponseService {
|
||||
FormalTestManager.pairsIpMap,
|
||||
FormalTestManager.devIdMapComm,
|
||||
FormalTestManager.testItemMap.keySet().stream().collect(Collectors.toList()),
|
||||
errorSysId, DictDataEnum.Own_value, FormalTestManager.numMap, code, FormalTestManager.waveNum);
|
||||
errorSysId, FormalTestManager.dataRule, FormalTestManager.numMap, code, FormalTestManager.waveNum);
|
||||
|
||||
Map<String, List<DevLineTestResult>> deviceIdMap = allResultList.stream().collect(Collectors.groupingBy(DevLineTestResult::getDeviceId, Collectors.toList()));
|
||||
deviceIdMap.forEach((deviceId, devLineTestResultList) -> {
|
||||
@@ -1190,7 +1191,7 @@ public class SocketContrastResponseService {
|
||||
|
||||
List<String> adTypes = FormalTestManager.testItemMap.values().stream().collect(Collectors.toList());
|
||||
// 修改设备状态
|
||||
pqDevService.updateResult(true, param.getDevIds(), adTypes, code, param.getUserId(), param.getTemperature(), param.getHumidity());
|
||||
//pqDevService.updateResult(true, param.getDevIds(), adTypes, code, param.getUserId(), param.getTemperature(), param.getHumidity());
|
||||
|
||||
// 最终将检测结果推送到前端
|
||||
webSend.setCode(SourceResponseCodeEnum.ALL_SUCCESS.getCode());
|
||||
@@ -2177,7 +2178,8 @@ public class SocketContrastResponseService {
|
||||
WaveCommandDTO waveCommandDTO = new WaveCommandDTO();
|
||||
waveCommandDTO.setIp(preDetection.getDevIP());
|
||||
waveCommandDTO.setPort(preDetection.getPort());
|
||||
waveCommandDTO.setOper("RDRE1$CO$RcdTrg$Oper");
|
||||
waveCommandDTO.setOper(preDetection.getWaveCmd());
|
||||
// waveCommandDTO.setOper("RDRE1$CO$RcdTrg$Oper");
|
||||
waveCommandDTO.setLine(monitorListDTO.getLine());
|
||||
waveCommandDTOList.add(waveCommandDTO);
|
||||
});
|
||||
@@ -2187,7 +2189,8 @@ public class SocketContrastResponseService {
|
||||
WaveCommandDTO waveCommandDTO = new WaveCommandDTO();
|
||||
waveCommandDTO.setIp(preDetection.getDevIP());
|
||||
waveCommandDTO.setPort(preDetection.getPort());
|
||||
waveCommandDTO.setOper("RDRE1$CO$RcdTrg$Oper");
|
||||
waveCommandDTO.setOper(preDetection.getWaveCmd());
|
||||
// waveCommandDTO.setOper("RDRE1$CO$RcdTrg$Oper");
|
||||
waveCommandDTO.setLine(monitorListDTO.getLine());
|
||||
waveCommandDTOList.add(waveCommandDTO);
|
||||
});
|
||||
@@ -2199,12 +2202,12 @@ public class SocketContrastResponseService {
|
||||
}
|
||||
|
||||
private List<List<DevData>> analyzeWaveFile(WaveResultDTO devWaveResultDTO, WaveResultDTO stdDevWaveResultDTO, PreDetection.MonitorListDTO monitorListDTO, String devMonitorId, String stdDevMonitorId, List<String> adTypeCodeList) {
|
||||
// String stdDevCfgPath = stdDevWaveResultDTO.getPath().replaceAll("\\\\", "/").replace(".CFG",".cfg");
|
||||
// String devCfgPath = devWaveResultDTO.getPath().replaceAll("\\\\", "/").replace(".CFG",".cfg");
|
||||
String stdDevCfgPath = stdDevWaveResultDTO.getPath().replaceAll("\\\\", "/").replace(".CFG", ".cfg");
|
||||
String devCfgPath = devWaveResultDTO.getPath().replaceAll("\\\\", "/").replace(".CFG", ".cfg");
|
||||
|
||||
String stdDevCfgPath = "D:\\数据比对\\统计数据1\\B码\\216\\PQMonitor_PQM1_000001_20200430_113404_845.cfg";
|
||||
// String stdDevCfgPath = "D:\\数据比对\\统计数据1\\B码\\216\\PQMonitor_PQM1_000001_20200430_113404_845.cfg";
|
||||
String stdDevDatPath = stdDevCfgPath.replaceAll(".cfg", ".dat");
|
||||
String devCfgPath = "D:\\数据比对\\统计数据1\\B码\\217\\PQMonitor_PQM1_000001_20200430_113407_075.cfg";
|
||||
// String devCfgPath = "D:\\数据比对\\统计数据1\\B码\\217\\PQMonitor_PQM1_000001_20200430_113407_075.cfg";
|
||||
String devDatPath = devCfgPath.replaceAll(".cfg", ".dat");
|
||||
|
||||
// 验证文件是否存在
|
||||
@@ -2297,16 +2300,16 @@ public class SocketContrastResponseService {
|
||||
String code = adTypeCode.replace(DetectionCodeEnum.REAL_PREFIX.getCode(), "");
|
||||
DetectionCodeEnum detectionCodeEnum = DetectionCodeEnum.getDetectionCodeByCode(code);
|
||||
switch (detectionCodeEnum) {
|
||||
case FREQ:
|
||||
// 频率
|
||||
sqlDataDTO = new DevData.SqlDataDTO();
|
||||
sqlDataDTO.setDesc(DetectionCodeEnum.FREQ.getCode());
|
||||
sqlDataDTO.setType("real");
|
||||
listDTO = new DevData.SqlDataDTO.ListDTO();
|
||||
listDTO.setT((double) pointDevData.getFreq()[0]);
|
||||
sqlDataDTO.setList(listDTO);
|
||||
sqlDataDTOS.add(sqlDataDTO);
|
||||
break;
|
||||
// case FREQ:
|
||||
// // 频率
|
||||
// sqlDataDTO = new DevData.SqlDataDTO();
|
||||
// sqlDataDTO.setDesc(DetectionCodeEnum.FREQ.getCode());
|
||||
// sqlDataDTO.setType("real");
|
||||
// listDTO = new DevData.SqlDataDTO.ListDTO();
|
||||
// listDTO.setT((double) pointDevData.getFreq()[0]);
|
||||
// sqlDataDTO.setList(listDTO);
|
||||
// sqlDataDTOS.add(sqlDataDTO);
|
||||
// break;
|
||||
case VRMS:
|
||||
// 相电压有效值
|
||||
sqlDataDTO = new DevData.SqlDataDTO();
|
||||
@@ -2407,9 +2410,9 @@ public class SocketContrastResponseService {
|
||||
sqlDataDTO.setDesc(DetectionCodeEnum.I1.getCode());
|
||||
sqlDataDTO.setType("real");
|
||||
listDTO = new DevData.SqlDataDTO.ListDTO();
|
||||
listDTO.setA((double) pointDevData.getFuHarm()[3][0]);
|
||||
listDTO.setB((double) pointDevData.getFuHarm()[4][0]);
|
||||
listDTO.setC((double) pointDevData.getFuHarm()[5][0]);
|
||||
listDTO.setA((double) pointDevData.getInHarm()[3][0]);
|
||||
listDTO.setB((double) pointDevData.getInHarm()[4][0]);
|
||||
listDTO.setC((double) pointDevData.getInHarm()[5][0]);
|
||||
sqlDataDTO.setList(listDTO);
|
||||
sqlDataDTOS.add(sqlDataDTO);
|
||||
|
||||
@@ -2496,6 +2499,16 @@ public class SocketContrastResponseService {
|
||||
case PSV_1_49:
|
||||
break;
|
||||
case SI_1_49:
|
||||
sqlDataDTO = new DevData.SqlDataDTO();
|
||||
sqlDataDTO.setDesc(DetectionCodeEnum.I1.getCode());
|
||||
sqlDataDTO.setType("real");
|
||||
listDTO = new DevData.SqlDataDTO.ListDTO();
|
||||
listDTO.setA((double) pointDevData.getInHarm()[3][0]);
|
||||
listDTO.setB((double) pointDevData.getInHarm()[4][0]);
|
||||
listDTO.setC((double) pointDevData.getInHarm()[5][0]);
|
||||
sqlDataDTO.setList(listDTO);
|
||||
sqlDataDTOS.add(sqlDataDTO);
|
||||
|
||||
// 间谐波电流幅值
|
||||
sqlDataHarmDTOI = new DevData.SqlDataHarmDTO();
|
||||
sqlDataHarmDTOI.setDesc(DetectionCodeEnum.SI_1_49.getCode());
|
||||
@@ -2507,7 +2520,7 @@ public class SocketContrastResponseService {
|
||||
cListI = new ArrayList<>();
|
||||
|
||||
// 前50次间谐波
|
||||
for (int harm = 0; harm < 50; harm++) {
|
||||
for (int harm = 1; harm < 51; harm++) {
|
||||
// 间谐波电流
|
||||
aListI.add(String.format("%.7f", pointDevData.getInHarm()[3][harm]));
|
||||
bListI.add(String.format("%.7f", pointDevData.getInHarm()[4][harm]));
|
||||
|
||||
@@ -1150,6 +1150,9 @@ public class DetectionServiceImpl {
|
||||
break;
|
||||
case AVG_VALUE:
|
||||
newValue.addAll(DetectionUtil.getAvgDoubles(value));
|
||||
case Own_value:
|
||||
case AT_WILL_VALUE:
|
||||
newValue.addAll(value);
|
||||
break;
|
||||
}
|
||||
value.clear();
|
||||
|
||||
@@ -7,15 +7,14 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.njcn.gather.detection.pojo.param.ContrastDetectionParam;
|
||||
import com.njcn.gather.detection.pojo.param.PreDetectionParam;
|
||||
import com.njcn.gather.detection.util.socket.cilent.NettyClient;
|
||||
import com.njcn.gather.detection.util.socket.cilent.NettyContrastClientHandler;
|
||||
import com.njcn.gather.detection.util.socket.config.SocketConnectionConfig;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import com.njcn.gather.plan.pojo.enums.DataSourceEnum;
|
||||
import com.njcn.gather.script.pojo.po.SourceIssue;
|
||||
import io.netty.channel.Channel;
|
||||
import io.netty.channel.nio.NioEventLoopGroup;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.HashMap;
|
||||
@@ -28,7 +27,7 @@ import java.util.concurrent.CopyOnWriteArrayList;
|
||||
/**
|
||||
* Socket连接管理器
|
||||
* 提供Socket连接的生命周期管理、消息发送、检测任务管理等功能
|
||||
*
|
||||
* <p>
|
||||
* 包含以下主要功能:
|
||||
* 1. 基础连接管理:addUser, removeUser, sendMsg等
|
||||
* 2. 智能消息发送:smartSendToSource, smartSendToDevice等(新增)
|
||||
@@ -66,16 +65,16 @@ public class SocketManager {
|
||||
|
||||
public static void removeUser(String userId) {
|
||||
Channel channel = socketSessions.get(userId);
|
||||
if(ObjectUtil.isNotNull(channel)){
|
||||
if (ObjectUtil.isNotNull(channel)) {
|
||||
try {
|
||||
channel.close().sync();
|
||||
} catch (InterruptedException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
NioEventLoopGroup eventExecutors = socketGroup.get(userId);
|
||||
if(ObjectUtil.isNotNull(eventExecutors)){
|
||||
if (ObjectUtil.isNotNull(eventExecutors)) {
|
||||
eventExecutors.shutdownGracefully();
|
||||
System.out.println(userId+"__"+channel.id()+"关闭了客户端");
|
||||
System.out.println(userId + "__" + channel.id() + "关闭了客户端");
|
||||
}
|
||||
}
|
||||
socketSessions.remove(userId);
|
||||
@@ -90,12 +89,12 @@ public class SocketManager {
|
||||
return socketGroup.get(userId);
|
||||
}
|
||||
|
||||
public static void sendMsg(String userId,String msg) {
|
||||
public static void sendMsg(String userId, String msg) {
|
||||
Channel channel = socketSessions.get(userId);
|
||||
if(ObjectUtil.isNotNull(channel)){
|
||||
channel.writeAndFlush(msg+'\n');
|
||||
if (ObjectUtil.isNotNull(channel)) {
|
||||
channel.writeAndFlush(msg + '\n');
|
||||
log.info("{}__{}往{}发送数据:{}", userId, channel.id(), channel.remoteAddress(), msg);
|
||||
}else{
|
||||
} else {
|
||||
log.warn("{}__发送数据:失败通道不存在{}", userId, msg);
|
||||
}
|
||||
}
|
||||
@@ -188,6 +187,13 @@ public class SocketManager {
|
||||
NettyClient.connectToContrastDeviceStatic(ip, port, param, msg);
|
||||
});
|
||||
return;
|
||||
} else {
|
||||
PreDetectionParam preDetectionParam = new PreDetectionParam();
|
||||
preDetectionParam.setUserPageId(param.getLoginName());
|
||||
preDetectionParam.setTestItemList(param.getTestItemList());
|
||||
preDetectionParam.setDevIds(param.getDevIds());
|
||||
preDetectionParam.setUserId(param.getUserId());
|
||||
NettyContrastClientHandler.param = preDetectionParam;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -197,8 +203,6 @@ public class SocketManager {
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
// =================== 私有工具方法 ===================
|
||||
|
||||
/**
|
||||
@@ -271,7 +275,7 @@ public class SocketManager {
|
||||
/**
|
||||
* 用于存储每个测试小项超时时长key key:检测项 value:时间秒
|
||||
*/
|
||||
public static volatile Map<Integer,Long> clockMap = new ConcurrentHashMap<>();
|
||||
public static volatile Map<Integer, Long> clockMap = new ConcurrentHashMap<>();
|
||||
|
||||
/**
|
||||
* 用于存储比对式测试时间。
|
||||
@@ -279,7 +283,6 @@ public class SocketManager {
|
||||
public static volatile Map<DataSourceEnum, Long> contrastClockMap = new ConcurrentHashMap<>();
|
||||
|
||||
|
||||
|
||||
public static void addSourceList(List<SourceIssue> sList) {
|
||||
sourceIssueList = sList;
|
||||
}
|
||||
@@ -302,8 +305,8 @@ public class SocketManager {
|
||||
targetMap = map;
|
||||
}
|
||||
|
||||
public static void addTargetMap(String scriptType,Long count) {
|
||||
targetMap.put(scriptType,count);
|
||||
public static void addTargetMap(String scriptType, Long count) {
|
||||
targetMap.put(scriptType, count);
|
||||
}
|
||||
|
||||
public static Long getSourceTarget(String scriptType) {
|
||||
@@ -311,6 +314,5 @@ public class SocketManager {
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -128,7 +128,9 @@ public class NettyClient {
|
||||
preDetectionParam.setTestItemList(param.getTestItemList());
|
||||
preDetectionParam.setDevIds(param.getDevIds());
|
||||
preDetectionParam.setUserId(param.getUserId());
|
||||
NettyContrastClientHandler handler = new NettyContrastClientHandler(preDetectionParam, socketContrastResponseService);
|
||||
NettyContrastClientHandler handler = new NettyContrastClientHandler();
|
||||
handler.param = preDetectionParam;
|
||||
handler.socketContrastResponseService = socketContrastResponseService;
|
||||
executeSocketConnection(ip, port, preDetectionParam, msg, handler);
|
||||
}
|
||||
|
||||
@@ -265,7 +267,7 @@ public class NettyClient {
|
||||
PreDetectionParam param, SimpleChannelInboundHandler<String> handler) {
|
||||
// 基础编解码器:处理数据格式转换和粘包拆包
|
||||
// 按行分割,最大20KB
|
||||
pipeline.addLast(new LineBasedFrameDecoder(10240*2))
|
||||
pipeline.addLast(new LineBasedFrameDecoder(10240 * 2))
|
||||
// 字节转字符串
|
||||
.addLast(new StringDecoder(CharsetUtil.UTF_8))
|
||||
// 字符串转字节
|
||||
|
||||
@@ -36,8 +36,8 @@ import java.util.Objects;
|
||||
public class NettyContrastClientHandler extends SimpleChannelInboundHandler<String> {
|
||||
|
||||
|
||||
private final PreDetectionParam param;
|
||||
private final SocketContrastResponseService socketContrastResponseService;
|
||||
public static PreDetectionParam param;
|
||||
public static SocketContrastResponseService socketContrastResponseService;
|
||||
|
||||
@Override
|
||||
public void channelActive(ChannelHandlerContext ctx) throws Exception {
|
||||
|
||||
@@ -374,9 +374,11 @@ public class WebSocketHandler extends SimpleChannelInboundHandler<TextWebSocketF
|
||||
if (FormalTestManager.patternEnum.equals(PatternEnum.CONTRAST)) {
|
||||
if (!FormalTestManager.isRemoveSocket) {
|
||||
if (FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP1 || FormalTestManager.currentStep == SourceOperateCodeEnum.RECORD_WAVE_STEP2) {
|
||||
CnSocketUtil.contrastSendquit(preDetectionParam.getUserPageId(), SourceOperateCodeEnum.DEV_INIT_GATHER_03, true);
|
||||
CnSocketUtil.contrastSendquit(preDetectionParam.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_03, true);
|
||||
} else if (FormalTestManager.currentStep != SourceOperateCodeEnum.QUITE) {
|
||||
CnSocketUtil.contrastSendquit(preDetectionParam.getUserPageId(), SourceOperateCodeEnum.DEV_INIT_GATHER_02, true);
|
||||
CnSocketUtil.contrastSendquit(preDetectionParam.getUserPageId(), SourceOperateCodeEnum.QUIT_INIT_02, true);
|
||||
} else {
|
||||
SocketManager.removeUser(preDetectionParam.getUserPageId());
|
||||
}
|
||||
} else {
|
||||
boolean channelActive = SocketManager.isChannelActive(preDetectionParam.getUserPageId() + CnSocketUtil.CONTRAST_DEV_TAG);
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
<result column="Dev_Curr" property="devCurr"/>
|
||||
<result column="Angle" property="angle"/>
|
||||
<result column="Use_Phase_Index" property="usePhaseIndex"/>
|
||||
<result column="Wave_Cmd" property="waveCmd"/>
|
||||
|
||||
<collection
|
||||
property="monitorList"
|
||||
@@ -39,7 +40,8 @@
|
||||
t.Dev_Volt,
|
||||
t.Dev_Curr,
|
||||
p.Angle,
|
||||
p.Use_Phase_Index
|
||||
p.Use_Phase_Index,
|
||||
t.Wave_Cmd
|
||||
FROM
|
||||
pq_dev d
|
||||
inner join pq_dev_type t on d.Dev_Type = t.id
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
<result column="Dev_Curr" property="devCurr"/>
|
||||
<result column="Angle" property="angle"/>
|
||||
<result column="Use_Phase_Index" property="usePhaseIndex"/>
|
||||
<result column="Wave_Cmd" property="waveCmd"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="listStandardDevPreDetection" resultMap="standardDevResultMap">
|
||||
@@ -33,7 +34,8 @@
|
||||
dev_type.Dev_Volt,
|
||||
dev_type.Dev_Curr,
|
||||
icd_path.Angle,
|
||||
icd_path.Use_Phase_Index
|
||||
icd_path.Use_Phase_Index,
|
||||
dev_type.Wave_Cmd
|
||||
from pq_standard_dev standard_dev
|
||||
inner join pq_dev_type dev_type on standard_dev.Dev_Type = dev_type.id
|
||||
inner join pq_icd_path icd_path on dev_type.icd = icd_path.id
|
||||
|
||||
@@ -50,21 +50,6 @@ public class PqDevSub {
|
||||
*/
|
||||
private Integer factorCheckResult;
|
||||
|
||||
/**
|
||||
* 实时数据结果 0:不合格,1:合格,2:未检
|
||||
*/
|
||||
private Integer realtimeResult;
|
||||
|
||||
/**
|
||||
* 统计数据结果 0:不合格,1:合格,2:未检
|
||||
*/
|
||||
private Integer statisticsResult;
|
||||
|
||||
/**
|
||||
* 录波数据结果 0:不合格,1:合格,2:未检
|
||||
*/
|
||||
private Integer recordedResult;
|
||||
|
||||
/**
|
||||
* 检测人
|
||||
*/
|
||||
|
||||
@@ -84,6 +84,9 @@ public class PreDetection {
|
||||
private Double devVolt;
|
||||
|
||||
private Double devCurr;
|
||||
|
||||
@JSONField(serialize = false)
|
||||
private String waveCmd;
|
||||
/**
|
||||
* 监测点信息
|
||||
*/
|
||||
|
||||
@@ -62,5 +62,20 @@ public class PqMonitor implements Serializable {
|
||||
* 谐波系统监测点id
|
||||
*/
|
||||
private String harmSysId;
|
||||
|
||||
/**
|
||||
* 实时数据结果 0:不合格,1:合格,2:未检
|
||||
*/
|
||||
private Integer realtimeResult;
|
||||
|
||||
/**
|
||||
* 统计数据结果 0:不合格,1:合格,2:未检
|
||||
*/
|
||||
private Integer statisticsResult;
|
||||
|
||||
/**
|
||||
* 录波数据结果 0:不合格,1:合格,2:未检
|
||||
*/
|
||||
private Integer recordedResult;
|
||||
}
|
||||
|
||||
|
||||
@@ -175,7 +175,7 @@ public class AdPlanController extends BaseController {
|
||||
public HttpResult<List<Map<String, String>>> getBigTestItem(@RequestBody AdPlanParam.CheckParam checkParam) {
|
||||
String methodDescribe = getMethodDescribe("getBigTestItem");
|
||||
LogUtil.njcnDebug(log, "{},查询数据为:{}", methodDescribe, checkParam);
|
||||
List<Map<String, String>> result = adPlanService.getBigTestItem(checkParam.getReCheckType(), checkParam.getPlanId(), checkParam.getDevIds(), checkParam.getPatternId());
|
||||
List<Map<String, String>> result = adPlanService.getBigTestItem(checkParam.getReCheckType(), checkParam.getPlanId(), checkParam.getDevIds(), checkParam.getPatternId(),checkParam.getScriptType());
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
|
||||
}
|
||||
|
||||
|
||||
@@ -128,5 +128,6 @@ public class AdPlanParam {
|
||||
private String planId;
|
||||
private List<String> devIds;
|
||||
private String patternId;
|
||||
private String scriptType;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,9 +73,10 @@ public interface IAdPlanService extends IService<AdPlan> {
|
||||
* @param planId 检测计划Id
|
||||
* @param devIds 设备Id列表
|
||||
* @param patternId 模式Id
|
||||
* @param scriptType 脚本类型
|
||||
* @return
|
||||
*/
|
||||
List<Map<String, String>> getBigTestItem(Integer reCheckType, String planId, List<String> devIds, String patternId);
|
||||
List<Map<String, String>> getBigTestItem(Integer reCheckType, String planId, List<String> devIds, String patternId, String scriptType);
|
||||
|
||||
/**
|
||||
* 修改计划状态
|
||||
@@ -214,5 +215,4 @@ public interface IAdPlanService extends IService<AdPlan> {
|
||||
*/
|
||||
boolean mergePlanCheckData(String planId);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -591,7 +591,7 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, String>> getBigTestItem(Integer reCheckType, String planId, List<String> devIds, String patternId) {
|
||||
public List<Map<String, String>> getBigTestItem(Integer reCheckType, String planId, List<String> devIds, String patternId, String scriptType) {
|
||||
List<Map<String, String>> result = new ArrayList<>();
|
||||
AdPlan adPlan = this.getById(planId);
|
||||
if (ObjectUtil.isNull(adPlan)) {
|
||||
@@ -609,14 +609,15 @@ public class AdPlanServiceImpl extends ServiceImpl<AdPlanMapper, AdPlan> impleme
|
||||
map.put("scriptName", dictTree.getName());
|
||||
result.add(map);
|
||||
}
|
||||
if (StrUtil.isBlank(scriptType)) {
|
||||
if (adPlan.getDatasourceId().contains(DataSourceEnum.WAVE_DATA.getValue())) {
|
||||
Map<String, String> map = new HashMap<>();
|
||||
map.put("id", "wave_data");
|
||||
map.put("id", DataSourceEnum.WAVE_DATA.getValue());
|
||||
map.put("code", DataSourceEnum.WAVE_DATA.getValue());
|
||||
map.put("scriptName", DataSourceEnum.WAVE_DATA.getMsg());
|
||||
result.add(map);
|
||||
}
|
||||
|
||||
}
|
||||
} else {
|
||||
String scriptId = adPlan.getScriptId();
|
||||
List<PqScriptDtls> scriptDtlsList = pqScriptDtlsService.listPqScriptDtlByScriptId(scriptId);
|
||||
|
||||
@@ -66,6 +66,14 @@ public class ResultParam {
|
||||
|
||||
// 第几次检测
|
||||
private Integer num;
|
||||
|
||||
// 第几次波形
|
||||
private Integer waveNum;
|
||||
|
||||
private Boolean isWave;
|
||||
|
||||
// 模式id
|
||||
private String patternId;
|
||||
}
|
||||
|
||||
@Data
|
||||
|
||||
@@ -31,4 +31,9 @@ public class FormContentVO {
|
||||
* 选中的第几次
|
||||
*/
|
||||
private Integer checkNum;
|
||||
|
||||
/**
|
||||
* 有多少次波形录制
|
||||
*/
|
||||
private Integer waveNumTotal;
|
||||
}
|
||||
|
||||
@@ -30,8 +30,11 @@ import com.njcn.gather.device.pojo.enums.CommonEnum;
|
||||
import com.njcn.gather.device.pojo.enums.PatternEnum;
|
||||
import com.njcn.gather.device.pojo.po.PqDev;
|
||||
import com.njcn.gather.device.service.IPqDevService;
|
||||
import com.njcn.gather.plan.pojo.enums.DataSourceEnum;
|
||||
import com.njcn.gather.plan.pojo.po.AdPlan;
|
||||
import com.njcn.gather.plan.pojo.po.AdPlanTestConfig;
|
||||
import com.njcn.gather.plan.service.IAdPlanService;
|
||||
import com.njcn.gather.plan.service.IAdPlanTestConfigService;
|
||||
import com.njcn.gather.pojo.enums.DetectionResponseEnum;
|
||||
import com.njcn.gather.report.pojo.constant.PowerConstant;
|
||||
import com.njcn.gather.report.pojo.enums.AffectEnum;
|
||||
@@ -95,6 +98,7 @@ import java.util.stream.Stream;
|
||||
public class ResultServiceImpl implements IResultService {
|
||||
|
||||
private final IAdPlanService adPlanService;
|
||||
private final IAdPlanTestConfigService adPlanTestConfigService;
|
||||
private final IPqDevService pqDevService;
|
||||
private final SimAndDigNonHarmonicService simAndDigNonHarmonicService;
|
||||
private final SimAndDigHarmonicService simAndDigHarmonicService;
|
||||
@@ -1553,14 +1557,21 @@ public class ResultServiceImpl implements IResultService {
|
||||
formContentVO.setDeviceName(dev.getName());
|
||||
formContentVO.setErrorSysId(plan.getErrorSysId());
|
||||
|
||||
List<DictTree> dictTreeList = dictTreeService.getDictTreeById(Collections.singletonList(queryParam.getScriptType()));
|
||||
List<DictTree> dictTreeList = null;
|
||||
if (DataSourceEnum.WAVE_DATA.getValue().equals(queryParam.getScriptType())) {
|
||||
List<Map<String, String>> bigTestItem = adPlanService.getBigTestItem(1, queryParam.getPlanId(), Collections.singletonList(queryParam.getDeviceId()), queryParam.getPatternId(), DataSourceEnum.WAVE_DATA.getValue());
|
||||
List<String> ids = bigTestItem.stream().filter(x -> !DetectionCodeEnum.FREQ.getCode().equals(x.get("code"))).map(x -> x.get("id")).collect(Collectors.toList());
|
||||
dictTreeList = dictTreeService.getDictTreeById(ids);
|
||||
} else {
|
||||
dictTreeList = dictTreeService.getDictTreeById(Collections.singletonList(queryParam.getScriptType()));
|
||||
}
|
||||
List<String> fatherIdList = dictTreeList.stream().map(DictTree::getId).collect(Collectors.toList());
|
||||
List<DictTree> childDictTreeList = dictTreeService.listByFatherIds(fatherIdList);
|
||||
List<String> adTypeList = childDictTreeList.stream().map(DictTree::getId).collect(Collectors.toList());
|
||||
List<ContrastBaseResult> allResultList = new ArrayList<>();
|
||||
|
||||
List<ContrastNonHarmonicResult> contrastNonHarmonicResults = contrastNonHarmonicService.listAllResultData(String.valueOf(plan.getCode()), null, queryParam.getDeviceId(), adTypeList);
|
||||
List<ContrastHarmonicResult> contrastHarmonicResults = contrastHarmonicService.listAllResultData(String.valueOf(plan.getCode()), null, queryParam.getDeviceId(), adTypeList);
|
||||
List<ContrastNonHarmonicResult> contrastNonHarmonicResults = contrastNonHarmonicService.listAllResultData(String.valueOf(plan.getCode()), null, null, true, queryParam.getDeviceId(), adTypeList);
|
||||
List<ContrastHarmonicResult> contrastHarmonicResults = contrastHarmonicService.listAllResultData(String.valueOf(plan.getCode()), null, null, true, queryParam.getDeviceId(), adTypeList);
|
||||
allResultList.addAll(contrastHarmonicResults);
|
||||
allResultList.addAll(contrastNonHarmonicResults);
|
||||
|
||||
@@ -1586,6 +1597,9 @@ public class ResultServiceImpl implements IResultService {
|
||||
formContentVO.setCheckNum(queryParam.getNum());
|
||||
}
|
||||
|
||||
AdPlanTestConfig adPlanTestConfig = adPlanTestConfigService.getByPlanId(queryParam.getPlanId());
|
||||
formContentVO.setWaveNumTotal(adPlanTestConfig.getWaveRecord());
|
||||
|
||||
formContentVO.setChnMap(chnMap);
|
||||
return formContentVO;
|
||||
}
|
||||
@@ -1595,7 +1609,9 @@ public class ResultServiceImpl implements IResultService {
|
||||
ContrastResultVO contrastResultVO = new ContrastResultVO();
|
||||
|
||||
AdPlan plan = adPlanService.getById(queryParam.getPlanId());
|
||||
|
||||
List<DictTree> dictTreeList = dictTreeService.getDictTreeById(Collections.singletonList(queryParam.getScriptType()));
|
||||
|
||||
List<String> fatherIdList = dictTreeList.stream().map(DictTree::getId).collect(Collectors.toList());
|
||||
List<DictTree> childDictTreeList = dictTreeService.listByFatherIds(fatherIdList);
|
||||
List<String> adTypeList = childDictTreeList.stream().map(DictTree::getId).collect(Collectors.toList());
|
||||
@@ -1615,16 +1631,16 @@ public class ResultServiceImpl implements IResultService {
|
||||
}
|
||||
}
|
||||
|
||||
contrastResultVO.setResultMap(this.getResultMap(dictTree, adTypeList, queryParam.getDeviceId() + CnSocketUtil.SPLIT_TAG + queryParam.getChnNum(), unit, queryParam.getNum(), String.valueOf(plan.getCode())));
|
||||
contrastResultVO.setRawDataMap(this.getRawDataMap(dictTree, adTypeList, queryParam.getDeviceId() + CnSocketUtil.SPLIT_TAG + queryParam.getChnNum(), unit, queryParam.getNum(), String.valueOf(plan.getCode())));
|
||||
contrastResultVO.setResultMap(this.getResultMap(dictTree, adTypeList, queryParam.getDeviceId() + CnSocketUtil.SPLIT_TAG + queryParam.getChnNum(), unit, queryParam.getNum(), queryParam.getWaveNum(), queryParam.getIsWave(), String.valueOf(plan.getCode())));
|
||||
contrastResultVO.setRawDataMap(this.getRawDataMap(dictTree, adTypeList, queryParam.getDeviceId() + CnSocketUtil.SPLIT_TAG + queryParam.getChnNum(), unit, queryParam.getNum(), queryParam.getWaveNum(), queryParam.getIsWave(), String.valueOf(plan.getCode())));
|
||||
return contrastResultVO;
|
||||
}
|
||||
|
||||
private Map<String, List<RawResultDataVO>> getResultMap(DictTree dictTree, List<String> adTypeList, String monitorId, String unit, Integer num, String code) {
|
||||
private Map<String, List<RawResultDataVO>> getResultMap(DictTree dictTree, List<String> adTypeList, String monitorId, String unit, Integer num, Integer waveNum, Boolean isWave, String code) {
|
||||
Map<String, List<RawResultDataVO>> resultMap = new LinkedHashMap<>();
|
||||
|
||||
List<ContrastNonHarmonicResult> contrastNonHarmonicResults = contrastNonHarmonicService.listAllResultData(code, num, monitorId, adTypeList);
|
||||
List<ContrastHarmonicResult> contrastHarmonicResults = contrastHarmonicService.listAllResultData(code, num, monitorId, adTypeList);
|
||||
List<ContrastNonHarmonicResult> contrastNonHarmonicResults = contrastNonHarmonicService.listAllResultData(code, num, waveNum, isWave, monitorId, adTypeList);
|
||||
List<ContrastHarmonicResult> contrastHarmonicResults = contrastHarmonicService.listAllResultData(code, num, waveNum, isWave, monitorId, adTypeList);
|
||||
|
||||
if (CollUtil.isNotEmpty(contrastNonHarmonicResults)) {
|
||||
ContrastNonHarmonicResult contrastNonHarmonicResult = contrastNonHarmonicResults.get(0);
|
||||
@@ -1715,13 +1731,13 @@ public class ResultServiceImpl implements IResultService {
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
private Map<String, List<AlignDataVO.RawData>> getRawDataMap(DictTree dictTree, List<String> adTypeList, String monitorId, String unit, Integer num, String code) {
|
||||
private Map<String, List<AlignDataVO.RawData>> getRawDataMap(DictTree dictTree, List<String> adTypeList, String monitorId, String unit, Integer num, Integer waveNum, Boolean isWave, String code) {
|
||||
Map<String, List<AlignDataVO.RawData>> rawMap = new LinkedHashMap<>();
|
||||
|
||||
List<ContrastNonHarmonicResult> devNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(code, num, 0, monitorId, adTypeList);
|
||||
List<ContrastNonHarmonicResult> stdDevNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(code, num, 1, monitorId, adTypeList);
|
||||
List<ContrastHarmonicResult> devHarmonicRawDataList = contrastHarmonicService.listAllRawData(code, num, 0, monitorId, adTypeList);
|
||||
List<ContrastHarmonicResult> stdDevHarmonicRawDataList = contrastHarmonicService.listAllRawData(code, num, 1, monitorId, adTypeList);
|
||||
List<ContrastNonHarmonicResult> devNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(code, num, waveNum, isWave, 0, monitorId, adTypeList);
|
||||
List<ContrastNonHarmonicResult> stdDevNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(code, num, waveNum, isWave, 1, monitorId, adTypeList);
|
||||
List<ContrastHarmonicResult> devHarmonicRawDataList = contrastHarmonicService.listAllRawData(code, num, waveNum, isWave, 0, monitorId, adTypeList);
|
||||
List<ContrastHarmonicResult> stdDevHarmonicRawDataList = contrastHarmonicService.listAllRawData(code, num, waveNum, isWave, 1, monitorId, adTypeList);
|
||||
|
||||
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
|
||||
List<AlignDataVO.RawData> rawDataVOList = new ArrayList<>();
|
||||
@@ -2038,17 +2054,29 @@ public class ResultServiceImpl implements IResultService {
|
||||
numMap.put(adPair.getStdDevMonitorId(), num);
|
||||
});
|
||||
|
||||
List<ContrastNonHarmonicResult> devNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(oldCode, num, 0, deviceId, null);
|
||||
List<ContrastNonHarmonicResult> stdDevNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(oldCode, num, 1, deviceId, null);
|
||||
List<ContrastHarmonicResult> devHarmonicRawDataList = contrastHarmonicService.listAllRawData(oldCode, num, 0, deviceId, null);
|
||||
List<ContrastHarmonicResult> stdDevHarmonicRawDataList = contrastHarmonicService.listAllRawData(oldCode, num, 1, deviceId, null);
|
||||
List<ContrastNonHarmonicResult> devNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(oldCode, num, null, false, 0, deviceId, null);
|
||||
List<ContrastNonHarmonicResult> stdDevNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(oldCode, num, null, false, 1, deviceId, null);
|
||||
List<ContrastHarmonicResult> devHarmonicRawDataList = contrastHarmonicService.listAllRawData(oldCode, num, null, false, 0, deviceId, null);
|
||||
List<ContrastHarmonicResult> stdDevHarmonicRawDataList = contrastHarmonicService.listAllRawData(oldCode, num, null, false, 1, deviceId, null);
|
||||
|
||||
List<DevData> devData = contrastToList(devNonHarmonicRawDataList, devHarmonicRawDataList, testItemMap);
|
||||
List<DevData> standardDevData = contrastToList(stdDevNonHarmonicRawDataList, stdDevHarmonicRawDataList, testItemMap);
|
||||
|
||||
detectionServiceImpl.processing(devData, standardDevData, parsIp, devIdMapComm, testItemMap.keySet().stream().collect(Collectors.toList()), errorSysId, dataRule, numMap, code, null);
|
||||
});
|
||||
|
||||
AdPlanTestConfig adPlanTestConfig = adPlanTestConfigService.getByPlanId(planId);
|
||||
for (int i = 1; i <= adPlanTestConfig.getWaveRecord(); i++) {
|
||||
devNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(oldCode, num, i, true, 0, deviceId, null);
|
||||
stdDevNonHarmonicRawDataList = contrastNonHarmonicService.listAllRawData(oldCode, num, i, true, 1, deviceId, null);
|
||||
devHarmonicRawDataList = contrastHarmonicService.listAllRawData(oldCode, num, i, true, 0, deviceId, null);
|
||||
stdDevHarmonicRawDataList = contrastHarmonicService.listAllRawData(oldCode, num, i, true, 1, deviceId, null);
|
||||
|
||||
devData = contrastToList(devNonHarmonicRawDataList, devHarmonicRawDataList, testItemMap);
|
||||
standardDevData = contrastToList(stdDevNonHarmonicRawDataList, stdDevHarmonicRawDataList, testItemMap);
|
||||
|
||||
detectionServiceImpl.processing(devData, standardDevData, parsIp, devIdMapComm, testItemMap.keySet().stream().collect(Collectors.toList()), errorSysId, dataRule, numMap, code, i);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private List<DevData> simAndDigToList(List<SimAndDigNonHarmonicResult> nonHarm, List<SimAndDigHarmonicResult> harm, boolean containBaseHarm) {
|
||||
|
||||
@@ -47,6 +47,9 @@ public class DevTypeParam {
|
||||
@ApiModelProperty(value = "报告模板")
|
||||
private String reportName;
|
||||
|
||||
@ApiModelProperty(value = "录波指令")
|
||||
private String waveCmd;
|
||||
|
||||
/**
|
||||
* 分页查询实体
|
||||
*/
|
||||
|
||||
@@ -60,6 +60,11 @@ public class DevType extends BaseEntity {
|
||||
@TableField("report_name")
|
||||
private String reportName;
|
||||
|
||||
/**
|
||||
* 录波指令
|
||||
*/
|
||||
private String waveCmd;
|
||||
|
||||
/**
|
||||
* 状态:0-删除 1-正常
|
||||
*/
|
||||
|
||||
@@ -21,15 +21,16 @@ public interface ContrastHarmonicService extends IService<ContrastHarmonicResult
|
||||
* @param adTypeList
|
||||
* @return
|
||||
*/
|
||||
List<ContrastHarmonicResult> listAllRawData(String code, Integer num, Integer flag, String devId, List<String> adTypeList);
|
||||
List<ContrastHarmonicResult> listAllRawData(String code, Integer num, Integer waveNum, Boolean isWave, Integer flag, String devId, List<String> adTypeList);
|
||||
|
||||
/**
|
||||
* 获取所有谐波结果数据
|
||||
*
|
||||
* @param code
|
||||
* @param num 第几次检测
|
||||
* @param waveNum 第几次录波
|
||||
* @param devId 设备ID
|
||||
* @return
|
||||
*/
|
||||
List<ContrastHarmonicResult> listAllResultData(String code, Integer num, String devId, List<String> adTypeList);
|
||||
List<ContrastHarmonicResult> listAllResultData(String code, Integer num, Integer waveNum, Boolean isWave, String devId, List<String> adTypeList);
|
||||
}
|
||||
|
||||
@@ -15,22 +15,28 @@ public interface ContrastNonHarmonicService extends IService<ContrastNonHarmonic
|
||||
* 获取所有原始数据
|
||||
*
|
||||
* @param code
|
||||
* @param num 第几次检测
|
||||
* @param flag 0:被检设备,1:标准设备
|
||||
* @param devId 设备ID
|
||||
* @param num
|
||||
* @param waveNum
|
||||
* @param isWave
|
||||
* @param flag
|
||||
* @param devId
|
||||
* @param adTypeList
|
||||
* @return
|
||||
*/
|
||||
List<ContrastNonHarmonicResult> listAllRawData(String code, Integer num, Integer flag, String devId, List<String> adTypeList);
|
||||
List<ContrastNonHarmonicResult> listAllRawData(String code, Integer num, Integer waveNum, Boolean isWave, Integer flag, String devId, List<String> adTypeList);
|
||||
|
||||
|
||||
/**
|
||||
* 获取所有非谐波结果数据
|
||||
*
|
||||
* @param code
|
||||
* @param num 第几次检测
|
||||
* @param devId 设备ID
|
||||
* @param num
|
||||
* @param waveNum
|
||||
* @param isWave
|
||||
* @param devId
|
||||
* @param adTypeList
|
||||
* @return
|
||||
*/
|
||||
List<ContrastNonHarmonicResult> listAllResultData(String code, Integer num, String devId, List<String> adTypeList);
|
||||
|
||||
List<ContrastNonHarmonicResult> listAllResultData(String code, Integer num, Integer waveNum, Boolean isWave, String devId, List<String> adTypeList);
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.njcn.gather.storage.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.njcn.db.mybatisplus.handler.DynamicTableNameHandler;
|
||||
import com.njcn.gather.storage.mapper.ContrastHarmonicMappper;
|
||||
@@ -22,25 +23,38 @@ public class ContrastHarmonicServiceImpl extends ServiceImpl<ContrastHarmonicMap
|
||||
|
||||
|
||||
@Override
|
||||
public List<ContrastHarmonicResult> listAllRawData(String code, Integer num, Integer flag, String devId, List<String> adTypeList) {
|
||||
public List<ContrastHarmonicResult> listAllRawData(String code, Integer num, Integer waveNum, Boolean isWave, Integer flag, String devId, List<String> adTypeList) {
|
||||
String prefix = "ad_harmonic_" + code;
|
||||
DynamicTableNameHandler.setTableName(prefix);
|
||||
List<ContrastHarmonicResult> result = this.lambdaQuery().likeRight(ContrastHarmonicResult::getDevMonitorId, devId)
|
||||
LambdaQueryChainWrapper<ContrastHarmonicResult> wrapper = this.lambdaQuery().likeRight(ContrastHarmonicResult::getDevMonitorId, devId)
|
||||
.eq(ObjectUtil.isNotNull(num), ContrastHarmonicResult::getNum, num)
|
||||
.eq(ContrastHarmonicResult::getFlag, flag)
|
||||
.in(CollUtil.isNotEmpty(adTypeList), ContrastHarmonicResult::getAdType, adTypeList)
|
||||
.orderByAsc(ContrastHarmonicResult::getTimeId).list();
|
||||
.orderByAsc(ContrastHarmonicResult::getTimeId);
|
||||
if (isWave) {
|
||||
wrapper.eq(ObjectUtil.isNotNull(waveNum), ContrastHarmonicResult::getWaveNum, waveNum);
|
||||
} else {
|
||||
wrapper.isNull(ContrastHarmonicResult::getWaveNum);
|
||||
}
|
||||
List<ContrastHarmonicResult> result = wrapper.list();
|
||||
DynamicTableNameHandler.remove();
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ContrastHarmonicResult> listAllResultData(String code, Integer num, String devId, List<String> adTypeList) {
|
||||
public List<ContrastHarmonicResult> listAllResultData(String code, Integer num, Integer waveNum, Boolean isWave, String devId, List<String> adTypeList) {
|
||||
String prefix = "ad_harmonic_result_" + code;
|
||||
DynamicTableNameHandler.setTableName(prefix);
|
||||
List<ContrastHarmonicResult> result = this.lambdaQuery().likeRight(ContrastHarmonicResult::getDevMonitorId, devId)
|
||||
LambdaQueryChainWrapper<ContrastHarmonicResult> wrapper = this.lambdaQuery().likeRight(ContrastHarmonicResult::getDevMonitorId, devId)
|
||||
.eq(ObjectUtil.isNotNull(num), ContrastHarmonicResult::getNum, num)
|
||||
.in(CollUtil.isNotEmpty(adTypeList), ContrastHarmonicResult::getAdType, adTypeList).list();
|
||||
.eq(ObjectUtil.isNotNull(waveNum), ContrastHarmonicResult::getWaveNum, waveNum)
|
||||
.in(CollUtil.isNotEmpty(adTypeList), ContrastHarmonicResult::getAdType, adTypeList);
|
||||
if (isWave) {
|
||||
wrapper.eq(ObjectUtil.isNotNull(waveNum), ContrastHarmonicResult::getWaveNum, waveNum);
|
||||
} else {
|
||||
wrapper.isNull(ContrastHarmonicResult::getWaveNum);
|
||||
}
|
||||
List<ContrastHarmonicResult> result = wrapper.list();
|
||||
DynamicTableNameHandler.remove();
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package com.njcn.gather.storage.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.njcn.db.mybatisplus.handler.DynamicTableNameHandler;
|
||||
import com.njcn.gather.storage.mapper.ContrastNonHarmonicMappper;
|
||||
@@ -22,25 +23,38 @@ public class ContrastNonHarmonicServiceImpl extends ServiceImpl<ContrastNonHarmo
|
||||
|
||||
|
||||
@Override
|
||||
public List<ContrastNonHarmonicResult> listAllRawData(String code, Integer num, Integer flag, String devId, List<String> adTypeList) {
|
||||
public List<ContrastNonHarmonicResult> listAllRawData(String code, Integer num, Integer waveNum, Boolean isWave, Integer flag, String devId, List<String> adTypeList) {
|
||||
String prefix = "ad_non_harmonic_" + code;
|
||||
DynamicTableNameHandler.setTableName(prefix);
|
||||
List<ContrastNonHarmonicResult> result = this.lambdaQuery().likeRight(ContrastNonHarmonicResult::getDevMonitorId, devId)
|
||||
LambdaQueryChainWrapper<ContrastNonHarmonicResult> wrapper = this.lambdaQuery().likeRight(ContrastNonHarmonicResult::getDevMonitorId, devId)
|
||||
.eq(ObjectUtil.isNotNull(num), ContrastNonHarmonicResult::getNum, num)
|
||||
.eq(ContrastNonHarmonicResult::getFlag, flag)
|
||||
.in(CollUtil.isNotEmpty(adTypeList), ContrastNonHarmonicResult::getAdType, adTypeList)
|
||||
.orderByAsc(ContrastNonHarmonicResult::getTimeId).list();
|
||||
.orderByAsc(ContrastNonHarmonicResult::getTimeId);
|
||||
if (isWave) {
|
||||
wrapper.eq(ObjectUtil.isNotNull(waveNum), ContrastNonHarmonicResult::getWaveNum, waveNum);
|
||||
} else {
|
||||
wrapper.isNull(ContrastNonHarmonicResult::getWaveNum);
|
||||
}
|
||||
List<ContrastNonHarmonicResult> result = wrapper.list();
|
||||
DynamicTableNameHandler.remove();
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ContrastNonHarmonicResult> listAllResultData(String code, Integer num, String devId, List<String> adTypeList) {
|
||||
public List<ContrastNonHarmonicResult> listAllResultData(String code, Integer num, Integer waveNum, Boolean isWave, String devId, List<String> adTypeList) {
|
||||
String prefix = "ad_non_harmonic_result_" + code;
|
||||
DynamicTableNameHandler.setTableName(prefix);
|
||||
List<ContrastNonHarmonicResult> result = this.lambdaQuery().likeRight(ContrastNonHarmonicResult::getDevMonitorId, devId)
|
||||
LambdaQueryChainWrapper<ContrastNonHarmonicResult> wrapper = this.lambdaQuery().likeRight(ContrastNonHarmonicResult::getDevMonitorId, devId)
|
||||
.eq(ObjectUtil.isNotNull(num), ContrastNonHarmonicResult::getNum, num)
|
||||
.in(CollUtil.isNotEmpty(adTypeList), ContrastNonHarmonicResult::getAdType, adTypeList).list();
|
||||
.isNull(ObjectUtil.isNull(waveNum), ContrastNonHarmonicResult::getWaveNum)
|
||||
.in(CollUtil.isNotEmpty(adTypeList), ContrastNonHarmonicResult::getAdType, adTypeList);
|
||||
if (isWave) {
|
||||
wrapper.eq(ObjectUtil.isNotNull(waveNum), ContrastNonHarmonicResult::getWaveNum, waveNum);
|
||||
} else {
|
||||
wrapper.isNull(ContrastNonHarmonicResult::getWaveNum);
|
||||
}
|
||||
List<ContrastNonHarmonicResult> result = wrapper.list();
|
||||
DynamicTableNameHandler.remove();
|
||||
return result;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user