|
@@ -133,13 +133,29 @@ public class FhzgVoltageLimitViolationPowerCutServiceImpl extends ServiceImpl<Fh
|
|
|
// .collect(Collectors.toMap(FeederCheckRuleDTO::getFeederId, a -> a,
|
|
// .collect(Collectors.toMap(FeederCheckRuleDTO::getFeederId, a -> a,
|
|
|
// (existing, replacement) -> existing));
|
|
// (existing, replacement) -> existing));
|
|
|
//转供前线路电压越限对比情况保存
|
|
//转供前线路电压越限对比情况保存
|
|
|
- dealWithAreaVoltViolationList(data.getAreaVoltViolationList(), 0, data.getFeederId(), null, limitId, data.getFeederInfo());
|
|
|
|
|
Map<Long, XferPlanDTO> planMap = new HashMap<>();
|
|
Map<Long, XferPlanDTO> planMap = new HashMap<>();
|
|
|
Map<Long, LoopCheckRuleDTO> checkRuleDTOMap = new HashMap<>();
|
|
Map<Long, LoopCheckRuleDTO> checkRuleDTOMap = new HashMap<>();
|
|
|
//处理方案中数据
|
|
//处理方案中数据
|
|
|
if (data.getXferPlanList() != null && !data.getXferPlanList().isEmpty()) {
|
|
if (data.getXferPlanList() != null && !data.getXferPlanList().isEmpty()) {
|
|
|
data.getXferPlanList().forEach(p -> {
|
|
data.getXferPlanList().forEach(p -> {
|
|
|
|
|
+ //确定本侧对侧线路
|
|
|
|
|
+ String feederId = data.getFeederId();
|
|
|
|
|
+ String oppFeederId = null;
|
|
|
|
|
+ for (AreaVoltViolationDTO areaVoltViolationDTO : p.getAreaVoltViolationList()) {
|
|
|
|
|
+ if (!areaVoltViolationDTO.getFeederId().equals(feederId)) {
|
|
|
|
|
+ oppFeederId = areaVoltViolationDTO.getFeederId();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ //转供前数据仅保存本侧与对侧
|
|
|
|
|
+ List<AreaVoltViolationDTO> list = new ArrayList<>();
|
|
|
|
|
+ for (AreaVoltViolationDTO areaVoltViolationDTO : data.getAreaVoltViolationList()) {
|
|
|
|
|
+ if (areaVoltViolationDTO.getFeederId().equals(feederId) || areaVoltViolationDTO.getFeederId().equals(oppFeederId)) {
|
|
|
|
|
+ list.add(areaVoltViolationDTO);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
Long schemeId = IdUtil.getSnowflakeNextId();
|
|
Long schemeId = IdUtil.getSnowflakeNextId();
|
|
|
|
|
+ //保存转供前数据
|
|
|
|
|
+ dealWithAreaVoltViolationList(list, 0, data.getFeederId(), schemeId, limitId, data.getFeederInfo());
|
|
|
FhzgInfoLimitTransferScheme transferScheme = new FhzgInfoLimitTransferScheme();
|
|
FhzgInfoLimitTransferScheme transferScheme = new FhzgInfoLimitTransferScheme();
|
|
|
transferScheme.setId(schemeId).setLimitId(limitId).setSchemeNo(p.getId())
|
|
transferScheme.setId(schemeId).setLimitId(limitId).setSchemeNo(p.getId())
|
|
|
.setSchemeState("0").setCheckState(1).setSchemeJson(JSON.toJSONString(p));
|
|
.setSchemeState("0").setCheckState(1).setSchemeJson(JSON.toJSONString(p));
|
|
@@ -147,7 +163,16 @@ public class FhzgVoltageLimitViolationPowerCutServiceImpl extends ServiceImpl<Fh
|
|
|
schemeMapper.insert(transferScheme);
|
|
schemeMapper.insert(transferScheme);
|
|
|
planMap.put(schemeId, p);
|
|
planMap.put(schemeId, p);
|
|
|
//处理转供后对比数据
|
|
//处理转供后对比数据
|
|
|
- dealWithAreaVoltViolationList(p.getAreaVoltViolationList(), 2, data.getFeederId(), schemeId, limitId, data.getFeederInfo());
|
|
|
|
|
|
|
+ List<FeederInfoDTO> infoDTOS = new ArrayList<>();
|
|
|
|
|
+ FeederInfoDTO feederInfoDTO = new FeederInfoDTO();
|
|
|
|
|
+ feederInfoDTO.setFeederId(oppFeederId);
|
|
|
|
|
+ p.getXferSupplyAreaList().forEach(s -> {
|
|
|
|
|
+ infoDTOS.add(s.getFeederInfo());
|
|
|
|
|
+ feederInfoDTO.setMaxCurrentLoad(s.getLinkLineInfo().getPlanMaxCurrentLoad());
|
|
|
|
|
+ infoDTOS.add(feederInfoDTO);
|
|
|
|
|
+
|
|
|
|
|
+ });
|
|
|
|
|
+ dealWithAreaVoltViolationList(p.getAreaVoltViolationList(), 2, data.getFeederId(), schemeId, limitId, infoDTOS);
|
|
|
//保存方案中转供路径细明数据
|
|
//保存方案中转供路径细明数据
|
|
|
List<FhzgLimitTransferSchemePathDetail> dataList = new ArrayList<>();
|
|
List<FhzgLimitTransferSchemePathDetail> dataList = new ArrayList<>();
|
|
|
dealPlanTransferSchemePathDetail(dataList, p.getXferSupplyAreaList(), schemeId, data.getFeederId(), null, p.getTransferCapacity());
|
|
dealPlanTransferSchemePathDetail(dataList, p.getXferSupplyAreaList(), schemeId, data.getFeederId(), null, p.getTransferCapacity());
|
|
@@ -260,9 +285,9 @@ public class FhzgVoltageLimitViolationPowerCutServiceImpl extends ServiceImpl<Fh
|
|
|
//本侧对侧
|
|
//本侧对侧
|
|
|
int tag;
|
|
int tag;
|
|
|
if (feederId.equals(e.getFeederId())) {
|
|
if (feederId.equals(e.getFeederId())) {
|
|
|
- tag = 1;
|
|
|
|
|
- } else {
|
|
|
|
|
tag = 0;
|
|
tag = 0;
|
|
|
|
|
+ } else {
|
|
|
|
|
+ tag = 1;
|
|
|
}
|
|
}
|
|
|
FhzgVoltageLimitViolationTransferSchemeDetail schemeDetail = new FhzgVoltageLimitViolationTransferSchemeDetail();
|
|
FhzgVoltageLimitViolationTransferSchemeDetail schemeDetail = new FhzgVoltageLimitViolationTransferSchemeDetail();
|
|
|
schemeDetail.setId(IdUtil.getSnowflakeNextId())
|
|
schemeDetail.setId(IdUtil.getSnowflakeNextId())
|