bug修改

This commit is contained in:
2023-05-18 15:00:49 +08:00
parent 13b6ae6f13
commit 16c933d631
7 changed files with 147 additions and 41 deletions

View File

@@ -6,14 +6,9 @@ import com.njcn.common.pojo.enums.common.DataStateEnum;
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.pms.pojo.po.Monitor;
import com.njcn.device.pms.pojo.po.PowerClient;
import com.njcn.device.pms.pojo.po.PowerDistributionarea;
import com.njcn.device.pms.pojo.po.PowerGenerationUser;
import com.njcn.device.pms.service.majornetwork.IMonitorService;
import com.njcn.device.pms.service.majornetwork.IPowerClientService;
import com.njcn.device.pms.service.majornetwork.IPowerDistributionareaService;
import com.njcn.device.pms.service.majornetwork.IPowerGenerationUserService;
import com.njcn.device.pms.mapper.majornetwork.StatationStatMapper;
import com.njcn.device.pms.pojo.po.*;
import com.njcn.device.pms.service.majornetwork.*;
import com.njcn.user.pojo.po.Dept;
import com.njcn.web.controller.BaseController;
import com.njcn.web.utils.RequestUtil;
@@ -23,6 +18,7 @@ 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 springfox.documentation.annotations.ApiIgnore;
import java.util.List;
import java.util.stream.Collectors;
@@ -47,8 +43,13 @@ public class PmsLedgerDeptController extends BaseController {
private final IPowerClientService iPowerClientService;
private final IStatationStatService iStatationStatService;
private final ITerminalService iTerminalService;
@PostMapping("update")
@ApiIgnore
public HttpResult<Object> updateLedger(@RequestBody Dept dept){
String methodDescribe = getMethodDescribe("updateLedger");
@@ -81,7 +82,7 @@ public class PmsLedgerDeptController extends BaseController {
powerDistributionarea.setOperationName(dept.getName());
return powerDistributionarea;
}).collect(Collectors.toList());
iPowerDistributionareaService.saveBatch(powerDistributionareaListP);
iPowerDistributionareaService.updateBatchById(powerDistributionareaListP);
}
//发电用户
@@ -97,7 +98,7 @@ public class PmsLedgerDeptController extends BaseController {
powerClient.setOperationName(dept.getName());
return powerClient;
}).collect(Collectors.toList());
iPowerClientService.saveBatch(powerClientListP);
iPowerClientService.updateBatchById(powerClientListP);
}
//用电用户
@@ -113,10 +114,44 @@ public class PmsLedgerDeptController extends BaseController {
powerGenerationUser.setOperationName(dept.getName());
return powerGenerationUser;
}).collect(Collectors.toList());
iPowerGenerationUserService.saveBatch(powerGenerationUserListP);
iPowerGenerationUserService.updateBatchById(powerGenerationUserListP);
}
//电站
LambdaQueryWrapper<StatationStat> statationStatLambdaQueryWrapper = new LambdaQueryWrapper<>();
statationStatLambdaQueryWrapper.eq(StatationStat::getStatus, DataStateEnum.ENABLE.getCode())
.eq(StatationStat::getOrgId,dept.getCode());
List<StatationStat> statationStatList = iStatationStatService.list(statationStatLambdaQueryWrapper);
if(CollectionUtil.isNotEmpty(statationStatList)){
List<StatationStat> statationStatListP = statationStatList.stream().map(it->{
StatationStat statationStat = new StatationStat();
statationStat.setPowerId(it.getPowerId());
statationStat.setOrgName(dept.getName());
return statationStat;
}).collect(Collectors.toList());
iStatationStatService.updateBatchById(statationStatListP);
}
//装置
LambdaQueryWrapper<PmsTerminal> terminalLambdaQueryWrapper = new LambdaQueryWrapper<>();
terminalLambdaQueryWrapper.eq(PmsTerminal::getStatus, DataStateEnum.ENABLE.getCode())
.and(item->item.eq(PmsTerminal::getOrgId,dept.getCode()).or().eq(PmsTerminal::getOperationId,dept.getCode()));
List<PmsTerminal> pmsTerminalList = iTerminalService.list(terminalLambdaQueryWrapper);
if(CollectionUtil.isNotEmpty(pmsTerminalList)){
List<PmsTerminal> pmsTerminalListP = pmsTerminalList.stream().map(it->{
PmsTerminal pmsTerminal = new PmsTerminal();
pmsTerminal.setId(it.getId());
pmsTerminal.setOrgName(dept.getName());
pmsTerminal.setOperationName(dept.getName());
return pmsTerminal;
}).collect(Collectors.toList());
iTerminalService.updateBatchById(pmsTerminalListP);
}
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
}

View File

@@ -1,5 +1,6 @@
package com.njcn.device.pms.service.majornetwork.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -11,9 +12,7 @@ import com.njcn.device.pms.pojo.dto.PmsStatationStatInfoDTO;
import com.njcn.device.pms.pojo.param.PmsBaseParam;
import com.njcn.device.pms.pojo.param.StatationStatParam;
import com.njcn.device.pms.pojo.param.PmsStatationStatInfoParam;
import com.njcn.device.pms.pojo.po.GeneratrixWire;
import com.njcn.device.pms.pojo.po.PmsTerminal;
import com.njcn.device.pms.pojo.po.StatationStat;
import com.njcn.device.pms.pojo.po.*;
import com.njcn.device.pms.pojo.vo.StatationStatVO;
import com.njcn.device.pms.service.majornetwork.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -22,11 +21,13 @@ import com.njcn.user.pojo.po.Dept;
import com.njcn.web.factory.PageFactory;
import com.njcn.web.pojo.param.BaseParam;
import lombok.RequiredArgsConstructor;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* <p>
@@ -48,11 +49,13 @@ public class StatationStatServiceImpl extends ServiceImpl<StatationStatMapper, S
private final PmsGeneratrixWireMapper pmsGeneratrixWireMapper;
private final MonitorMapper monitorMapper;
private final IMonitorService iMonitorService;
private final PowerDistributionareaMapper powerDistributionareaMapper;
private final DistributionMonitorMapper distributionMonitorMapper;
private final ITerminalLogService iTerminalLogService;
/**
* 获取指定的变电站信息
@@ -102,9 +105,55 @@ public class StatationStatServiceImpl extends ServiceImpl<StatationStatMapper, S
StatationStat statationStat = new StatationStat();
BeanUtils.copyProperties(statationStatParam, statationStat);
return this.updateById(statationStat);
this.updateById(statationStat);
//修改单位名称时候要确保其他台账中的电站名同时修改
LambdaQueryWrapper<Monitor> monitorLambdaQueryWrapper = new LambdaQueryWrapper<>();
monitorLambdaQueryWrapper.eq(Monitor::getStatus,DataStateEnum.ENABLE.getCode()).eq(Monitor::getPowerrId,statationStat.getPowerId());
//主网监测点
List<Monitor> monitorList = iMonitorService.list(monitorLambdaQueryWrapper);
if(CollectionUtil.isNotEmpty(monitorList)){
List<Monitor> monitorListP = monitorList.stream().map(item->{
Monitor monitor = new Monitor();
monitor.setPowerrName(statationStat.getPowerName());
monitor.setId(item.getId());
return monitor;
}).collect(Collectors.toList());
iMonitorService.updateBatchById(monitorListP);
}
//台区
LambdaQueryWrapper<PowerDistributionarea> powerDistributionareaLambdaQueryWrapper = new LambdaQueryWrapper<>();
powerDistributionareaLambdaQueryWrapper.eq(PowerDistributionarea::getStatus,DataStateEnum.ENABLE.getCode()).eq(PowerDistributionarea::getPowerStationId,statationStat.getPowerId());
List<PowerDistributionarea> powerDistributionareaList = powerDistributionareaMapper.selectList(powerDistributionareaLambdaQueryWrapper);
if(CollectionUtil.isNotEmpty(powerDistributionareaList)){
powerDistributionareaList.forEach(item->{
PowerDistributionarea powerDistributionarea = new PowerDistributionarea();
powerDistributionarea.setPowerrName(statationStat.getPowerName());
powerDistributionarea.setId(item.getId());
powerDistributionareaMapper.updateById(powerDistributionarea);
});
}
//装置
//台区
LambdaQueryWrapper<PmsTerminal> pmsTerminalLambdaQueryWrapper = new LambdaQueryWrapper<>();
pmsTerminalLambdaQueryWrapper.eq(PmsTerminal::getStatus,DataStateEnum.ENABLE.getCode()).eq(PmsTerminal::getPowerStationId,statationStat.getPowerId());
List<PmsTerminal> pmsTerminalList = terminalMapper.selectList(pmsTerminalLambdaQueryWrapper);
if(CollectionUtil.isNotEmpty(pmsTerminalList)){
pmsTerminalList.forEach(item->{
PmsTerminal pmsTerminalP = new PmsTerminal();
pmsTerminalP.setPowerrName(statationStat.getPowerName());
pmsTerminalP.setId(item.getId());
terminalMapper.updateById(pmsTerminalP);
});
}
return true;
}
@Override
public boolean delStatationStat(List<String> statationStatIds) {
//删除前需要判断是否存在绑定关系

View File

@@ -12,6 +12,7 @@ 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 springfox.documentation.annotations.ApiIgnore;
/**
@@ -35,6 +36,7 @@ public class PqLedgerDeptController extends BaseController {
* @date 2023/5/17
*/
@PostMapping("update")
@ApiIgnore
public HttpResult<Object> updateLedger(@RequestBody Dept dept){
String methodDescribe = getMethodDescribe("updateLedger");
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);

View File

@@ -395,34 +395,44 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
//删除与当前线路号重复的项
listLineNum.removeIf(lineNo -> lineNo.equals(lineParam.getNum()));
HttpResult<DictData> httpScale = dicDataFeignClient.getDicDataById(subVoltageParam.getScale());
Float jcap = DeviceUtil.getJCAPByScale(httpScale.getData().getName());
Line line = assembleLine(lineParam.getName(), LineBaseEnum.LINE_LEVEL.getCode(), subvIndex, projectIndex + StrUtil.COMMA + provinceIndex + StrUtil.COMMA + gdIndex + StrUtil.COMMA + subIndex + StrUtil.COMMA + devIdIndex + StrUtil.COMMA + subvIndex, lineParam.getSort());
this.baseMapper.insert(line);
LineDetail lineDetail = new LineDetail();
BeanUtils.copyProperties(lineParam, lineDetail);
lineDetail.setId(line.getId());
lineDetail.setStandardCapacity(jcap);
//判断国网监测点id
if (StrUtil.isNotBlank(lineDetail.getMonitorId())) {
lineDetail.setMonitorFlag(1);
} else {
lineDetail.setMonitorFlag(0);
}
lineDetailMapper.insert(lineDetail);
//通过监测点id获取母线电压等级
Voltage voltage = lineMapper.getVoltageByLineId(line.getId());
//监测点限值
HttpResult<DictData> scaleResult = dicDataFeignClient.getDicDataById(voltage.getScale());
String scaTmp = scaleResult.getData().getValue();
Overlimit overlimit = new Overlimit(line.getId(), scaTmp, lineDetail.getShortCapacity(), lineDetail.getStandardCapacity(), lineDetail.getDealCapacity(), lineDetail.getDevCapacity());
DictData scaleResult = dicDataFeignClient.getDicDataById(voltage.getScale()).getData();
float scaTmp = Float.parseFloat(scaleResult.getValue());
Overlimit overlimit = COverlimitUtil.globalAssemble(scaTmp,lineDetail.getDealCapacity(),lineDetail.getDevCapacity(),lineDetail.getShortCapacity(),1,1);
if(Objects.isNull(lineParam.getVoltageDev())){
overlimit.setVoltageDev(overlimit.getVoltageDev());
}else {
overlimit.setVoltageDev(lineParam.getVoltageDev());
}
if(Objects.isNull(lineParam.getUvoltageDev())){
overlimit.setUvoltageDev(overlimit.getUvoltageDev());
}else {
overlimit.setUvoltageDev(lineParam.getUvoltageDev());
}
//Overlimit overlimit = new Overlimit(line.getId(), scaTmp, lineDetail.getShortCapacity(), lineDetail.getStandardCapacity(), lineDetail.getDealCapacity(), lineDetail.getDevCapacity());
overlimitMapper.deleteById(line.getId());
//页面存在自己填写的电压上下偏差
overlimit.setVoltageDev(lineParam.getVoltageDev());
overlimit.setUvoltageDev(lineParam.getUvoltageDev());
overlimit.setId(line.getId());
overlimitMapper.insert(overlimit);
}
}
@@ -706,15 +716,25 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
|| ((!overlimitTem.getUvoltageDev().equals(updateLineBO.getUvoltageDev()))))
) {
overlimitMapper.deleteById(line.getId());
//监测点限值
HttpResult<DictData> scaleResult = dicDataFeignClient.getDicDataById(updateSubVoltageParam.getScale());
if (Objects.isNull(scaleResult.getData())) {
throw new BusinessException(CommonResponseEnum.DIC_DATA);
DictData scaleResult = dicDataFeignClient.getDicDataById(updateSubVoltageParam.getScale()).getData();
float scaTmp = Float.parseFloat(scaleResult.getValue());
//监测点限值
Overlimit overlimit = COverlimitUtil.globalAssemble(scaTmp,lineDetail.getDealCapacity(),lineDetail.getDevCapacity(),lineDetail.getShortCapacity(),1,1);
if(Objects.isNull(updateLineBO.getVoltageDev())){
overlimit.setVoltageDev(overlimit.getVoltageDev());
}else {
overlimit.setVoltageDev(updateLineBO.getVoltageDev());
}
Overlimit overlimit = new Overlimit(line.getId(), scaleResult.getData().getValue(), lineDetail.getShortCapacity(), lineDetail.getStandardCapacity(), lineDetail.getDealCapacity(), lineDetail.getDevCapacity());
overlimit.setVoltageDev(updateLineBO.getVoltageDev());
overlimit.setUvoltageDev(updateLineBO.getUvoltageDev());
if(Objects.isNull(updateLineBO.getUvoltageDev())){
overlimit.setUvoltageDev(overlimit.getUvoltageDev());
}else {
overlimit.setUvoltageDev(updateLineBO.getUvoltageDev());
}
overlimit.setId(line.getId());
overlimitMapper.deleteById(line.getId());
overlimitMapper.insert(overlimit);
}
if (!Objects.equals(lineDetail.getCt1(), lineDetailRes.getCt1()) || !Objects.equals(lineDetail.getCt2(), lineDetailRes.getCt2())
@@ -1604,10 +1624,10 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
List<LineDetail> lineDetailList = lineDetailMapper.selectList(new LambdaQueryWrapper<>());
int count = 0;
for(LineDetail lineDetail:lineDetailList){
for (LineDetail lineDetail : lineDetailList) {
overlimitMapper.deleteById(lineDetail.getId());
Line line = lineMapper.selectById(lineDetail.getId());
if(Objects.nonNull(line)) {
if (Objects.nonNull(line)) {
Voltage voltage = voltageMapper.selectById(line.getPid());
//监测点限值
DictData scaleResult = dicDataFeignClient.getDicDataById(voltage.getScale()).getData();
@@ -1617,7 +1637,7 @@ public class TerminalBaseServiceImpl extends ServiceImpl<LineMapper, Line> imple
float voltageLevel = Float.parseFloat(scaleResult.getValue());
Overlimit overlimit = COverlimitUtil.globalAssemble(voltageLevel, lineDetail.getDealCapacity(), lineDetail.getDevCapacity(), lineDetail.getShortCapacity(), 1,1);
Overlimit overlimit = COverlimitUtil.globalAssemble(voltageLevel, lineDetail.getDealCapacity(), lineDetail.getDevCapacity(), lineDetail.getShortCapacity(), 1, 1);
overlimit.setId(lineDetail.getId());
overlimitMapper.insert(overlimit);
count++;