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","未查询到字典监测点类别"),
GENERATRIXWIRE_NAME_REPEAT("A00368","同一母线下存在相同名称线路"),
GENERATRIXWIRE_NAME_REPEAT("A00368","同一电站下存在相同名称线路"),
GENERATRIX_NAME_REPEAT("A00369","同一电站下存在相同名称母线"),
POWERGENERATIONUSER_SAME("A00370","发电用户名称或编号重复"),
POWERCLINET_SAME("A00371","用电用户名称或编号重复"),
@@ -50,9 +50,11 @@ public enum PmsDeviceResponseEnum {
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 {
@ApiModelProperty(name = "id",value = "终端编号")
@NotNull(message = "终端编号不能为空")
//@NotNull(message = "终端编号不能为空")
private String id;
@ApiModelProperty(name = "name", value = "终端名称")

View File

@@ -104,8 +104,6 @@ public class GeneratrixWireImpl extends ServiceImpl<PmsGeneratrixWireMapper, Gen
private void checkName(GeneratrixWireParam generatrixWireParam, Boolean updateFlag) {
LambdaQueryWrapper<GeneratrixWire> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(GeneratrixWire::getName, generatrixWireParam.getName())
.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.exception.BusinessException;
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.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.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.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.po.Dept;
@@ -42,6 +44,14 @@ public class StatationStatServiceImpl extends ServiceImpl<StatationStatMapper, S
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
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);
}

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.PmsTerminalParam;
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.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.ITerminalService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -46,7 +50,11 @@ public class TerminalServiceImpl extends ServiceImpl<TerminalMapper, PmsTerminal
private final IStatationStatService iStatationStatService;
private DicDataFeignClient dicDataFeignClient;
private final DicDataFeignClient dicDataFeignClient;
private final IMonitorService iMonitorService;
private final IDistributionMonitorService iDistributionMonitorService;
@Override
public Page<PmsTerminal> getTerminalList(TerminalQueryParam baseParam) {
@@ -157,6 +165,21 @@ public class TerminalServiceImpl extends ServiceImpl<TerminalMapper, PmsTerminal
*/
@Override
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();
}
@@ -165,7 +188,7 @@ public class TerminalServiceImpl extends ServiceImpl<TerminalMapper, PmsTerminal
*/
private void checkName(PmsTerminalParam terminalParam, boolean flag){
LambdaQueryWrapper<PmsTerminal> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(PmsTerminal::getName,terminalParam.getName());
lambdaQueryWrapper.eq(PmsTerminal::getName,terminalParam.getName()).eq(PmsTerminal::getPowerStationId,terminalParam.getPowerStationId());
//修改
if(!flag){
lambdaQueryWrapper.ne(PmsTerminal::getId,terminalParam.getId());