1.谐波溯源算法
2.北京暂降平台
This commit is contained in:
@@ -34,7 +34,7 @@ public class UpHarmonicDetail implements Serializable {
|
|||||||
/**
|
/**
|
||||||
* 事件id
|
* 事件id
|
||||||
*/
|
*/
|
||||||
@TableField(value = "id")
|
@TableId(value = "id")
|
||||||
private String id;
|
private String id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -80,8 +80,14 @@ public class RespDataResultServiceImpl extends ServiceImpl<RespDataResultMapper,
|
|||||||
String respStr = IoUtil.readUtf8(respStream);
|
String respStr = IoUtil.readUtf8(respStream);
|
||||||
List<CustomerResponsibility> respData = JSONArray.parseArray(respStr, CustomerResponsibility.class);
|
List<CustomerResponsibility> respData = JSONArray.parseArray(respStr, CustomerResponsibility.class);
|
||||||
if(Objects.nonNull(respDataQuery.getType()) && respDataQuery.getType().equals(CalculationType.SYSTEM_TYPE.getCode())){
|
if(Objects.nonNull(respDataQuery.getType()) && respDataQuery.getType().equals(CalculationType.SYSTEM_TYPE.getCode())){
|
||||||
customerData.forEach(item->item.setCustomerName(item.getCustomerName().substring(0,item.getCustomerName().indexOf("("))));
|
customerData.forEach(item->{if(item.getCustomerName().contains("(")) {
|
||||||
respData.forEach(item->item.setCustomerName(item.getCustomerName().substring(0,item.getCustomerName().indexOf("("))));
|
item.setCustomerName(item.getCustomerName().substring(0,item.getCustomerName().indexOf("(")));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
respData.forEach(item->{if(item.getCustomerName().contains("(")) {
|
||||||
|
item.setCustomerName(item.getCustomerName().substring(0,item.getCustomerName().indexOf("(")));
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
responsibilityResult.setResponsibilities(respData);
|
responsibilityResult.setResponsibilities(respData);
|
||||||
responsibilityResult.setDatas(customerData);
|
responsibilityResult.setDatas(customerData);
|
||||||
|
|||||||
@@ -622,10 +622,6 @@ public class RespDataServiceImpl extends ServiceImpl<RespDataMapper, RespData> i
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(Objects.nonNull(responsibilityCalculateParam.getSystemType()) && responsibilityCalculateParam.getSystemType()==CalculationType.SYSTEM_TYPE.getCode()){
|
|
||||||
customerData.forEach(item->item.setCustomerName(item.getCustomerName().substring(0,item.getCustomerName().indexOf("("))));
|
|
||||||
customerResponsibilities.forEach(item->item.setCustomerName(item.getCustomerName().substring(0,item.getCustomerName().indexOf("("))));
|
|
||||||
}
|
|
||||||
|
|
||||||
result.setDatas(customerData);
|
result.setDatas(customerData);
|
||||||
result.setTimeDatas(timeDatas);
|
result.setTimeDatas(timeDatas);
|
||||||
@@ -719,6 +715,12 @@ public class RespDataServiceImpl extends ServiceImpl<RespDataMapper, RespData> i
|
|||||||
String customerResPath = fileStorageUtil.uploadStream(customerResStream, OssPath.RESPONSIBILITY_USER_RESULT_DATA, FileUtil.generateFileName("json"));
|
String customerResPath = fileStorageUtil.uploadStream(customerResStream, OssPath.RESPONSIBILITY_USER_RESULT_DATA, FileUtil.generateFileName("json"));
|
||||||
respDataResult.setUserResponsibility(customerResPath);
|
respDataResult.setUserResponsibility(customerResPath);
|
||||||
respDataResultService.save(respDataResult);
|
respDataResultService.save(respDataResult);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
if (Objects.nonNull(responsibilityCalculateParam.getSystemType()) && responsibilityCalculateParam.getSystemType() == CalculationType.SYSTEM_TYPE.getCode()) {
|
||||||
|
customerData.forEach(item -> item.setCustomerName(item.getCustomerName().substring(0, item.getCustomerName().indexOf("("))));
|
||||||
|
customerResponsibilities.forEach(item -> item.setCustomerName(item.getCustomerName().substring(0, item.getCustomerName().indexOf("("))));
|
||||||
}
|
}
|
||||||
//防止过程中创建了大量的对象,主动调用下GC处理
|
//防止过程中创建了大量的对象,主动调用下GC处理
|
||||||
System.gc();
|
System.gc();
|
||||||
|
|||||||
@@ -42,10 +42,10 @@ public class EasyPoiWordExportController extends BaseController {
|
|||||||
@OperateInfo
|
@OperateInfo
|
||||||
@PostMapping("/get")
|
@PostMapping("/get")
|
||||||
@ApiOperation("")
|
@ApiOperation("")
|
||||||
public void test(HttpServletResponse response, @RequestBody ReportExportParam param) {
|
public void exportWordReport(HttpServletResponse response, @RequestBody ReportExportParam param) {
|
||||||
String methodDescribe = getMethodDescribe("test");
|
String methodDescribe = getMethodDescribe("exportWordReport");
|
||||||
try {
|
try {
|
||||||
easyPoiWordExportService.test(response,param);
|
easyPoiWordExportService.exportWordReport(response,param);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
@@ -56,9 +56,7 @@ public class EasyPoiWordExportController extends BaseController {
|
|||||||
@PostMapping("/getDept")
|
@PostMapping("/getDept")
|
||||||
public HttpResult<List<PqsDepts>> getDept() {
|
public HttpResult<List<PqsDepts>> getDept() {
|
||||||
String methodDescribe = getMethodDescribe("getDept");
|
String methodDescribe = getMethodDescribe("getDept");
|
||||||
|
|
||||||
List<PqsDepts> list = pqsDeptsService.lambdaQuery().eq(PqsDepts::getState, 1).list();
|
List<PqsDepts> list = pqsDeptsService.lambdaQuery().eq(PqsDepts::getState, 1).list();
|
||||||
|
|
||||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
|
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -27,19 +27,19 @@ public class BjCustomReportDTO {
|
|||||||
// 统计日期范围(如“2025年09月17日16:46-16:53”)
|
// 统计日期范围(如“2025年09月17日16:46-16:53”)
|
||||||
private String dateRange;
|
private String dateRange;
|
||||||
// 北京地区总事件数
|
// 北京地区总事件数
|
||||||
private Integer bjTotalEvent;
|
private Integer bjTotalEvent = 0;
|
||||||
// 北京地区涉及变电站数
|
// 北京地区涉及变电站数
|
||||||
private Integer totalEventSubstation;
|
private Integer totalEventSubstation = 0;
|
||||||
// 北京地区涉及母线数
|
// 北京地区涉及母线数
|
||||||
private Integer bjTotalBus;
|
private Integer bjTotalBus = 0;
|
||||||
// 变电站电压等级说明(如“220kV变电站X座、110kV变电站X座、10kV变电站X座”)
|
// 变电站电压等级说明(如“220kV变电站X座、110kV变电站X座、10kV变电站X座”)
|
||||||
private String stationVoltage;
|
private String stationVoltage;
|
||||||
// 发生暂降的母线数
|
// 发生暂降的母线数
|
||||||
private Integer busEventNum;
|
private Integer busEventNum = 0;
|
||||||
// 残余电压范围(如“16.48%-86.99%”)
|
// 残余电压范围(如“16.48%-86.99%”)
|
||||||
private String residualVoltageRange;
|
private String residualVoltageRange = "-% - -%";
|
||||||
// 持续时间范围(如“0.05s-0.086s”)
|
// 持续时间范围(如“0.05s-0.086s”)
|
||||||
private String durationRange;
|
private String durationRange = "-s - -s";
|
||||||
// 受影响用户类型(如“半导体企业、地铁、医院、政府机关”)
|
// 受影响用户类型(如“半导体企业、地铁、医院、政府机关”)
|
||||||
private String objTypeList;
|
private String objTypeList;
|
||||||
// 受影响用户总数
|
// 受影响用户总数
|
||||||
|
|||||||
@@ -12,5 +12,5 @@ import javax.servlet.http.HttpServletResponse;
|
|||||||
*/
|
*/
|
||||||
public interface EasyPoiWordExportService {
|
public interface EasyPoiWordExportService {
|
||||||
|
|
||||||
void test(HttpServletResponse response, ReportExportParam param);
|
void exportWordReport(HttpServletResponse response, ReportExportParam param);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ public class EasyPoiWordExportServiceImpl implements EasyPoiWordExportService {
|
|||||||
// private String wordTemplatePath;
|
// private String wordTemplatePath;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void test(HttpServletResponse response, ReportExportParam param) {
|
public void exportWordReport(HttpServletResponse response, ReportExportParam param) {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
List<Integer> deptIds = commGeneralService.getLineIdsByRedis(param.getDeptId());
|
List<Integer> deptIds = commGeneralService.getLineIdsByRedis(param.getDeptId());
|
||||||
@@ -109,6 +109,7 @@ public class EasyPoiWordExportServiceImpl implements EasyPoiWordExportService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
List<PqsEventdetail> pqsEventdetailList = pqsEventdetailMapper.selectList(lambdaQueryWrapper);
|
List<PqsEventdetail> pqsEventdetailList = pqsEventdetailMapper.selectList(lambdaQueryWrapper);
|
||||||
|
if(CollUtil.isNotEmpty(pqsEventdetailList)) {
|
||||||
List<Map<String, Object>> eventTemplateList = new ArrayList<>();
|
List<Map<String, Object>> eventTemplateList = new ArrayList<>();
|
||||||
for (int i = 0; i < pqsEventdetailList.size(); i++) {
|
for (int i = 0; i < pqsEventdetailList.size(); i++) {
|
||||||
PqsEventdetail pqsEventdetail = pqsEventdetailList.get(i);
|
PqsEventdetail pqsEventdetail = pqsEventdetailList.get(i);
|
||||||
@@ -161,6 +162,7 @@ public class EasyPoiWordExportServiceImpl implements EasyPoiWordExportService {
|
|||||||
bjReportDTO.setObjTypeList(treeStr);
|
bjReportDTO.setObjTypeList(treeStr);
|
||||||
bjReportDTO.setAffectedUserCount(pqUserLedgerPOList.size());
|
bjReportDTO.setAffectedUserCount(pqUserLedgerPOList.size());
|
||||||
areaAssemble(bjReportDTO, param, pqsDicDataMap);
|
areaAssemble(bjReportDTO, param, pqsDicDataMap);
|
||||||
|
}
|
||||||
|
|
||||||
Map<String,Object> map = mapper.convertValue(bjReportDTO,Map.class);
|
Map<String,Object> map = mapper.convertValue(bjReportDTO,Map.class);
|
||||||
|
|
||||||
|
|||||||
@@ -15,8 +15,7 @@ import java.util.Date;
|
|||||||
@Data
|
@Data
|
||||||
@TableName(value = "PQS_DICTREE")
|
@TableName(value = "PQS_DICTREE")
|
||||||
public class PqsDicTreePO {
|
public class PqsDicTreePO {
|
||||||
@TableId // 标记主键字段
|
@TableId(value ="ID") // 显式指定列名(默认按字段名映射,可省略)
|
||||||
@TableField(value ="ID") // 显式指定列名(默认按字段名映射,可省略)
|
|
||||||
private String id;
|
private String id;
|
||||||
|
|
||||||
@TableField(value ="NAME")
|
@TableField(value ="NAME")
|
||||||
|
|||||||
@@ -1312,6 +1312,12 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService {
|
|||||||
List<PqUserLineAssPO> assLastList = pqUserLedgerMapper.getUserByParam(pageLineIds, null);
|
List<PqUserLineAssPO> assLastList = pqUserLedgerMapper.getUserByParam(pageLineIds, null);
|
||||||
Map<Integer, List<String>> mapObj = assLastList.stream().collect(Collectors.groupingBy(PqUserLineAssPO::getLineIndex, Collectors.mapping(PqUserLineAssPO::getUserName, Collectors.toList())));
|
Map<Integer, List<String>> mapObj = assLastList.stream().collect(Collectors.groupingBy(PqUserLineAssPO::getLineIndex, Collectors.mapping(PqUserLineAssPO::getUserName, Collectors.toList())));
|
||||||
|
|
||||||
|
//字典信息
|
||||||
|
PqsDicType pqsDicType = pqsDicTypeMapper.selectOne(new LambdaQueryWrapper<PqsDicType>().eq(PqsDicType::getDicTypeName, DicTypeEnum.VOLTAGE.getDicName()));
|
||||||
|
List<PqsDicData> pqsDicDataList = pqsDicDataMapper.selectList(new LambdaQueryWrapper<PqsDicData>().eq(PqsDicData::getDicType, pqsDicType.getDicTypeIndex()));
|
||||||
|
Map<String, PqsDicData> pqsDicDataMap = pqsDicDataList.stream().collect(Collectors.toMap(PqsDicData::getDicIndex, dic -> dic));
|
||||||
|
|
||||||
|
|
||||||
pqsEventdetailPage = list.stream().map(temp -> {
|
pqsEventdetailPage = list.stream().map(temp -> {
|
||||||
EventDetailVO eventDetailVO = new EventDetailVO();
|
EventDetailVO eventDetailVO = new EventDetailVO();
|
||||||
eventDetailVO.setEventdetail_index(temp.getEventdetailIndex());
|
eventDetailVO.setEventdetail_index(temp.getEventdetailIndex());
|
||||||
@@ -1330,6 +1336,8 @@ public class LargeScreenCountServiceImpl implements LargeScreenCountService {
|
|||||||
eventDetailVO.setGdName(ledgerBaseInfoDTO.getGdName());
|
eventDetailVO.setGdName(ledgerBaseInfoDTO.getGdName());
|
||||||
eventDetailVO.setBusName(ledgerBaseInfoDTO.getBusBarName());
|
eventDetailVO.setBusName(ledgerBaseInfoDTO.getBusBarName());
|
||||||
eventDetailVO.setObjName(ledgerBaseInfoDTO.getObjName());
|
eventDetailVO.setObjName(ledgerBaseInfoDTO.getObjName());
|
||||||
|
eventDetailVO.setBusVoltageLevel(pqsDicDataMap.get(ledgerBaseInfoDTO.getScale()).getDicName());
|
||||||
|
|
||||||
}
|
}
|
||||||
String objName = "/";
|
String objName = "/";
|
||||||
if (mapObj.containsKey(eventDetailVO.getLineid())) {
|
if (mapObj.containsKey(eventDetailVO.getLineid())) {
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user