1.河北两级贯通接口新增台账运行详情统计
This commit is contained in:
@@ -9,9 +9,7 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
|
||||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
|
||||
import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
|
||||
import com.njcn.db.bo.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
@@ -24,7 +22,7 @@ import java.time.LocalDateTime;
|
||||
*/
|
||||
@TableName(value = "pms_run_statistic_d")
|
||||
@Data
|
||||
public class PmsRunStatistic{
|
||||
public class PmsRunStatisticD {
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.njcn.device.pms.pojo.po;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
|
||||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
|
||||
import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* pqs
|
||||
*
|
||||
* @author cdf
|
||||
* @date 2024/4/17
|
||||
*/
|
||||
@TableName(value = "pms_run_statistic_d")
|
||||
@Data
|
||||
public class PmsRunStatisticM {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@MppMultiId
|
||||
private LocalDate statisticDate;
|
||||
|
||||
@MppMultiId
|
||||
private String deptId;
|
||||
|
||||
private String runMonitorIds;
|
||||
|
||||
private String onlineMonitorIds;
|
||||
|
||||
private String runBusIds;
|
||||
|
||||
private Integer runBusNum;
|
||||
|
||||
private String onlineBusIds;
|
||||
|
||||
private String runDevIds;
|
||||
|
||||
private String runStationIds;
|
||||
|
||||
private Integer runStationNum;
|
||||
|
||||
private String onlineStationIds;
|
||||
|
||||
private String typicalTractionIds;
|
||||
|
||||
private String typicalWindIds;
|
||||
|
||||
private String typicalSunIds;
|
||||
|
||||
private String typicalOtherIds;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField(fill = FieldFill.INSERT)
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
|
||||
@JsonSerialize(using = LocalDateTimeSerializer.class)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.njcn.device.pms.pojo.po;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
|
||||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
|
||||
import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* pqs
|
||||
*
|
||||
* @author cdf
|
||||
* @date 2024/4/17
|
||||
*/
|
||||
@TableName(value = "pms_run_statistic_d")
|
||||
@Data
|
||||
public class PmsRunStatisticY {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@MppMultiId
|
||||
private LocalDate statisticDate;
|
||||
|
||||
@MppMultiId
|
||||
private String deptId;
|
||||
|
||||
private String runMonitorIds;
|
||||
|
||||
private String onlineMonitorIds;
|
||||
|
||||
private String runBusIds;
|
||||
|
||||
private Integer runBusNum;
|
||||
|
||||
private String onlineBusIds;
|
||||
|
||||
private String runDevIds;
|
||||
|
||||
private String runStationIds;
|
||||
|
||||
private Integer runStationNum;
|
||||
|
||||
private String onlineStationIds;
|
||||
|
||||
private String typicalTractionIds;
|
||||
|
||||
private String typicalWindIds;
|
||||
|
||||
private String typicalSunIds;
|
||||
|
||||
private String typicalOtherIds;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField(fill = FieldFill.INSERT)
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
|
||||
@JsonSerialize(using = LocalDateTimeSerializer.class)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -3,7 +3,7 @@ package com.njcn.device.pms.mapper.majornetwork;
|
||||
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatistic;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatisticD;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -13,6 +13,6 @@ import com.njcn.device.pms.pojo.po.PmsRunStatistic;
|
||||
* @author cdf
|
||||
* @since 2024-04-17
|
||||
*/
|
||||
public interface PmsRunStatisticMapper extends MppBaseMapper<PmsRunStatistic> {
|
||||
public interface PmsRunStatisticDMapper extends MppBaseMapper<PmsRunStatisticD> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.njcn.device.pms.mapper.majornetwork;
|
||||
|
||||
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatisticD;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatisticM;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author cdf
|
||||
* @since 2024-04-17
|
||||
*/
|
||||
public interface PmsRunStatisticMMapper extends MppBaseMapper<PmsRunStatisticM> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.njcn.device.pms.mapper.majornetwork;
|
||||
|
||||
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatisticD;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatisticY;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author cdf
|
||||
* @since 2024-04-17
|
||||
*/
|
||||
public interface PmsRunStatisticYMapper extends MppBaseMapper<PmsRunStatisticY> {
|
||||
|
||||
}
|
||||
@@ -1,11 +1,8 @@
|
||||
package com.njcn.device.pms.service.ledgerManger;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.github.jeffreyning.mybatisplus.service.IMppService;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatistic;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatisticD;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -15,7 +12,7 @@ import java.time.LocalDate;
|
||||
* @author cdf
|
||||
* @since 2024-04-17
|
||||
*/
|
||||
public interface IPmsRunStatisticService extends IMppService<PmsRunStatistic> {
|
||||
public interface IPmsRunStatisticService extends IMppService<PmsRunStatisticD> {
|
||||
|
||||
/**
|
||||
* 对外接口,统计每日在运测点,在线装置详细信息
|
||||
|
||||
@@ -2,7 +2,6 @@ package com.njcn.device.pms.service.ledgerManger.impl;
|
||||
|
||||
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
@@ -16,14 +15,12 @@ import com.njcn.device.pms.mapper.majornetwork.*;
|
||||
import com.njcn.device.pms.pojo.po.*;
|
||||
import com.njcn.device.pms.service.ledgerManger.CommTerminalService;
|
||||
import com.njcn.device.pms.service.ledgerManger.IPmsRunStatisticService;
|
||||
import com.njcn.device.pms.service.majornetwork.IMonitorService;
|
||||
import com.njcn.device.pq.pojo.po.RStatIntegrityD;
|
||||
import com.njcn.system.api.DicDataFeignClient;
|
||||
import com.njcn.system.api.DictTreeFeignClient;
|
||||
import com.njcn.system.enums.DicDataEnum;
|
||||
import com.njcn.system.enums.DicDataTypeEnum;
|
||||
import com.njcn.system.enums.DicTreeEnum;
|
||||
import com.njcn.system.pojo.po.Dic;
|
||||
import com.njcn.system.pojo.po.DictData;
|
||||
import com.njcn.system.pojo.po.SysDicTreePO;
|
||||
import com.njcn.system.pojo.vo.DictTreeVO;
|
||||
@@ -48,7 +45,7 @@ import java.util.stream.Stream;
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class PmsRunStatisticServiceImpl extends MppServiceImpl<PmsRunStatisticMapper, PmsRunStatistic> implements IPmsRunStatisticService {
|
||||
public class PmsRunStatisticServiceImpl extends MppServiceImpl<PmsRunStatisticDMapper, PmsRunStatisticD> implements IPmsRunStatisticService {
|
||||
|
||||
private final CommTerminalService commTerminalService;
|
||||
|
||||
@@ -76,7 +73,7 @@ public class PmsRunStatisticServiceImpl extends MppServiceImpl<PmsRunStatisticMa
|
||||
deptGetLineParam.setIsUpToGrid(1);
|
||||
|
||||
List<DeptGetChildrenMoreDTO> deptGetChildrenMoreDTOList = commTerminalService.deptGetLine(deptGetLineParam);
|
||||
List<PmsRunStatistic> poList = new ArrayList<>();
|
||||
List<PmsRunStatisticD> poList = new ArrayList<>();
|
||||
|
||||
//获取在运母线,在运电站数量
|
||||
List<PmsMidLedger> midLedgerStationList = this.getBusBarAndStationInfo(0);
|
||||
@@ -124,36 +121,36 @@ public class PmsRunStatisticServiceImpl extends MppServiceImpl<PmsRunStatisticMa
|
||||
|
||||
List<String> onlinePointIds = temPointIds.stream().filter(rStatIntegrityIds::contains).collect(Collectors.toList());
|
||||
|
||||
PmsRunStatistic pmsRunStatistic = new PmsRunStatistic();
|
||||
pmsRunStatistic.setStatisticDate(localDate);
|
||||
pmsRunStatistic.setDeptId(dto.getUnitId());
|
||||
pmsRunStatistic.setRunMonitorIds(String.join(StrUtil.COMMA, temPointIds));
|
||||
pmsRunStatistic.setOnlineMonitorIds(String.join(StrUtil.COMMA, onlinePointIds));
|
||||
PmsRunStatisticD pmsRunStatisticD = new PmsRunStatisticD();
|
||||
pmsRunStatisticD.setStatisticDate(localDate);
|
||||
pmsRunStatisticD.setDeptId(dto.getUnitId());
|
||||
pmsRunStatisticD.setRunMonitorIds(String.join(StrUtil.COMMA, temPointIds));
|
||||
pmsRunStatisticD.setOnlineMonitorIds(String.join(StrUtil.COMMA, onlinePointIds));
|
||||
|
||||
pmsRunStatistic.setRunDevIds(dto.getLineBaseList().stream().map(LineDevGetDTO::getDevId).distinct().collect(Collectors.joining(StrUtil.COMMA)));
|
||||
pmsRunStatisticD.setRunDevIds(dto.getLineBaseList().stream().map(LineDevGetDTO::getDevId).distinct().collect(Collectors.joining(StrUtil.COMMA)));
|
||||
|
||||
|
||||
long stationCount = midLedgerStationList.stream().filter(it->childrenDept.contains(it.getSectionId())).map(PmsMidLedger::getId).distinct().count();
|
||||
pmsRunStatistic.setRunStationNum((int) stationCount);
|
||||
pmsRunStatisticD.setRunStationNum((int) stationCount);
|
||||
long busBarCount = midLedgerBusBarList.stream().filter(it->childrenDept.contains(it.getSectionId())).map(PmsMidLedger::getId).distinct().count();
|
||||
pmsRunStatistic.setRunBusNum((int) busBarCount);
|
||||
pmsRunStatisticD.setRunBusNum((int) busBarCount);
|
||||
|
||||
List<String> runBusIds = monitorList.stream().filter(it->childrenDept.contains(it.getOrgId())).map(Monitor::getLineId).distinct().collect(Collectors.toList());
|
||||
pmsRunStatistic.setOnlineBusIds(String.join(StrUtil.COMMA, runBusIds));
|
||||
pmsRunStatisticD.setOnlineBusIds(String.join(StrUtil.COMMA, runBusIds));
|
||||
|
||||
List<String> runStationIds = statationStatList.stream().filter(it->childrenDept.contains(it.getOrgId())).map(StatationStat::getPowerId).distinct().collect(Collectors.toList());
|
||||
pmsRunStatistic.setOnlineStationIds(String.join(StrUtil.COMMA, runStationIds));
|
||||
pmsRunStatisticD.setOnlineStationIds(String.join(StrUtil.COMMA, runStationIds));
|
||||
|
||||
//典型统计
|
||||
List<String> windPointIds = dto.getLineBaseList().stream().filter(it->windfarm_user_dict.contains(it.getObjType())).map(LineDevGetDTO::getPointId).collect(Collectors.toList());
|
||||
List<String> sunPointIds = dto.getLineBaseList().stream().filter(it->photovoltaicsit_eusers_dict.contains(it.getObjType())).map(LineDevGetDTO::getPointId).collect(Collectors.toList());
|
||||
List<String> tractionPointIds = dto.getLineBaseList().stream().filter(it->tractionstation_dict.contains(it.getObjType())).map(LineDevGetDTO::getPointId).collect(Collectors.toList());
|
||||
List<String> otherPointIds = dto.getLineBaseList().stream().filter(it->!un_other_interferencesource_users_dict.contains(it.getObjType())).map(LineDevGetDTO::getPointId).collect(Collectors.toList());
|
||||
pmsRunStatistic.setTypicalWindIds(String.join(StrUtil.COMMA, windPointIds));
|
||||
pmsRunStatistic.setTypicalSunIds(String.join(StrUtil.COMMA, sunPointIds));
|
||||
pmsRunStatistic.setTypicalTractionIds(String.join(StrUtil.COMMA, tractionPointIds));
|
||||
pmsRunStatistic.setTypicalOtherIds(String.join(StrUtil.COMMA, otherPointIds));
|
||||
poList.add(pmsRunStatistic);
|
||||
pmsRunStatisticD.setTypicalWindIds(String.join(StrUtil.COMMA, windPointIds));
|
||||
pmsRunStatisticD.setTypicalSunIds(String.join(StrUtil.COMMA, sunPointIds));
|
||||
pmsRunStatisticD.setTypicalTractionIds(String.join(StrUtil.COMMA, tractionPointIds));
|
||||
pmsRunStatisticD.setTypicalOtherIds(String.join(StrUtil.COMMA, otherPointIds));
|
||||
poList.add(pmsRunStatisticD);
|
||||
}
|
||||
this.saveBatch(poList);
|
||||
}
|
||||
@@ -163,6 +160,8 @@ public class PmsRunStatisticServiceImpl extends MppServiceImpl<PmsRunStatisticMa
|
||||
DateTime begin = DateUtil.beginOfMonth(DateUtil.parse(date));
|
||||
DateTime end = DateUtil.endOfMonth(DateUtil.parse(date));
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.njcn.prepare.harmonic.mapper.mysql.line;
|
||||
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatistic;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatisticD;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
@@ -13,6 +13,6 @@ import com.njcn.device.pms.pojo.po.PmsRunStatistic;
|
||||
* @author cdf
|
||||
* @since 2024-04-17
|
||||
*/
|
||||
public interface PmsRunStatisticMapper extends MppBaseMapper<PmsRunStatistic> {
|
||||
public interface PmsRunStatisticMapper extends MppBaseMapper<PmsRunStatisticD> {
|
||||
|
||||
}
|
||||
|
||||
@@ -5,25 +5,21 @@ import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.IdUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.device.biz.commApi.CommLineClient;
|
||||
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
||||
import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO;
|
||||
import com.njcn.device.biz.pojo.dto.LineDTO;
|
||||
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatistic;
|
||||
import com.njcn.device.pms.pojo.po.PmsRunStatisticD;
|
||||
import com.njcn.device.pq.pojo.po.RStatIntegrityD;
|
||||
import com.njcn.harmonic.pojo.po.upload.RUploadPointStatisticalDataD;
|
||||
import com.njcn.prepare.harmonic.enums.UploadEnum;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.area.ROperatingIndexDPOMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.day.RStatIntegrityDMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.line.PmsRunStatisticMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.upload.RUploadPointStatisticalDataDMapper;
|
||||
import com.njcn.prepare.harmonic.pojo.bo.CalculatedParam;
|
||||
import com.njcn.prepare.harmonic.pojo.dto.UploadPointStatisticalParam;
|
||||
import com.njcn.prepare.harmonic.service.mysql.upload.IRUploadPointStatisticalDataDService;
|
||||
import com.njcn.system.api.DicDataFeignClient;
|
||||
import com.njcn.system.api.DictTreeFeignClient;
|
||||
@@ -136,12 +132,12 @@ public class RUploadPointStatisticalDataDServiceImpl extends MppServiceImpl<RUpl
|
||||
|
||||
//下面先从表里获取在运测点相关数据,当表里没数据时候再从接口获取
|
||||
//首先获取pms_run_statistic表是否存在执行日期的数据
|
||||
List<PmsRunStatistic> pmsRunStatisticsList = pmsRunStatisticMapper.selectList(new LambdaQueryWrapper<PmsRunStatistic>().eq(PmsRunStatistic::getStatisticDate,calculatedParam.getDataDate()));
|
||||
List<PmsRunStatisticD> pmsRunStatisticsListD = pmsRunStatisticMapper.selectList(new LambdaQueryWrapper<PmsRunStatisticD>().eq(PmsRunStatisticD::getStatisticDate,calculatedParam.getDataDate()));
|
||||
|
||||
//筛选国网上送监测点
|
||||
List<DeptGetChildrenMoreDTO> deptAll = calculatedParam.getIdList();
|
||||
|
||||
Map<String,PmsRunStatistic> pmsRunStatisticMap = pmsRunStatisticsList.stream().collect(Collectors.toMap(PmsRunStatistic::getDeptId,Function.identity()));
|
||||
Map<String, PmsRunStatisticD> pmsRunStatisticMap = pmsRunStatisticsListD.stream().collect(Collectors.toMap(PmsRunStatisticD::getDeptId,Function.identity()));
|
||||
List<LineDTO> lineDTOList;
|
||||
if(pmsRunStatisticMap.containsKey(dept.getCode())){
|
||||
List<String> monitorIds = CollectionUtil.toList(pmsRunStatisticMap.get(dept.getCode()).getRunMonitorIds().split(StrUtil.COMMA));
|
||||
@@ -160,7 +156,7 @@ public class RUploadPointStatisticalDataDServiceImpl extends MppServiceImpl<RUpl
|
||||
return;
|
||||
}
|
||||
|
||||
if(CollectionUtil.isEmpty(pmsRunStatisticsList)){
|
||||
if(CollectionUtil.isEmpty(pmsRunStatisticsListD)){
|
||||
//正常流程
|
||||
newBaseList = item.getLineBaseList().stream().filter(o -> Objects.equals(o.getIsUpToGrid(), 1)).collect(toList());
|
||||
}else {
|
||||
|
||||
Reference in New Issue
Block a user