1.调整稳态电能质量水平评估返回默认信息

This commit is contained in:
wr
2025-05-12 16:10:51 +08:00
parent 1e3af78bb5
commit e6d75386aa
4 changed files with 330 additions and 351 deletions

View File

@@ -8,14 +8,6 @@ import com.njcn.common.utils.HttpResultUtil;
import com.njcn.device.pq.pojo.param.DevRunEvaluateParam;
import com.njcn.device.pq.pojo.param.DeviceInfoParam;
import com.njcn.device.pq.pojo.vo.DeviceRunEvaluateVO;
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.pq.pojo.dto.DevComFlagDTO;
import com.njcn.device.pq.pojo.param.DeviceInfoParam;
import com.njcn.device.pq.pojo.po.Device;
import com.njcn.device.pq.pojo.vo.TerminalEvaluateAreaVO;
import com.njcn.device.pq.service.DeviceRunEvaluateService;
import com.njcn.web.controller.BaseController;
@@ -28,10 +20,6 @@ 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 org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Objects;
import java.util.List;
@@ -60,7 +48,7 @@ public class DeviceRunEvaluateController extends BaseController {
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@PostMapping("/getRunEvaluateDetail")
@ApiOperation("终端运行评价")
@ApiOperation("异常终端详情")
public HttpResult<List<DeviceRunEvaluateVO>> getRunEvaluateDetail(@RequestBody @Validated DevRunEvaluateParam param) {
String methodDescribe = getMethodDescribe("getRunEvaluateDetail");
List<DeviceRunEvaluateVO> runEvaluate = deviceRunEvaluateService.getRunEvaluateDetail(param);
@@ -78,7 +66,6 @@ public class DeviceRunEvaluateController extends BaseController {
}
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@PostMapping("/lastWeekTrend")
@ApiOperation("最近一周终端评价趋势")

View File

@@ -32,9 +32,7 @@ import com.njcn.harmonic.api.RStatLimitRateDClient;
import com.njcn.harmonic.pojo.param.RStatLimitQueryParam;
import com.njcn.harmonic.pojo.po.day.RStatLimitRateDPO;
import com.njcn.supervision.api.UserLedgerFeignClient;
import com.njcn.supervision.pojo.param.user.UserReportParam;
import com.njcn.supervision.pojo.vo.user.NewUserReportVO;
import com.njcn.supervision.pojo.vo.user.UserLedgerVO;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -134,29 +132,11 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService {
List<RStatLimitRateDPO> limitRateDPOS = limitRateList.stream().filter(x -> lineIds.contains(x.getLineId())).collect(Collectors.toList());
if (CollUtil.isNotEmpty(limitRateDPOS)) {
double overTime = limitRateDPOS.stream().mapToDouble(x -> (x.getUaberranceOvertime() +
x.getUharm2Overtime() +
x.getUharm3Overtime() +
x.getUharm4Overtime() +
x.getUharm5Overtime() +
x.getUharm6Overtime() +
x.getUharm7Overtime() +
x.getUharm8Overtime() +
x.getUharm9Overtime() +
x.getUharm10Overtime() +
x.getUharm11Overtime() +
x.getUharm12Overtime() +
x.getUharm13Overtime() +
x.getUharm14Overtime() +
x.getUharm15Overtime() +
x.getUharm16Overtime() +
x.getUharm17Overtime() +
x.getUharm18Overtime() +
x.getUharm19Overtime() +
x.getUharm20Overtime() +
x.getUharm21Overtime() +
x.getUharm22Overtime() +
x.getUharm23Overtime() +
x.getUharm24Overtime() +
x.getUharm2Overtime() + x.getUharm3Overtime() + x.getUharm4Overtime() + x.getUharm5Overtime() +
x.getUharm6Overtime() + x.getUharm7Overtime() + x.getUharm8Overtime() + x.getUharm9Overtime() +
x.getUharm10Overtime() + x.getUharm11Overtime() + x.getUharm12Overtime() + x.getUharm13Overtime() + x.getUharm14Overtime() +
x.getUharm15Overtime() + x.getUharm16Overtime() + x.getUharm17Overtime() + x.getUharm18Overtime() + x.getUharm19Overtime() +
x.getUharm20Overtime() + x.getUharm21Overtime() + x.getUharm22Overtime() + x.getUharm23Overtime() + x.getUharm24Overtime() +
x.getUharm25Overtime())).sum();
double allTime = limitRateDPOS.stream().mapToDouble(x -> x.getAllTime() * 25.0).sum();
if (allTime == 0) {
@@ -225,8 +205,6 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService {
}
@Override
public List<TerminalEvaluateAreaVO> areaTerminalStatistic(DeviceInfoParam.BusinessParam businessParam) {
List<TerminalEvaluateAreaVO> result = new ArrayList<>();
@@ -480,7 +458,4 @@ public class DeviceRunEvaluateServiceImpl implements DeviceRunEvaluateService {
}
}
}

View File

@@ -450,7 +450,6 @@ public class GridServiceImpl implements IGridService {
}
/**
*
* @param limitRateDPO 对象
* @param startNum 循环开始
* @param endNum 循环结束
@@ -477,8 +476,6 @@ public class GridServiceImpl implements IGridService {
}
@Override
public List<EvaluationLevelVo.EvaluationDetail> getEvaluationDetail(AssessParam param) {
List<EvaluationLevelVo.EvaluationDetail> result = new ArrayList<>();
@@ -492,41 +489,61 @@ public class GridServiceImpl implements IGridService {
.flatMap(List::stream)
.distinct()
.collect(Collectors.toList());
List<RStatLimitTargetVO> overLimitList = new ArrayList<>();
if (CollUtil.isNotEmpty(lineList)) {
//获取监测点越限集合
List<RStatLimitTargetVO> overLimitList = rStatLimitTargetDMapper.getSumTargetDetails(lineList,
overLimitList .addAll(rStatLimitTargetDMapper.getSumTargetDetails(lineList,
param.getStartTime(),
param.getEndTime());
param.getEndTime())) ;
}
//获取部门
List<DeptDTO> deptList = deptFeignClient.getDepSonDetailByDeptId(param.getDeptIndex()).getData();
deptList.forEach(item -> {
if (lineMap.containsKey(item.getId())) {
EvaluationLevelVo.EvaluationDetail detail = new EvaluationLevelVo.EvaluationDetail();
detail.setDeptId(item.getId());
detail.setDeptName(item.getName());
EvaluationLevelVo.TargetDetail detail1 = new EvaluationLevelVo.TargetDetail();
detail1.setTargetName(DicDataEnum.FREQUENCY_DEV.getName());
detail1.setOverDay(0);
detail1.setOverNum(0);
EvaluationLevelVo.TargetDetail detail2 = new EvaluationLevelVo.TargetDetail();
detail2.setTargetName(DicDataEnum.VOLTAGE_DEV.getName());
detail2.setOverDay(0);
detail2.setOverNum(0);
EvaluationLevelVo.TargetDetail detail3 = new EvaluationLevelVo.TargetDetail();
detail3.setTargetName(DicDataEnum.THD_V.getName());
detail3.setOverDay(0);
detail3.setOverNum(0);
EvaluationLevelVo.TargetDetail detail4 = new EvaluationLevelVo.TargetDetail();
detail4.setTargetName(DicDataEnum.FLICKER.getName());
detail4.setOverDay(0);
detail4.setOverNum(0);
EvaluationLevelVo.TargetDetail detail5 = new EvaluationLevelVo.TargetDetail();
detail5.setTargetName(DicDataEnum.phase_Voltage.getName());
detail5.setOverDay(0);
detail5.setOverNum(0);
EvaluationLevelVo.TargetDetail detail6 = new EvaluationLevelVo.TargetDetail();
detail6.setTargetName(DicDataEnum.NEG_CURRENT.getName());
detail6.setOverDay(0);
detail6.setOverNum(0);
EvaluationLevelVo.TargetDetail detail7 = new EvaluationLevelVo.TargetDetail();
detail7.setTargetName(DicDataEnum.HARMONIC_CURRENT.getName());
detail7.setOverDay(0);
detail7.setOverNum(0);
EvaluationLevelVo.TargetDetail detail8 = new EvaluationLevelVo.TargetDetail();
detail8.setTargetName(DicDataEnum.HARMONIC_VOLTAGE.getName());
detail8.setOverDay(0);
detail8.setOverNum(0);
EvaluationLevelVo.TargetDetail detail9 = new EvaluationLevelVo.TargetDetail();
detail9.setTargetName(DicDataEnum.INTERHARMONIC_VOLTAGE.getName());
detail9.setOverDay(0);
detail9.setOverNum(0);
if (lineMap.containsKey(item.getId())) {
if (CollUtil.isNotEmpty(lineMap.get(item.getId()))) {
List<String> ll = lineMap.get(item.getId());
detail.setOnlineNum(ll.size());
//筛选当前部门下监测点的超标数据
List<RStatLimitTargetVO> list2 = overLimitList.stream().filter(it -> ll.contains(it.getLineId())).collect(Collectors.toList());
EvaluationLevelVo.TargetDetail detail1 = new EvaluationLevelVo.TargetDetail();
detail1.setTargetName(DicDataEnum.FREQUENCY_DEV.getName());
EvaluationLevelVo.TargetDetail detail2 = new EvaluationLevelVo.TargetDetail();
detail2.setTargetName(DicDataEnum.VOLTAGE_DEV.getName());
EvaluationLevelVo.TargetDetail detail3 = new EvaluationLevelVo.TargetDetail();
detail3.setTargetName(DicDataEnum.THD_V.getName());
EvaluationLevelVo.TargetDetail detail4 = new EvaluationLevelVo.TargetDetail();
detail4.setTargetName(DicDataEnum.FLICKER.getName());
EvaluationLevelVo.TargetDetail detail5 = new EvaluationLevelVo.TargetDetail();
detail5.setTargetName(DicDataEnum.phase_Voltage.getName());
EvaluationLevelVo.TargetDetail detail6 = new EvaluationLevelVo.TargetDetail();
detail6.setTargetName(DicDataEnum.NEG_CURRENT.getName());
EvaluationLevelVo.TargetDetail detail7 = new EvaluationLevelVo.TargetDetail();
detail7.setTargetName(DicDataEnum.HARMONIC_CURRENT.getName());
EvaluationLevelVo.TargetDetail detail8 = new EvaluationLevelVo.TargetDetail();
detail8.setTargetName(DicDataEnum.HARMONIC_VOLTAGE.getName());
EvaluationLevelVo.TargetDetail detail9 = new EvaluationLevelVo.TargetDetail();
detail9.setTargetName(DicDataEnum.INTERHARMONIC_VOLTAGE.getName());
if (CollUtil.isNotEmpty(list2)) {
//筛选出9项指标(电压偏差、频率偏差、电压总谐波畸变率、电压闪变、三相电压不平衡度、负序电流、谐波电流、间谐波电压、谐波电压)超标监测点
long allNum = list2.stream().filter(o -> o.getAllOvertime() > 0 || o.getFlickerAllTime() > 0).count();
@@ -583,13 +600,12 @@ public class GridServiceImpl implements IGridService {
detail9.setOverNum((int) num9);
detail9.setOverDay(day9);
}
}
}
List<EvaluationLevelVo.TargetDetail> details = Arrays.asList(detail1, detail2, detail3, detail4, detail5, detail6, detail7, detail8, detail9);
detail.setList(details);
}
result.add(detail);
}
});
}
return result;
}
@@ -991,6 +1007,7 @@ public class GridServiceImpl implements IGridService {
/**
* 过滤监测点
*
* @param list
* @param type
* @return