Merge remote-tracking branch 'origin/master'

This commit is contained in:
wurui
2023-02-23 11:32:15 +08:00
5 changed files with 61 additions and 11 deletions

View File

@@ -24,7 +24,7 @@ public enum PmsDeviceResponseEnum {
NO_LINE_SORT("A00366","未查询到字典监测点类别"), NO_LINE_SORT("A00366","未查询到字典监测点类别"),
GENERATRIXWIRE_NAME_REPEAT("A00368","同一母线下存在相同名称线路"), GENERATRIXWIRE_NAME_REPEAT("A00368","同一电站下存在相同名称线路"),
GENERATRIX_NAME_REPEAT("A00369","同一电站下存在相同名称母线"), GENERATRIX_NAME_REPEAT("A00369","同一电站下存在相同名称母线"),
POWERGENERATIONUSER_SAME("A00370","发电用户名称或编号重复"), POWERGENERATIONUSER_SAME("A00370","发电用户名称或编号重复"),
POWERCLINET_SAME("A00371","用电用户名称或编号重复"), POWERCLINET_SAME("A00371","用电用户名称或编号重复"),
@@ -50,9 +50,11 @@ public enum PmsDeviceResponseEnum {
MODEL_NAME_REPEAT("A00350","名称不可重复"), MODEL_NAME_REPEAT("A00350","名称不可重复"),
TERMINAL_ID_REPEAT("A00351","终端索引已存在") TERMINAL_ID_REPEAT("A00351","终端索引已存在"),
MONITOR_BIND_FIND("A00352","主网监测点存在绑定该装置关系,请先解除绑定关系"),
DIS_MONITOR_BIND_FIND("A00353","配网监测点存在绑定该装置关系,请先解除绑定关系"),
TERMINAL_BIND_FIND("A00354","装置管理存在绑定该电站关系,请先解除绑定关系"),
WIRE_BIND_FIND("A00355","线路台账存在绑定该电站关系,请先解除绑定关系"),
; ;

View File

@@ -15,7 +15,7 @@ import javax.validation.constraints.NotNull;
public class PmsTerminalParam { public class PmsTerminalParam {
@ApiModelProperty(name = "id",value = "终端编号") @ApiModelProperty(name = "id",value = "终端编号")
@NotNull(message = "终端编号不能为空") //@NotNull(message = "终端编号不能为空")
private String id; private String id;
@ApiModelProperty(name = "name", value = "终端名称") @ApiModelProperty(name = "name", value = "终端名称")

View File

@@ -104,8 +104,6 @@ public class GeneratrixWireImpl extends ServiceImpl<PmsGeneratrixWireMapper, Gen
private void checkName(GeneratrixWireParam generatrixWireParam, Boolean updateFlag) { private void checkName(GeneratrixWireParam generatrixWireParam, Boolean updateFlag) {
LambdaQueryWrapper<GeneratrixWire> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<GeneratrixWire> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(GeneratrixWire::getName, generatrixWireParam.getName()) lambdaQueryWrapper.eq(GeneratrixWire::getName, generatrixWireParam.getName())
.eq(GeneratrixWire::getStationId, generatrixWireParam.getStationId()) .eq(GeneratrixWire::getStationId, generatrixWireParam.getStationId())

View File

@@ -6,14 +6,16 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.common.pojo.exception.BusinessException; import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.pms.enums.PmsDeviceResponseEnum; import com.njcn.device.pms.enums.PmsDeviceResponseEnum;
import com.njcn.device.pms.mapper.majornetwork.StatationStatMapper; import com.njcn.device.pms.mapper.majornetwork.*;
import com.njcn.device.pms.pojo.dto.PmsStatationStatInfoDTO; import com.njcn.device.pms.pojo.dto.PmsStatationStatInfoDTO;
import com.njcn.device.pms.pojo.param.PmsBaseParam; import com.njcn.device.pms.pojo.param.PmsBaseParam;
import com.njcn.device.pms.pojo.param.StatationStatParam; import com.njcn.device.pms.pojo.param.StatationStatParam;
import com.njcn.device.pms.pojo.param.PmsStatationStatInfoParam; 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.StatationStat;
import com.njcn.device.pms.pojo.vo.StatationStatVO; import com.njcn.device.pms.pojo.vo.StatationStatVO;
import com.njcn.device.pms.service.majornetwork.IStatationStatService; import com.njcn.device.pms.service.majornetwork.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.user.api.DeptFeignClient; import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.po.Dept; import com.njcn.user.pojo.po.Dept;
@@ -42,6 +44,14 @@ public class StatationStatServiceImpl extends ServiceImpl<StatationStatMapper, S
private final DeptFeignClient deptFeignClient; private final DeptFeignClient deptFeignClient;
private final TerminalMapper terminalMapper;
private final PmsGeneratrixWireMapper pmsGeneratrixWireMapper;
private final MonitorMapper monitorMapper;
private final DistributionMonitorMapper distributionMonitorMapper;
/** /**
* 获取指定的变电站信息 * 获取指定的变电站信息
* *
@@ -95,6 +105,23 @@ public class StatationStatServiceImpl extends ServiceImpl<StatationStatMapper, S
@Override @Override
public boolean delStatationStat(List<String> statationStatIds) { public boolean delStatationStat(List<String> statationStatIds) {
//删除前需要判断是否存在绑定关系
//装置是否存在绑定
LambdaQueryWrapper<PmsTerminal> terminalLambdaQueryWrapper = new LambdaQueryWrapper<>();
terminalLambdaQueryWrapper.eq(PmsTerminal::getStatus,DataStateEnum.ENABLE.getCode()).in(PmsTerminal::getPowerStationId,statationStatIds);
int terCount = terminalMapper.selectCount(terminalLambdaQueryWrapper);
if(terCount>0){
throw new BusinessException(PmsDeviceResponseEnum.TERMINAL_BIND_FIND);
}
//线路
LambdaQueryWrapper<GeneratrixWire> wireLambdaQueryWrapper = new LambdaQueryWrapper<>();
wireLambdaQueryWrapper.eq(GeneratrixWire::getStatus,DataStateEnum.ENABLE.getCode()).in(GeneratrixWire::getStationId,statationStatIds);
int wCount = pmsGeneratrixWireMapper.selectCount(wireLambdaQueryWrapper);
if(wCount>0){
throw new BusinessException(PmsDeviceResponseEnum.WIRE_BIND_FIND);
}
return this.removeByIds(statationStatIds); return this.removeByIds(statationStatIds);
} }

View File

@@ -11,8 +11,12 @@ import com.njcn.device.pms.mapper.majornetwork.TerminalMapper;
import com.njcn.device.pms.pojo.param.PmsBaseParam; import com.njcn.device.pms.pojo.param.PmsBaseParam;
import com.njcn.device.pms.pojo.param.PmsTerminalParam; import com.njcn.device.pms.pojo.param.PmsTerminalParam;
import com.njcn.device.pms.pojo.param.TerminalQueryParam; import com.njcn.device.pms.pojo.param.TerminalQueryParam;
import com.njcn.device.pms.pojo.po.DistributionMonitor;
import com.njcn.device.pms.pojo.po.Monitor;
import com.njcn.device.pms.pojo.po.PmsTerminal; import com.njcn.device.pms.pojo.po.PmsTerminal;
import com.njcn.device.pms.pojo.po.StatationStat; import com.njcn.device.pms.pojo.po.StatationStat;
import com.njcn.device.pms.service.majornetwork.IDistributionMonitorService;
import com.njcn.device.pms.service.majornetwork.IMonitorService;
import com.njcn.device.pms.service.majornetwork.IStatationStatService; import com.njcn.device.pms.service.majornetwork.IStatationStatService;
import com.njcn.device.pms.service.majornetwork.ITerminalService; import com.njcn.device.pms.service.majornetwork.ITerminalService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -46,7 +50,11 @@ public class TerminalServiceImpl extends ServiceImpl<TerminalMapper, PmsTerminal
private final IStatationStatService iStatationStatService; private final IStatationStatService iStatationStatService;
private DicDataFeignClient dicDataFeignClient; private final DicDataFeignClient dicDataFeignClient;
private final IMonitorService iMonitorService;
private final IDistributionMonitorService iDistributionMonitorService;
@Override @Override
public Page<PmsTerminal> getTerminalList(TerminalQueryParam baseParam) { public Page<PmsTerminal> getTerminalList(TerminalQueryParam baseParam) {
@@ -157,6 +165,21 @@ public class TerminalServiceImpl extends ServiceImpl<TerminalMapper, PmsTerminal
*/ */
@Override @Override
public boolean delete(List<String> ids) { public boolean delete(List<String> ids) {
//删除前需要判断依赖终端的监测点是否存在
LambdaQueryWrapper<Monitor> monitorLambdaQueryWrapper = new LambdaQueryWrapper<>();
monitorLambdaQueryWrapper.in(Monitor::getTerminalId,ids).eq(Monitor::getStatus,DataStateEnum.ENABLE.getCode());
int mCount = iMonitorService.count(monitorLambdaQueryWrapper);
if(mCount>0){
throw new BusinessException(PmsDeviceResponseEnum.MONITOR_BIND_FIND);
}
LambdaQueryWrapper<DistributionMonitor> distributionMonitorLambdaQueryWrapper = new LambdaQueryWrapper<>();
distributionMonitorLambdaQueryWrapper.in(DistributionMonitor::getTerminalId,ids).eq(DistributionMonitor::getStatus,DataStateEnum.ENABLE.getCode());
int dCount = iDistributionMonitorService.count(distributionMonitorLambdaQueryWrapper);
if(dCount>0){
throw new BusinessException(PmsDeviceResponseEnum.DIS_MONITOR_BIND_FIND);
}
return this.lambdaUpdate().set(PmsTerminal::getStatus, DataStateEnum.DELETED.getCode()).in(PmsTerminal::getId, ids).update(); return this.lambdaUpdate().set(PmsTerminal::getStatus, DataStateEnum.DELETED.getCode()).in(PmsTerminal::getId, ids).update();
} }
@@ -165,7 +188,7 @@ public class TerminalServiceImpl extends ServiceImpl<TerminalMapper, PmsTerminal
*/ */
private void checkName(PmsTerminalParam terminalParam, boolean flag){ private void checkName(PmsTerminalParam terminalParam, boolean flag){
LambdaQueryWrapper<PmsTerminal> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<PmsTerminal> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(PmsTerminal::getName,terminalParam.getName()); lambdaQueryWrapper.eq(PmsTerminal::getName,terminalParam.getName()).eq(PmsTerminal::getPowerStationId,terminalParam.getPowerStationId());
//修改 //修改
if(!flag){ if(!flag){
lambdaQueryWrapper.ne(PmsTerminal::getId,terminalParam.getId()); lambdaQueryWrapper.ne(PmsTerminal::getId,terminalParam.getId());