代码调整
This commit is contained in:
@@ -63,7 +63,7 @@ public class SocketDevResponseService {
|
|||||||
private final DateTimeFormatter formatter = DateTimeFormatter.ISO_DATE_TIME;
|
private final DateTimeFormatter formatter = DateTimeFormatter.ISO_DATE_TIME;
|
||||||
|
|
||||||
|
|
||||||
private final List<String> nonHarmonicList = Stream.of(DicDataEnum.FREQ.getCode(), DicDataEnum.V.getCode(), DicDataEnum.I.getCode(), DicDataEnum.IMBV.getCode(), DicDataEnum.IMBA.getCode(), DicDataEnum.VOLTAGE.getCode()).collect(Collectors.toList());
|
private final List<String> nonHarmonicList = Stream.of(DicDataEnum.FREQ.getCode(), DicDataEnum.V.getCode(), DicDataEnum.I.getCode(), DicDataEnum.IMBV.getCode(), DicDataEnum.IMBA.getCode(), DicDataEnum.VOLTAGE.getCode(), DicDataEnum.F.getCode()).collect(Collectors.toList());
|
||||||
private final List<String> harmonicList = Stream.of(DicDataEnum.HV.getCode(), DicDataEnum.HI.getCode(), DicDataEnum.HP.getCode(), DicDataEnum.HSV.getCode(), DicDataEnum.HSI.getCode()).collect(Collectors.toList());
|
private final List<String> harmonicList = Stream.of(DicDataEnum.HV.getCode(), DicDataEnum.HI.getCode(), DicDataEnum.HP.getCode(), DicDataEnum.HSV.getCode(), DicDataEnum.HSI.getCode()).collect(Collectors.toList());
|
||||||
|
|
||||||
private final WebSocketHandler webSocketHandler;
|
private final WebSocketHandler webSocketHandler;
|
||||||
@@ -959,6 +959,7 @@ public class SocketDevResponseService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 退出检测返回
|
* 退出检测返回
|
||||||
*/
|
*/
|
||||||
@@ -1155,10 +1156,13 @@ public class SocketDevResponseService {
|
|||||||
}
|
}
|
||||||
//字典树
|
//字典树
|
||||||
SocketManager.valueTypeMap = iPqScriptCheckDataService.getValueTypeMap(param.getScriptId());
|
SocketManager.valueTypeMap = iPqScriptCheckDataService.getValueTypeMap(param.getScriptId());
|
||||||
initXiManager(param);
|
|
||||||
|
if(param.getOperateType().equals(SourceOperateCodeEnum.COEFFICIENT_TEST.getValue())){
|
||||||
|
initXiManager(param);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//初始化
|
//初始化系数校验参数
|
||||||
private void initXiManager(PreDetectionParam param) {
|
private void initXiManager(PreDetectionParam param) {
|
||||||
XiNumberManager.devParameterList.clear();
|
XiNumberManager.devParameterList.clear();
|
||||||
|
|
||||||
|
|||||||
@@ -119,14 +119,14 @@ public class NettyDevClientHandler extends SimpleChannelInboundHandler<String> {
|
|||||||
System.out.println("超时函数进入-----》" + sourceIssue.getType() + "----:" + SocketManager.clockMap.get(sourceIssue.getIndex()) + "S");
|
System.out.println("超时函数进入-----》" + sourceIssue.getType() + "----:" + SocketManager.clockMap.get(sourceIssue.getIndex()) + "S");
|
||||||
|
|
||||||
if (sourceIssue.getType().equals(DicDataEnum.F.getCode())) {
|
if (sourceIssue.getType().equals(DicDataEnum.F.getCode())) {
|
||||||
//闪变
|
//闪变,正常抛一轮最大等待20分钟超时
|
||||||
if (SocketManager.clockMap.get(sourceIssue.getIndex()) > 1800) {
|
if (SocketManager.clockMap.get(sourceIssue.getIndex()) > 1300) {
|
||||||
System.out.println("超时处理-----》" + sourceIssue.getType() + "已超时----------------关闭");
|
System.out.println("超时处理-----》" + sourceIssue.getType() + "已超时----------------关闭");
|
||||||
CnSocketUtil.quitSend(param);
|
CnSocketUtil.quitSend(param);
|
||||||
timeoutSend(sourceIssue);
|
timeoutSend(sourceIssue);
|
||||||
}
|
}
|
||||||
} else if (sourceIssue.getType().equals(DicDataEnum.VOLTAGE.getCode()) || sourceIssue.getType().equals(DicDataEnum.HP.getCode())) {
|
} else if (sourceIssue.getType().equals(DicDataEnum.VOLTAGE.getCode()) || sourceIssue.getType().equals(DicDataEnum.HP.getCode())) {
|
||||||
//统计数据项
|
//统计数据项,正常抛一轮数据,超时
|
||||||
if (SocketManager.clockMap.get(sourceIssue.getIndex()) > 180) {
|
if (SocketManager.clockMap.get(sourceIssue.getIndex()) > 180) {
|
||||||
CnSocketUtil.quitSend(param);
|
CnSocketUtil.quitSend(param);
|
||||||
System.out.println("超时处理-----》" + sourceIssue.getType() + "已超时----------------关闭");
|
System.out.println("超时处理-----》" + sourceIssue.getType() + "已超时----------------关闭");
|
||||||
@@ -191,6 +191,9 @@ public class NettyDevClientHandler extends SimpleChannelInboundHandler<String> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
private void timeoutSend(SourceIssue sourceIssue){
|
private void timeoutSend(SourceIssue sourceIssue){
|
||||||
List<DevLineTestResult> devListRes = new ArrayList<>();
|
List<DevLineTestResult> devListRes = new ArrayList<>();
|
||||||
FormalTestManager.devList.forEach(dev -> {
|
FormalTestManager.devList.forEach(dev -> {
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
Sort int(4) NOT NULL COMMENT '总检测脚本中的测试项序号',
|
Sort int(4) NOT NULL COMMENT '总检测脚本中的测试项序号',
|
||||||
AD_Type CHAR(32) NOT NULL COMMENT '检测指标,字典表',
|
AD_Type CHAR(32) NOT NULL COMMENT '检测指标,字典表',
|
||||||
Data_Type CHAR(32) NOT NULL COMMENT '数据指标,只有数据源为分钟统计时候才会使用(最大、最小、平均、CP95,默认平均值),字典表',
|
Data_Type CHAR(32) NOT NULL COMMENT '数据指标,只有数据源为分钟统计时候才会使用(最大、最小、平均、CP95,默认平均值),字典表',
|
||||||
Result_Flag int(1) NOT NULL COMMENT '0.不合格 1.合格',
|
Result_Flag int(1) NOT NULL COMMENT '1不合格 2合格 4无法处理',
|
||||||
A_Value json NULL COMMENT 'A相值',
|
A_Value json NULL COMMENT 'A相值',
|
||||||
B_Value json NULL COMMENT 'B相值',
|
B_Value json NULL COMMENT 'B相值',
|
||||||
C_Value json NULL COMMENT 'C相值',
|
C_Value json NULL COMMENT 'C相值',
|
||||||
|
|||||||
@@ -42,4 +42,7 @@ public interface AdHarmonicService extends IService<AdHarmonicResult> {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
Map<String, RawResultDataVO> listHarmResultData(StorageParam param) ;
|
Map<String, RawResultDataVO> listHarmResultData(StorageParam param) ;
|
||||||
|
|
||||||
|
|
||||||
|
List<Integer> getIndex(StorageParam param);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,16 +5,21 @@ import cn.hutool.core.collection.CollUtil;
|
|||||||
import cn.hutool.core.date.DatePattern;
|
import cn.hutool.core.date.DatePattern;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||||
import com.njcn.db.mybatisplus.handler.DynamicTableNameHandler;
|
import com.njcn.db.mybatisplus.handler.DynamicTableNameHandler;
|
||||||
import com.njcn.gather.storage.mapper.AdHarmonicMappper;
|
import com.njcn.gather.storage.mapper.AdHarmonicMappper;
|
||||||
|
import com.njcn.gather.storage.mapper.AdNonHarmonicMapper;
|
||||||
import com.njcn.gather.storage.pojo.param.StorageParam;
|
import com.njcn.gather.storage.pojo.param.StorageParam;
|
||||||
import com.njcn.gather.storage.pojo.po.AdBaseResult;
|
import com.njcn.gather.storage.pojo.po.AdBaseResult;
|
||||||
import com.njcn.gather.storage.pojo.po.AdHarmonicResult;
|
import com.njcn.gather.storage.pojo.po.AdHarmonicResult;
|
||||||
|
import com.njcn.gather.storage.pojo.po.AdNonHarmonicResult;
|
||||||
import com.njcn.gather.storage.pojo.vo.RawDataVO;
|
import com.njcn.gather.storage.pojo.vo.RawDataVO;
|
||||||
import com.njcn.gather.storage.pojo.vo.RawResultDataVO;
|
import com.njcn.gather.storage.pojo.vo.RawResultDataVO;
|
||||||
import com.njcn.gather.storage.service.AdHarmonicService;
|
import com.njcn.gather.storage.service.AdHarmonicService;
|
||||||
|
import io.swagger.models.auth.In;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
@@ -22,13 +27,18 @@ import java.math.BigDecimal;
|
|||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author caozehui
|
* @author caozehui
|
||||||
* @data 2024-12-30
|
* @data 2024-12-30
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
|
@RequiredArgsConstructor
|
||||||
public class AdHarmonicServiceImpl extends ServiceImpl<AdHarmonicMappper, AdHarmonicResult> implements AdHarmonicService {
|
public class AdHarmonicServiceImpl extends ServiceImpl<AdHarmonicMappper, AdHarmonicResult> implements AdHarmonicService {
|
||||||
|
|
||||||
|
private final AdNonHarmonicMapper adNonHarmonicMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<AdBaseResult> get(String scriptId, List<Integer> sort, String deviceId, String chnNum, Integer code) {
|
public List<AdBaseResult> get(String scriptId, List<Integer> sort, String deviceId, String chnNum, Integer code) {
|
||||||
String prefix = "ad_harmonic_result_";
|
String prefix = "ad_harmonic_result_";
|
||||||
@@ -157,6 +167,26 @@ public class AdHarmonicServiceImpl extends ServiceImpl<AdHarmonicMappper, AdHarm
|
|||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<Integer> getIndex(StorageParam param) {
|
||||||
|
String prefix = "ad_harmonic_result_";
|
||||||
|
String prefixNon = "ad_non_harmonic_result_";
|
||||||
|
DynamicTableNameHandler.setTableName(prefix + param.getCode());
|
||||||
|
LambdaQueryWrapper<AdHarmonicResult> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
lambdaQueryWrapper.select(AdHarmonicResult::getSort).eq(AdHarmonicResult::getResultFlag, 2);
|
||||||
|
List<AdHarmonicResult> adHarmonicResultList = this.list(lambdaQueryWrapper);
|
||||||
|
List<Integer> indexes = new ArrayList<>(adHarmonicResultList.stream().map(AdHarmonicResult::getSort).collect(Collectors.toList()));
|
||||||
|
|
||||||
|
DynamicTableNameHandler.setTableName(prefixNon + param.getCode());
|
||||||
|
LambdaQueryWrapper<AdNonHarmonicResult> resultLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
resultLambdaQueryWrapper.select(AdNonHarmonicResult::getSort).eq(AdNonHarmonicResult::getResultFlag,2);
|
||||||
|
List<AdNonHarmonicResult> nonHarmonicResults = adNonHarmonicMapper.selectList(resultLambdaQueryWrapper);
|
||||||
|
indexes.addAll(nonHarmonicResults.stream().map(AdNonHarmonicResult::getSort).collect(Collectors.toList()));
|
||||||
|
|
||||||
|
DynamicTableNameHandler.remove();
|
||||||
|
return indexes;
|
||||||
|
}
|
||||||
|
|
||||||
public Double isHarmOrInHarm(Double value) {
|
public Double isHarmOrInHarm(Double value) {
|
||||||
if (value == value.longValue()) {
|
if (value == value.longValue()) {
|
||||||
return value;
|
return value;
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ public class TableGenServiceImpl implements TableGenService {
|
|||||||
" Sort int(5) NOT NULL COMMENT '总检测脚本中的测试项序号',\n" +
|
" Sort int(5) NOT NULL COMMENT '总检测脚本中的测试项序号',\n" +
|
||||||
" AD_Type CHAR(32) NOT NULL COMMENT '检测指标,字典表',\n" +
|
" AD_Type CHAR(32) NOT NULL COMMENT '检测指标,字典表',\n" +
|
||||||
" Data_Type CHAR(32) NOT NULL COMMENT '数据指标,只有数据源为分钟统计时候才会使用(最大、最小、平均、CP95,默认平均值),字典表',\n" +
|
" Data_Type CHAR(32) NOT NULL COMMENT '数据指标,只有数据源为分钟统计时候才会使用(最大、最小、平均、CP95,默认平均值),字典表',\n" +
|
||||||
" Result_Flag int(1) NOT NULL COMMENT '0.不合格 1.合格',\n" +
|
" Result_Flag int(1) NOT NULL COMMENT '1不合格 2合格 4无法处理',\n" +
|
||||||
A+B+C+
|
A+B+C+
|
||||||
" PRIMARY KEY (Monitor_Id, Script_Id, Sort, AD_Type)\n" +
|
" PRIMARY KEY (Monitor_Id, Script_Id, Sort, AD_Type)\n" +
|
||||||
") COMMENT='监测数据表';";
|
") COMMENT='监测数据表';";
|
||||||
|
|||||||
Reference in New Issue
Block a user