1.数据清洗页面增加厂商/部门筛选
2.调整数据为空,页面报错问题
This commit is contained in:
@@ -35,6 +35,7 @@ public class MonitorBaseParam extends BaseParam {
|
|||||||
@ApiModelProperty(value = "指标id")
|
@ApiModelProperty(value = "指标id")
|
||||||
private String targetKey;
|
private String targetKey;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "终端厂家")
|
||||||
|
private String manufacturer;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package com.njcn.device.pq.controller;
|
package com.njcn.device.pq.controller;
|
||||||
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
||||||
import com.njcn.common.pojo.annotation.OperateInfo;
|
import com.njcn.common.pojo.annotation.OperateInfo;
|
||||||
import com.njcn.common.pojo.enums.common.LogEnum;
|
import com.njcn.common.pojo.enums.common.LogEnum;
|
||||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||||
@@ -25,7 +24,6 @@ import org.springframework.web.bind.annotation.RestController;
|
|||||||
import com.njcn.web.controller.BaseController;
|
import com.njcn.web.controller.BaseController;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ public interface DeptLineMapper extends BaseMapper<DeptLine> {
|
|||||||
|
|
||||||
List<TerminalGetBase.Extend> orgSubStationInfoGet(@Param("list")List<Integer> devType,@Param("powerFlag")Integer powerFlag,@Param("lineRunFlag") Integer lineRunFlag);
|
List<TerminalGetBase.Extend> orgSubStationInfoGet(@Param("list")List<Integer> devType,@Param("powerFlag")Integer powerFlag,@Param("lineRunFlag") Integer lineRunFlag);
|
||||||
|
|
||||||
List<String> getLineIdByDeptIds(@Param("deptIds")List<String> deptIds,@Param("runFlag")List<Integer> runFlag,@Param("dataType")List<Integer> dataType,@Param("objType")String objType);
|
List<String> getLineIdByDeptIds(@Param("deptIds")List<String> deptIds,@Param("manufacturer")String manufacturer,@Param("runFlag")List<Integer> runFlag,@Param("dataType")List<Integer> dataType,@Param("objType")String objType);
|
||||||
|
|
||||||
|
|
||||||
List<SubGetBase> selectSubStationList(@Param("param") SubstationParam substationParam);
|
List<SubGetBase> selectSubStationList(@Param("param") SubstationParam substationParam);
|
||||||
|
|||||||
@@ -154,6 +154,9 @@
|
|||||||
<foreach collection="deptIds" item="item" open="(" close=")" separator=",">
|
<foreach collection="deptIds" item="item" open="(" close=")" separator=",">
|
||||||
#{item}
|
#{item}
|
||||||
</foreach>
|
</foreach>
|
||||||
|
<if test="manufacturer!=null and manufacturer!='' ">
|
||||||
|
and device.Manufacturer = #{manufacturer}
|
||||||
|
</if>
|
||||||
</select>
|
</select>
|
||||||
<select id="selectSubStationList" resultType="com.njcn.device.biz.pojo.dto.SubGetBase">
|
<select id="selectSubStationList" resultType="com.njcn.device.biz.pojo.dto.SubGetBase">
|
||||||
select
|
select
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ public interface DeptLineService extends IService<DeptLine> {
|
|||||||
* @param ids 部门ids
|
* @param ids 部门ids
|
||||||
* @return 查询结果
|
* @return 查询结果
|
||||||
*/
|
*/
|
||||||
List<String> getLineByDeptIds(List<String> ids,List<Integer> runFlag,List<Integer> dataType,String objType);
|
List<String> getLineByDeptIds(List<String> ids,String manufacturer,List<Integer> runFlag,List<Integer> dataType,String objType);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 部门解除绑定监测点
|
* 部门解除绑定监测点
|
||||||
|
|||||||
@@ -295,7 +295,7 @@ public class CommTerminalServiceImpl implements CommTerminalService {
|
|||||||
@Override
|
@Override
|
||||||
public List<String> getRunMonitorByDept(MonitorBaseParam monitorBaseParam) {
|
public List<String> getRunMonitorByDept(MonitorBaseParam monitorBaseParam) {
|
||||||
List<String> ids = deptFeignClient.getDepSonIdtByDeptId(monitorBaseParam.getDeptId()).getData();
|
List<String> ids = deptFeignClient.getDepSonIdtByDeptId(monitorBaseParam.getDeptId()).getData();
|
||||||
List<String> monitorIds = deptLineService.getLineByDeptIds(ids,Stream.of(RunFlagEnum.RUNNING.getStatus()).collect(Collectors.toList()),Stream.of(0,1,2).collect(Collectors.toList()),monitorBaseParam.getObjType());
|
List<String> monitorIds = deptLineService.getLineByDeptIds(ids,monitorBaseParam.getManufacturer(),Stream.of(RunFlagEnum.RUNNING.getStatus()).collect(Collectors.toList()),Stream.of(0,1,2).collect(Collectors.toList()),monitorBaseParam.getObjType());
|
||||||
return monitorIds;
|
return monitorIds;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -650,13 +650,7 @@ public class DataVerifyServiceImpl extends ServiceImpl<DataVerifyMapper, DataVer
|
|||||||
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.DAY_OF_MONTH);
|
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.DAY_OF_MONTH);
|
||||||
Map<String, Integer> map = limitList.stream().collect(Collectors.groupingBy(it -> it.getTime().format(DATE_FORMAT),
|
Map<String, Integer> map = limitList.stream().collect(Collectors.groupingBy(it -> it.getTime().format(DATE_FORMAT),
|
||||||
Collectors.mapping(DataLimitTargetDto::getLineId, Collectors.collectingAndThen(Collectors.toSet(), Set::size))));
|
Collectors.mapping(DataLimitTargetDto::getLineId, Collectors.collectingAndThen(Collectors.toSet(), Set::size))));
|
||||||
for (DateTime dateTime : ranged) {
|
PqDataVerifyBakServiceImpl.setTime(result, ranged, map, DATE_FORMAT);
|
||||||
Map<String, Object> rangeMap = new HashMap<>();
|
|
||||||
String time = DateUtil.format(dateTime, DATE_FORMAT);
|
|
||||||
rangeMap.put("time", time);
|
|
||||||
rangeMap.put("val", map.getOrDefault(time, 0));
|
|
||||||
result.add(rangeMap);
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
//不在一个月则展示月数据
|
//不在一个月则展示月数据
|
||||||
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.MONTH);
|
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.MONTH);
|
||||||
@@ -687,13 +681,7 @@ public class DataVerifyServiceImpl extends ServiceImpl<DataVerifyMapper, DataVer
|
|||||||
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.DAY_OF_MONTH);
|
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.DAY_OF_MONTH);
|
||||||
Map<String, Integer> map = dataVerifyList.stream().collect(Collectors.groupingBy(it -> it.getTime().format(DATE_FORMAT),
|
Map<String, Integer> map = dataVerifyList.stream().collect(Collectors.groupingBy(it -> it.getTime().format(DATE_FORMAT),
|
||||||
Collectors.mapping(DataVerify::getLineId, Collectors.collectingAndThen(Collectors.toSet(), Set::size))));
|
Collectors.mapping(DataVerify::getLineId, Collectors.collectingAndThen(Collectors.toSet(), Set::size))));
|
||||||
for (DateTime dateTime : ranged) {
|
PqDataVerifyBakServiceImpl.setTime(result, ranged, map, DATE_FORMAT);
|
||||||
Map<String, Object> rangeMap = new HashMap<>();
|
|
||||||
String time = DateUtil.format(dateTime, DATE_FORMAT);
|
|
||||||
rangeMap.put("time", time);
|
|
||||||
rangeMap.put("val", map.getOrDefault(time, 0));
|
|
||||||
result.add(rangeMap);
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
//不在一个月则展示月数据
|
//不在一个月则展示月数据
|
||||||
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.MONTH);
|
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.MONTH);
|
||||||
|
|||||||
@@ -104,8 +104,8 @@ public class DeptLineServiceImpl extends ServiceImpl<DeptLineMapper, DeptLine> i
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<String> getLineByDeptIds(List<String> ids, List<Integer> runFlag, List<Integer> dataType, String objType) {
|
public List<String> getLineByDeptIds(List<String> ids,String manufacturer, List<Integer> runFlag, List<Integer> dataType, String objType) {
|
||||||
return this.baseMapper.getLineIdByDeptIds(ids, runFlag, dataType, objType);
|
return this.baseMapper.getLineIdByDeptIds(ids, manufacturer ,runFlag, dataType, objType);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -767,7 +767,7 @@ public class GeneralDeviceService {
|
|||||||
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(deptId, Stream.of(0, 1).collect(Collectors.toList())).getData();
|
List<DeptDTO> deptDTOList = deptFeignClient.getDeptDescendantIndexes(deptId, Stream.of(0, 1).collect(Collectors.toList())).getData();
|
||||||
if (CollUtil.isNotEmpty(deptDTOList)) {
|
if (CollUtil.isNotEmpty(deptDTOList)) {
|
||||||
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).distinct().collect(Collectors.toList());
|
List<String> deptIds = deptDTOList.stream().map(DeptDTO::getId).distinct().collect(Collectors.toList());
|
||||||
return deptLineService.getLineByDeptIds(deptIds,runFlag,dataType,null);
|
return deptLineService.getLineByDeptIds(deptIds,null,runFlag,dataType,null);
|
||||||
}
|
}
|
||||||
return new ArrayList<>();
|
return new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -91,17 +91,24 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
@Override
|
@Override
|
||||||
public VerifyMonitorVO getMonitorVerifyData(MonitorBaseParam monitorBaseParam) {
|
public VerifyMonitorVO getMonitorVerifyData(MonitorBaseParam monitorBaseParam) {
|
||||||
List<String> monitorIds = commTerminalService.getRunMonitorByDept(monitorBaseParam);
|
List<String> monitorIds = commTerminalService.getRunMonitorByDept(monitorBaseParam);
|
||||||
if (CollUtil.isEmpty(monitorIds)) {
|
|
||||||
throw new BusinessException(DeviceResponseEnum.QUERY_LINE_DATA_EMPTY);
|
|
||||||
}
|
|
||||||
List<PqDataVerifyBak> dataVerifyList = baseDataVerifyQuery(monitorIds, monitorBaseParam);
|
|
||||||
VerifyMonitorVO verifyMonitorVO = new VerifyMonitorVO();
|
VerifyMonitorVO verifyMonitorVO = new VerifyMonitorVO();
|
||||||
verifyMonitorVO.setRunNum(monitorIds.size());
|
if (CollUtil.isNotEmpty(monitorIds)) {
|
||||||
verifyMonitorVO.setAbnormalNum(dataVerifyList.stream().collect(Collectors.groupingBy(PqDataVerifyBak::getLineId)).size());
|
List<PqDataVerifyBak> dataVerifyList = baseDataVerifyQuery(monitorIds, monitorBaseParam);
|
||||||
List<PqDataVerifyBak> dataSumVerifyList = baseDataSumVerifyQuery(monitorIds, monitorBaseParam);
|
verifyMonitorVO.setRunNum(monitorIds.size());
|
||||||
verifyMonitorVO.setMapList(getRangeAbnormalMonitor(monitorBaseParam, dataVerifyList));
|
verifyMonitorVO.setAbnormalNum(dataVerifyList.stream().collect(Collectors.groupingBy(PqDataVerifyBak::getLineId)).size());
|
||||||
verifyMonitorVO.setTargetList(getAbnormalTarget(dataSumVerifyList));
|
List<PqDataVerifyBak> dataSumVerifyList = baseDataSumVerifyQuery(monitorIds, monitorBaseParam);
|
||||||
verifyMonitorVO.setMonitorAlarmInfo(getAbnormalTable(dataVerifyList, monitorBaseParam));
|
verifyMonitorVO.setMapList(getRangeAbnormalMonitor(monitorBaseParam, dataVerifyList));
|
||||||
|
verifyMonitorVO.setTargetList(getAbnormalTarget(dataSumVerifyList));
|
||||||
|
verifyMonitorVO.setMonitorAlarmInfo(getAbnormalTable(dataVerifyList, monitorBaseParam));
|
||||||
|
} else {
|
||||||
|
verifyMonitorVO.setRunNum(0);
|
||||||
|
verifyMonitorVO.setAbnormalNum(0);
|
||||||
|
|
||||||
|
verifyMonitorVO.setMapList(getRangeAbnormalMonitor(monitorBaseParam, new ArrayList<>()));
|
||||||
|
verifyMonitorVO.setTargetList(getAbnormalTarget(new ArrayList<>()));
|
||||||
|
verifyMonitorVO.setMonitorAlarmInfo(getAbnormalTable(new ArrayList<>(), monitorBaseParam));
|
||||||
|
}
|
||||||
|
|
||||||
return verifyMonitorVO;
|
return verifyMonitorVO;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -181,8 +188,8 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
public List<DetailAbnormalVO> monitorAbnormalTable(MonitorBaseParam monitorBaseParam) {
|
public List<DetailAbnormalVO> monitorAbnormalTable(MonitorBaseParam monitorBaseParam) {
|
||||||
List<DetailAbnormalVO> result = new ArrayList<>();
|
List<DetailAbnormalVO> result = new ArrayList<>();
|
||||||
//参数校验
|
//参数校验
|
||||||
Map<String, PqReasonableRangeDto> rangeMap= getStandRange();
|
Map<String, PqReasonableRangeDto> rangeMap = getStandRange();
|
||||||
if(StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) {
|
if (StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) {
|
||||||
if (!rangeMap.containsKey(monitorBaseParam.getTargetKey())) {
|
if (!rangeMap.containsKey(monitorBaseParam.getTargetKey())) {
|
||||||
throw new BusinessException("targetKey异常参数!");
|
throw new BusinessException("targetKey异常参数!");
|
||||||
}
|
}
|
||||||
@@ -198,73 +205,73 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
.eq(PqDataVerifyBak::getState, 1)
|
.eq(PqDataVerifyBak::getState, 1)
|
||||||
.orderByAsc(PqDataVerifyBak::getTimeId);
|
.orderByAsc(PqDataVerifyBak::getTimeId);
|
||||||
|
|
||||||
if(StrUtil.isNotBlank(monitorBaseParam.getTargetKey())){
|
if (StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) {
|
||||||
switch (monitorBaseParam.getTargetKey()) {
|
switch (monitorBaseParam.getTargetKey()) {
|
||||||
case Param.freq:
|
case Param.freq:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getFreq,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getFreq, 1);
|
||||||
break;
|
break;
|
||||||
case Param.freq_dev:
|
case Param.freq_dev:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getFreqDev,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getFreqDev, 1);
|
||||||
break;
|
break;
|
||||||
case Param.rms_v:
|
case Param.rms_v:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVRms,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVRms, 1);
|
||||||
break;
|
break;
|
||||||
case Param.rms_lvr:
|
case Param.rms_lvr:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getRmsLvr,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getRmsLvr, 1);
|
||||||
break;
|
break;
|
||||||
case Param.vu_dev:
|
case Param.vu_dev:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVuDev,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVuDev, 1);
|
||||||
break;
|
break;
|
||||||
case Param.vl_dev:
|
case Param.vl_dev:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVlDev,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVlDev, 1);
|
||||||
break;
|
break;
|
||||||
case Param.rms_i:
|
case Param.rms_i:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getIRms,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getIRms, 1);
|
||||||
break;
|
break;
|
||||||
case Param.v_thd:
|
case Param.v_thd:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVThd,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVThd, 1);
|
||||||
break;
|
break;
|
||||||
case Param.v_1_v:
|
case Param.v_1_v:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getV,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getV, 1);
|
||||||
break;
|
break;
|
||||||
case Param.phasic_v_1:
|
case Param.phasic_v_1:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getV1Phasic,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getV1Phasic, 1);
|
||||||
break;
|
break;
|
||||||
case Param.phasic_rate_x:
|
case Param.phasic_rate_x:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVPhasic,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVPhasic, 1);
|
||||||
break;
|
break;
|
||||||
case Param.v_rate:
|
case Param.v_rate:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVHarm,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVHarm, 1);
|
||||||
break;
|
break;
|
||||||
case Param.in_v_rate:
|
case Param.in_v_rate:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVInharm,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVInharm, 1);
|
||||||
break;
|
break;
|
||||||
case Param.v_zero:
|
case Param.v_zero:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVZero,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVZero, 1);
|
||||||
break;
|
break;
|
||||||
case Param.v_neg:
|
case Param.v_neg:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVNeg,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVNeg, 1);
|
||||||
break;
|
break;
|
||||||
case Param.v_pos:
|
case Param.v_pos:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVPos,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVPos, 1);
|
||||||
break;
|
break;
|
||||||
case Param.v_unbalance:
|
case Param.v_unbalance:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getVUnbalance,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getVUnbalance, 1);
|
||||||
break;
|
break;
|
||||||
case Param.fluc:
|
case Param.fluc:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getFluc,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getFluc, 1);
|
||||||
break;
|
break;
|
||||||
case Param.pst:
|
case Param.pst:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getPst,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getPst, 1);
|
||||||
break;
|
break;
|
||||||
case Param.plt:
|
case Param.plt:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getPlt,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getPlt, 1);
|
||||||
break;
|
break;
|
||||||
case Param.pf:
|
case Param.pf:
|
||||||
lambdaQueryWrapper.eq(PqDataVerifyBak::getPf,1);
|
lambdaQueryWrapper.eq(PqDataVerifyBak::getPf, 1);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
log.error("方法{}未匹配到异常数据指标","monitorAbnormalTable");
|
log.error("方法{}未匹配到异常数据指标", "monitorAbnormalTable");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -272,40 +279,40 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
for (PqDataVerifyBak pqDataVerifyBak : dataVerifyList) {
|
for (PqDataVerifyBak pqDataVerifyBak : dataVerifyList) {
|
||||||
LineDetailDataVO lineDevGetDTO = lineDetailMap.get(pqDataVerifyBak.getLineId());
|
LineDetailDataVO lineDevGetDTO = lineDetailMap.get(pqDataVerifyBak.getLineId());
|
||||||
String temBgName = "";
|
String temBgName = "";
|
||||||
if(lineDevGetDTO.getPowerFlag().equals(LineBaseEnum.POWER_FLAG.getCode())){
|
if (lineDevGetDTO.getPowerFlag().equals(LineBaseEnum.POWER_FLAG.getCode())) {
|
||||||
temBgName = lineDevGetDTO.getBdName();
|
temBgName = lineDevGetDTO.getBdName();
|
||||||
}else if(lineDevGetDTO.getPowerFlag().equals(LineBaseEnum.POWER_FLAG_NOT.getCode())) {
|
} else if (lineDevGetDTO.getPowerFlag().equals(LineBaseEnum.POWER_FLAG_NOT.getCode())) {
|
||||||
temBgName = lineDevGetDTO.getObjName();
|
temBgName = lineDevGetDTO.getObjName();
|
||||||
}
|
}
|
||||||
try (InputStream fileStream = fileStorageUtil.getFileStream(pqDataVerifyBak.getPath())) {
|
try (InputStream fileStream = fileStorageUtil.getFileStream(pqDataVerifyBak.getPath())) {
|
||||||
JSONArray jsonArray = new JSONArray(new JSONTokener(fileStream, new JSONConfig()));
|
JSONArray jsonArray = new JSONArray(new JSONTokener(fileStream, new JSONConfig()));
|
||||||
String[] errorTimeCount = {"0"};
|
String[] errorTimeCount = {"0"};
|
||||||
Long [] errAllCount = {0L};
|
Long[] errAllCount = {0L};
|
||||||
jsonArray.forEach(it -> {
|
jsonArray.forEach(it -> {
|
||||||
JSONObject targetJson = (JSONObject) it;
|
JSONObject targetJson = (JSONObject) it;
|
||||||
if (StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) {
|
if (StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) {
|
||||||
if (targetJson.containsKey(monitorBaseParam.getTargetKey())) {
|
if (targetJson.containsKey(monitorBaseParam.getTargetKey())) {
|
||||||
JSONArray innerJson = targetJson.getJSONArray(monitorBaseParam.getTargetKey());
|
JSONArray innerJson = targetJson.getJSONArray(monitorBaseParam.getTargetKey());
|
||||||
PqReasonableRangeDto dto = rangeMap.get(monitorBaseParam.getTargetKey());
|
PqReasonableRangeDto dto = rangeMap.get(monitorBaseParam.getTargetKey());
|
||||||
if(Objects.nonNull(dto.getHarmStart()) && Objects.nonNull(dto.getHarmEnd())){
|
if (Objects.nonNull(dto.getHarmStart()) && Objects.nonNull(dto.getHarmEnd())) {
|
||||||
errorTimeCount[0] = targetJson.get("errorTimes").toString();
|
errorTimeCount[0] = targetJson.get("errorTimes").toString();
|
||||||
for(Object oJson : innerJson){
|
for (Object oJson : innerJson) {
|
||||||
JSONObject jsonObjectTem = (JSONObject) oJson;
|
JSONObject jsonObjectTem = (JSONObject) oJson;
|
||||||
JSONArray list = jsonObjectTem.getJSONArray("list");
|
JSONArray list = jsonObjectTem.getJSONArray("list");
|
||||||
list.forEach(listItem -> {
|
list.forEach(listItem -> {
|
||||||
JSONObject object = (JSONObject) listItem;
|
JSONObject object = (JSONObject) listItem;
|
||||||
long errCount = Long.parseLong(object.get("errorCounts").toString());
|
long errCount = Long.parseLong(object.get("errorCounts").toString());
|
||||||
errAllCount[0] +=errCount;
|
errAllCount[0] += errCount;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}else {
|
} else {
|
||||||
for(Object oJson : innerJson){
|
for (Object oJson : innerJson) {
|
||||||
JSONObject jsonObjectTem = (JSONObject) oJson;
|
JSONObject jsonObjectTem = (JSONObject) oJson;
|
||||||
JSONArray list = jsonObjectTem.getJSONArray("list");
|
JSONArray list = jsonObjectTem.getJSONArray("list");
|
||||||
list.forEach(listItem -> {
|
list.forEach(listItem -> {
|
||||||
JSONObject object = (JSONObject) listItem;
|
JSONObject object = (JSONObject) listItem;
|
||||||
long errCount = Long.parseLong(object.get("errorCounts").toString());
|
long errCount = Long.parseLong(object.get("errorCounts").toString());
|
||||||
errAllCount[0] +=errCount;
|
errAllCount[0] += errCount;
|
||||||
});
|
});
|
||||||
errorTimeCount[0] = jsonObjectTem.get("errorTimes").toString();
|
errorTimeCount[0] = jsonObjectTem.get("errorTimes").toString();
|
||||||
}
|
}
|
||||||
@@ -315,13 +322,13 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
rangeMap.forEach((rangeKey, val) -> {
|
rangeMap.forEach((rangeKey, val) -> {
|
||||||
if (targetJson.containsKey(rangeKey)) {
|
if (targetJson.containsKey(rangeKey)) {
|
||||||
JSONArray innerJson = targetJson.getJSONArray(rangeKey);
|
JSONArray innerJson = targetJson.getJSONArray(rangeKey);
|
||||||
for(Object oJson : innerJson){
|
for (Object oJson : innerJson) {
|
||||||
JSONObject jsonObjectTem = (JSONObject) oJson;
|
JSONObject jsonObjectTem = (JSONObject) oJson;
|
||||||
JSONArray list = jsonObjectTem.getJSONArray("list");
|
JSONArray list = jsonObjectTem.getJSONArray("list");
|
||||||
list.forEach(listItem -> {
|
list.forEach(listItem -> {
|
||||||
JSONObject object = (JSONObject) listItem;
|
JSONObject object = (JSONObject) listItem;
|
||||||
long errCount = Long.parseLong(object.get("errorCounts").toString());
|
long errCount = Long.parseLong(object.get("errorCounts").toString());
|
||||||
errAllCount[0] +=errCount;
|
errAllCount[0] += errCount;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -340,7 +347,7 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
detailAbnormalVO.setTargetKey(monitorBaseParam.getTargetKey());
|
detailAbnormalVO.setTargetKey(monitorBaseParam.getTargetKey());
|
||||||
detailAbnormalVO.setErrCount(errAllCount[0].toString());
|
detailAbnormalVO.setErrCount(errAllCount[0].toString());
|
||||||
result.add(detailAbnormalVO);
|
result.add(detailAbnormalVO);
|
||||||
} catch (BusinessException b){
|
} catch (BusinessException b) {
|
||||||
//文件为空时候的特殊处理
|
//文件为空时候的特殊处理
|
||||||
DetailAbnormalVO detailAbnormalVO = new DetailAbnormalVO();
|
DetailAbnormalVO detailAbnormalVO = new DetailAbnormalVO();
|
||||||
detailAbnormalVO.setTimeSum("/");
|
detailAbnormalVO.setTimeSum("/");
|
||||||
@@ -361,7 +368,7 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
@Override
|
@Override
|
||||||
public List<DetailAbnormalVO.DetailAbnormalInnerVO> monitorAbnormalTableDetail(MonitorBaseParam monitorBaseParam) {
|
public List<DetailAbnormalVO.DetailAbnormalInnerVO> monitorAbnormalTableDetail(MonitorBaseParam monitorBaseParam) {
|
||||||
Map<String, PqReasonableRangeDto> dtoMap = getStandRange();
|
Map<String, PqReasonableRangeDto> dtoMap = getStandRange();
|
||||||
if(StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) {
|
if (StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) {
|
||||||
if (!dtoMap.containsKey(monitorBaseParam.getTargetKey())) {
|
if (!dtoMap.containsKey(monitorBaseParam.getTargetKey())) {
|
||||||
throw new BusinessException("targetKey异常参数!");
|
throw new BusinessException("targetKey异常参数!");
|
||||||
}
|
}
|
||||||
@@ -376,7 +383,7 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
JSONArray jsonArray = new JSONArray(new JSONTokener(fileStream, new JSONConfig()));
|
JSONArray jsonArray = new JSONArray(new JSONTokener(fileStream, new JSONConfig()));
|
||||||
for (Object it : jsonArray) {
|
for (Object it : jsonArray) {
|
||||||
JSONObject targetJson = (JSONObject) it;
|
JSONObject targetJson = (JSONObject) it;
|
||||||
if(targetJson.containsKey("lineErrorTimes")){
|
if (targetJson.containsKey("lineErrorTimes")) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) {
|
if (StrUtil.isNotBlank(monitorBaseParam.getTargetKey())) {
|
||||||
@@ -436,7 +443,7 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
private void resultDeal(Map<String, PqReasonableRangeDto> dtoMap, String targetKey, JSONObject targetJson, List<DetailAbnormalVO.DetailAbnormalInnerVO> result) {
|
private void resultDeal(Map<String, PqReasonableRangeDto> dtoMap, String targetKey, JSONObject targetJson, List<DetailAbnormalVO.DetailAbnormalInnerVO> result) {
|
||||||
PqReasonableRangeDto pqReasonableRangeDto = dtoMap.get(targetKey);
|
PqReasonableRangeDto pqReasonableRangeDto = dtoMap.get(targetKey);
|
||||||
JSONArray innerJson = targetJson.getJSONArray(targetKey);
|
JSONArray innerJson = targetJson.getJSONArray(targetKey);
|
||||||
innerJson.forEach(oo-> {
|
innerJson.forEach(oo -> {
|
||||||
JSONObject jsonObjectTem = (JSONObject) oo;
|
JSONObject jsonObjectTem = (JSONObject) oo;
|
||||||
String targetName = jsonObjectTem.get("targetName").toString();
|
String targetName = jsonObjectTem.get("targetName").toString();
|
||||||
JSONArray list = jsonObjectTem.getJSONArray("list");
|
JSONArray list = jsonObjectTem.getJSONArray("list");
|
||||||
@@ -477,9 +484,9 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
vo.setTargetKey(targetKey);
|
vo.setTargetKey(targetKey);
|
||||||
vo.setPhaseType(phaseKey);
|
vo.setPhaseType(phaseKey);
|
||||||
|
|
||||||
if((pqReasonableRangeDto.getInfluxdbTableName()+SEPARATOR+pqReasonableRangeDto.getIndexCode()).equals(targetKey)){
|
if ((pqReasonableRangeDto.getInfluxdbTableName() + SEPARATOR + pqReasonableRangeDto.getIndexCode()).equals(targetKey)) {
|
||||||
vo.setRangeDesc(pqReasonableRangeDto.getMinValue() + unit + " ~ " + pqReasonableRangeDto.getMaxValue()+"*CT1" + unit);
|
vo.setRangeDesc(pqReasonableRangeDto.getMinValue() + unit + " ~ " + pqReasonableRangeDto.getMaxValue() + "*CT1" + unit);
|
||||||
}else {
|
} else {
|
||||||
vo.setRangeDesc(pqReasonableRangeDto.getMinValue() + unit + " ~ " + pqReasonableRangeDto.getMaxValue() + unit);
|
vo.setRangeDesc(pqReasonableRangeDto.getMinValue() + unit + " ~ " + pqReasonableRangeDto.getMaxValue() + unit);
|
||||||
}
|
}
|
||||||
valueList.forEach(ites -> {
|
valueList.forEach(ites -> {
|
||||||
@@ -537,33 +544,29 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
DateTime endTime = DateUtil.parse(monitorBaseParam.getSearchEndTime());
|
DateTime endTime = DateUtil.parse(monitorBaseParam.getSearchEndTime());
|
||||||
if (startTime.year() == endTime.year() && startTime.month() == endTime.month()) {
|
if (startTime.year() == endTime.year() && startTime.month() == endTime.month()) {
|
||||||
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.DAY_OF_MONTH);
|
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.DAY_OF_MONTH);
|
||||||
Map<String, Integer> map = dataVerifyList.stream().collect(Collectors.groupingBy(its -> its.getTimeId().format(DATE_FORMAT),
|
Map<String, Integer> map = dataVerifyList.stream().collect(Collectors.groupingBy(its -> its.getTimeId().format(DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN)),
|
||||||
Collectors.mapping(PqDataVerifyBak::getLineId, Collectors.collectingAndThen(Collectors.toSet(), Set::size))));
|
Collectors.mapping(PqDataVerifyBak::getLineId, Collectors.collectingAndThen(Collectors.toSet(), Set::size))));
|
||||||
for (DateTime dateTime : ranged) {
|
setTime(result, ranged, map, DateTimeFormatter.ofPattern(DatePattern.NORM_DATE_PATTERN));
|
||||||
Map<String, Object> rangeMap = new HashMap<>();
|
|
||||||
String time = DateUtil.format(dateTime, DATE_FORMAT);
|
|
||||||
rangeMap.put("time", time);
|
|
||||||
rangeMap.put("val", map.getOrDefault(time, 0));
|
|
||||||
result.add(rangeMap);
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
//不在一个月则展示月数据
|
//不在一个月则展示月数据
|
||||||
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.MONTH);
|
DateRange ranged = DateUtil.range(DateUtil.parse(monitorBaseParam.getSearchBeginTime()), DateUtil.parse(monitorBaseParam.getSearchEndTime()), DateField.MONTH);
|
||||||
if (CollUtil.isNotEmpty(dataVerifyList)) {
|
Map<String, Integer> map = dataVerifyList.stream().collect(Collectors.groupingBy(it -> it.getTimeId().format(DateTimeFormatter.ofPattern(DatePattern.NORM_MONTH_PATTERN)),
|
||||||
Map<String, Integer> map = dataVerifyList.stream().collect(Collectors.groupingBy(it -> it.getTimeId().format(DateTimeFormatter.ofPattern(DatePattern.NORM_MONTH_PATTERN)),
|
Collectors.mapping(PqDataVerifyBak::getLineId, Collectors.collectingAndThen(Collectors.toSet(), Set::size))));
|
||||||
Collectors.mapping(PqDataVerifyBak::getLineId, Collectors.collectingAndThen(Collectors.toSet(), Set::size))));
|
setTime(result, ranged, map, DateTimeFormatter.ofPattern(DatePattern.NORM_MONTH_PATTERN));
|
||||||
for (DateTime dateTime : ranged) {
|
|
||||||
Map<String, Object> rangeMap = new HashMap<>();
|
|
||||||
String time = DateUtil.format(dateTime, DateTimeFormatter.ofPattern(DatePattern.NORM_MONTH_PATTERN));
|
|
||||||
rangeMap.put("time", time);
|
|
||||||
rangeMap.put("val", map.getOrDefault(time, 0));
|
|
||||||
result.add(rangeMap);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void setTime(List<Map<String, Object>> result, DateRange ranged, Map<String, Integer> map, DateTimeFormatter dateFormat) {
|
||||||
|
for (DateTime dateTime : ranged) {
|
||||||
|
Map<String, Object> rangeMap = new HashMap<>();
|
||||||
|
String time = DateUtil.format(dateTime, dateFormat);
|
||||||
|
rangeMap.put("time", time);
|
||||||
|
rangeMap.put("val", map.getOrDefault(time, 0));
|
||||||
|
result.add(rangeMap);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 指标异常测点数量
|
* 指标异常测点数量
|
||||||
@@ -681,9 +684,9 @@ public class PqDataVerifyBakServiceImpl extends ServiceImpl<PqDataVerifyBakMappe
|
|||||||
if (StrUtil.isNotBlank(dto.getUnit())) {
|
if (StrUtil.isNotBlank(dto.getUnit())) {
|
||||||
unit = dto.getUnit();
|
unit = dto.getUnit();
|
||||||
}
|
}
|
||||||
if(temStr.equals(Param.rms_i)){
|
if (temStr.equals(Param.rms_i)) {
|
||||||
verifyTargetVO.setRangeDesc(dto.getMinValue() + unit + " ~ " + dto.getMaxValue()+"*CT1" + unit);
|
verifyTargetVO.setRangeDesc(dto.getMinValue() + unit + " ~ " + dto.getMaxValue() + "*CT1" + unit);
|
||||||
}else {
|
} else {
|
||||||
verifyTargetVO.setRangeDesc(dto.getMinValue() + unit + " ~ " + dto.getMaxValue() + unit);
|
verifyTargetVO.setRangeDesc(dto.getMinValue() + unit + " ~ " + dto.getMaxValue() + unit);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -19,14 +19,11 @@ import com.njcn.device.pq.pojo.param.DeviceInfoParam;
|
|||||||
import com.njcn.device.pq.pojo.po.Line;
|
import com.njcn.device.pq.pojo.po.Line;
|
||||||
import com.njcn.device.pq.pojo.po.LineDetail;
|
import com.njcn.device.pq.pojo.po.LineDetail;
|
||||||
import com.njcn.device.pq.pojo.vo.DeptLineTreeVO;
|
import com.njcn.device.pq.pojo.vo.DeptLineTreeVO;
|
||||||
import com.njcn.device.pq.pojo.vo.DevAndLine;
|
|
||||||
import com.njcn.device.pq.pojo.vo.TerminalTree;
|
import com.njcn.device.pq.pojo.vo.TerminalTree;
|
||||||
import com.njcn.device.pq.service.TerminalTreeService;
|
import com.njcn.device.pq.service.TerminalTreeService;
|
||||||
import com.njcn.supervision.api.UserLedgerFeignClient;
|
import com.njcn.supervision.api.UserLedgerFeignClient;
|
||||||
import com.njcn.supervision.pojo.param.user.UserReportParam;
|
import com.njcn.supervision.pojo.param.user.UserReportParam;
|
||||||
import com.njcn.supervision.pojo.po.user.UserReportPO;
|
|
||||||
import com.njcn.supervision.pojo.vo.user.UserLedgerVO;
|
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.AreaFeignClient;
|
||||||
import com.njcn.system.api.DicDataFeignClient;
|
import com.njcn.system.api.DicDataFeignClient;
|
||||||
import com.njcn.system.pojo.enums.StatisticsEnum;
|
import com.njcn.system.pojo.enums.StatisticsEnum;
|
||||||
@@ -58,8 +55,6 @@ public class TerminalTreeServiceImpl implements TerminalTreeService {
|
|||||||
|
|
||||||
private final AreaFeignClient areaFeignClient;
|
private final AreaFeignClient areaFeignClient;
|
||||||
|
|
||||||
private final DicDataFeignClient dicDataFeignClient;
|
|
||||||
|
|
||||||
private final DeptLineMapper deptLineMapper;
|
private final DeptLineMapper deptLineMapper;
|
||||||
|
|
||||||
private final GeneralDeviceService generalDeviceService;
|
private final GeneralDeviceService generalDeviceService;
|
||||||
|
|||||||
Reference in New Issue
Block a user