变电站绑定
This commit is contained in:
@@ -21,6 +21,10 @@ import com.njcn.product.advance.harmonicUp.pojo.po.UpHarmonicDetail;
|
|||||||
import com.njcn.product.advance.responsility.mapper.RespDataResultMapper;
|
import com.njcn.product.advance.responsility.mapper.RespDataResultMapper;
|
||||||
import com.njcn.product.advance.responsility.pojo.dto.CustomerResponsibility;
|
import com.njcn.product.advance.responsility.pojo.dto.CustomerResponsibility;
|
||||||
import com.njcn.product.advance.responsility.pojo.po.RespDataResult;
|
import com.njcn.product.advance.responsility.pojo.po.RespDataResult;
|
||||||
|
import com.njcn.product.cnzutai.zutai.pojo.po.CsConfigurationPO;
|
||||||
|
import com.njcn.product.cnzutai.zutai.pojo.po.CsSubConfigurationAss;
|
||||||
|
import com.njcn.product.cnzutai.zutai.service.CsConfigurationService;
|
||||||
|
import com.njcn.product.cnzutai.zutai.service.CsSubConfigurationAssService;
|
||||||
import com.njcn.product.diagram.LedgerScale.pojo.dto.EventSourceDTO;
|
import com.njcn.product.diagram.LedgerScale.pojo.dto.EventSourceDTO;
|
||||||
import com.njcn.product.diagram.LedgerScale.pojo.dto.LedgerScaleDTO;
|
import com.njcn.product.diagram.LedgerScale.pojo.dto.LedgerScaleDTO;
|
||||||
import com.njcn.product.diagram.LedgerScale.pojo.vo.EventDetailVO;
|
import com.njcn.product.diagram.LedgerScale.pojo.vo.EventDetailVO;
|
||||||
@@ -77,7 +81,8 @@ public class LedgerScaleServiceImpl implements LedgerScaleService {
|
|||||||
private final FileStorageUtil fileStorageUtil;
|
private final FileStorageUtil fileStorageUtil;
|
||||||
private final UpHarmonicDetailMapper upHarmonicDetailMapper;
|
private final UpHarmonicDetailMapper upHarmonicDetailMapper;
|
||||||
private final PqStationMapper pqStationMapper;
|
private final PqStationMapper pqStationMapper;
|
||||||
|
private final CsSubConfigurationAssService csSubConfigurationAssService;
|
||||||
|
private final CsConfigurationService csConfigurationService;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public LedgerScaleDTO ledgerScaleStatistic(LargeScreenCountParam param) {
|
public LedgerScaleDTO ledgerScaleStatistic(LargeScreenCountParam param) {
|
||||||
@@ -506,6 +511,16 @@ public class LedgerScaleServiceImpl implements LedgerScaleService {
|
|||||||
}
|
}
|
||||||
pqStation.setId(it.getId());
|
pqStation.setId(it.getId());
|
||||||
pqStation.setName(it.getName());
|
pqStation.setName(it.getName());
|
||||||
|
CsSubConfigurationAss one = csSubConfigurationAssService.lambdaQuery().eq(CsSubConfigurationAss::getSubId, it.getId()).one();
|
||||||
|
if(Objects.isNull(one)){
|
||||||
|
pqStation.setBindFlag(false);
|
||||||
|
|
||||||
|
}else {
|
||||||
|
CsConfigurationPO csConfigurationPO = csConfigurationService.lambdaQuery().eq(CsConfigurationPO::getId, one.getConfigId()).one();
|
||||||
|
pqStation.setBindFlag(true);
|
||||||
|
pqStation.setConfigId(csConfigurationPO.getId());
|
||||||
|
pqStation.setConfigName(csConfigurationPO.getName());
|
||||||
|
}
|
||||||
result.add(pqStation);
|
result.add(pqStation);
|
||||||
});
|
});
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@@ -45,5 +45,14 @@ public class PqStation implements Serializable {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private boolean bindFlag;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String configId;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private String configName;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,6 +54,12 @@
|
|||||||
<version>1.0.0</version>
|
<version>1.0.0</version>
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.njcn.product</groupId>
|
||||||
|
<artifactId>cn-terminal</artifactId>
|
||||||
|
<version>1.0.0</version>
|
||||||
|
<scope>compile</scope>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,15 @@
|
|||||||
|
package com.njcn.product.cnzutai.zutai.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.njcn.product.cnzutai.zutai.pojo.po.CsSubConfigurationAss;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
* Date: 2025/11/04 上午 11:07【需求编号】
|
||||||
|
*
|
||||||
|
* @author clam
|
||||||
|
* @version V1.0.0
|
||||||
|
*/
|
||||||
|
public interface CsSubConfigurationAssMapper extends BaseMapper<CsSubConfigurationAss> {
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.njcn.product.cnzutai.zutai.mapper.CsSubConfigurationAssMapper">
|
||||||
|
<resultMap id="BaseResultMap" type="com.njcn.product.cnzutai.zutai.pojo.po.CsSubConfigurationAss">
|
||||||
|
<!--@mbg.generated-->
|
||||||
|
<!--@Table cs_sub_configuration_ass-->
|
||||||
|
<id column="sub_id" jdbcType="VARCHAR" property="subId" />
|
||||||
|
<result column="config_id" jdbcType="VARCHAR" property="configId" />
|
||||||
|
</resultMap>
|
||||||
|
<sql id="Base_Column_List">
|
||||||
|
<!--@mbg.generated-->
|
||||||
|
sub_id, config_id
|
||||||
|
</sql>
|
||||||
|
</mapper>
|
||||||
@@ -30,6 +30,8 @@ public class CsConfigurationParm {
|
|||||||
|
|
||||||
private List<String> projectIds;
|
private List<String> projectIds;
|
||||||
|
|
||||||
|
private List<String> substionIds;
|
||||||
|
|
||||||
|
|
||||||
private Integer orderBy;
|
private Integer orderBy;
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,33 @@
|
|||||||
|
package com.njcn.product.cnzutai.zutai.pojo.po;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
* Date: 2025/11/04 上午 11:07【需求编号】
|
||||||
|
*
|
||||||
|
* @author clam
|
||||||
|
* @version V1.0.0
|
||||||
|
*/
|
||||||
|
@TableName(value = "cs_sub_configuration_ass")
|
||||||
|
@Data
|
||||||
|
public class CsSubConfigurationAss {
|
||||||
|
/**
|
||||||
|
* 变电站序号
|
||||||
|
*/
|
||||||
|
@TableId(value = "sub_id", type = IdType.INPUT)
|
||||||
|
private String subId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组态id
|
||||||
|
*/
|
||||||
|
@TableField(value = "config_id")
|
||||||
|
private String configId;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -37,6 +37,9 @@ public class CsConfigurationVO extends BaseEntity {
|
|||||||
|
|
||||||
private List<String> projectIds;
|
private List<String> projectIds;
|
||||||
|
|
||||||
|
private List<String> substionIds;
|
||||||
|
|
||||||
|
private List<String> substionName;
|
||||||
|
|
||||||
@ApiModelProperty(value = "操作人")
|
@ApiModelProperty(value = "操作人")
|
||||||
private String operater;
|
private String operater;
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
package com.njcn.product.cnzutai.zutai.service;
|
||||||
|
|
||||||
|
import com.njcn.product.cnzutai.zutai.pojo.po.CsSubConfigurationAss;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
* Date: 2025/11/04 上午 11:07【需求编号】
|
||||||
|
*
|
||||||
|
* @author clam
|
||||||
|
* @version V1.0.0
|
||||||
|
*/
|
||||||
|
public interface CsSubConfigurationAssService extends IService<CsSubConfigurationAss>{
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
package com.njcn.product.cnzutai.zutai.service.impl;
|
package com.njcn.product.cnzutai.zutai.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
@@ -11,11 +12,16 @@ import com.njcn.oss.constant.OssPath;
|
|||||||
import com.njcn.oss.utils.FileStorageUtil;
|
import com.njcn.oss.utils.FileStorageUtil;
|
||||||
import com.njcn.product.cnzutai.zutai.mapper.CsPagePOMapper;
|
import com.njcn.product.cnzutai.zutai.mapper.CsPagePOMapper;
|
||||||
import com.njcn.product.cnzutai.zutai.pojo.po.CsPagePO;
|
import com.njcn.product.cnzutai.zutai.pojo.po.CsPagePO;
|
||||||
|
import com.njcn.product.cnzutai.zutai.pojo.po.CsSubConfigurationAss;
|
||||||
import com.njcn.product.cnzutai.zutai.service.CsConfigurationService;
|
import com.njcn.product.cnzutai.zutai.service.CsConfigurationService;
|
||||||
import com.njcn.product.cnzutai.zutai.mapper.CsConfigurationMapper;
|
import com.njcn.product.cnzutai.zutai.mapper.CsConfigurationMapper;
|
||||||
import com.njcn.product.cnzutai.zutai.pojo.param.CsConfigurationParm;
|
import com.njcn.product.cnzutai.zutai.pojo.param.CsConfigurationParm;
|
||||||
import com.njcn.product.cnzutai.zutai.pojo.po.CsConfigurationPO;
|
import com.njcn.product.cnzutai.zutai.pojo.po.CsConfigurationPO;
|
||||||
import com.njcn.product.cnzutai.zutai.pojo.vo.CsConfigurationVO;
|
import com.njcn.product.cnzutai.zutai.pojo.vo.CsConfigurationVO;
|
||||||
|
import com.njcn.product.cnzutai.zutai.service.CsSubConfigurationAssService;
|
||||||
|
import com.njcn.product.terminal.mysqlTerminal.mapper.LineMapper;
|
||||||
|
import com.njcn.product.terminal.mysqlTerminal.mapper.PqStationMapper;
|
||||||
|
import com.njcn.product.terminal.mysqlTerminal.pojo.po.Line;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
@@ -46,6 +52,8 @@ public class CsConfigurationServiceImpl extends ServiceImpl<CsConfigurationMappe
|
|||||||
|
|
||||||
private final FileStorageUtil fileStorageUtil;
|
private final FileStorageUtil fileStorageUtil;
|
||||||
private final CsPagePOMapper csPagePOMapper;
|
private final CsPagePOMapper csPagePOMapper;
|
||||||
|
private final CsSubConfigurationAssService csSubConfigurationAssService;
|
||||||
|
private final LineMapper lineMapper;
|
||||||
|
|
||||||
//private final UserFeignClient userFeignClient;
|
//private final UserFeignClient userFeignClient;
|
||||||
|
|
||||||
@@ -72,21 +80,44 @@ public class CsConfigurationServiceImpl extends ServiceImpl<CsConfigurationMappe
|
|||||||
csConfigurationPO.setStatus("1");
|
csConfigurationPO.setStatus("1");
|
||||||
boolean save = this.save(csConfigurationPO);
|
boolean save = this.save(csConfigurationPO);
|
||||||
|
|
||||||
|
|
||||||
String name = csConfigurationPO.getName();
|
String name = csConfigurationPO.getName();
|
||||||
Integer count = this.lambdaQuery().eq(CsConfigurationPO::getName, name).eq(CsConfigurationPO::getStatus, "1").count();
|
Integer count = this.lambdaQuery().eq(CsConfigurationPO::getName, name).eq(CsConfigurationPO::getStatus, "1").count();
|
||||||
if(count>1){
|
if(count>1){
|
||||||
throw new BusinessException("存在相同的组态项目名称");
|
throw new BusinessException("存在相同的组态项目名称");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//添加变电站绑定
|
||||||
|
if(!CollectionUtils.isEmpty(csConfigurationParm.getSubstionIds())){
|
||||||
|
List<CsSubConfigurationAss> list = csSubConfigurationAssService.lambdaQuery().in(CsSubConfigurationAss::getSubId, csConfigurationParm.getSubstionIds()).list();
|
||||||
|
if (!CollectionUtils.isEmpty(list)){
|
||||||
|
List<Line> stationResult = lineMapper.selectList(new LambdaQueryWrapper<Line>().in(Line::getId,list));
|
||||||
|
String subNameList = stationResult.stream().map(Line::getName).collect(Collectors.joining(StrUtil.COMMA));
|
||||||
|
|
||||||
|
throw new BusinessException("变电站"+subNameList+"已绑定其他项目请修改");
|
||||||
|
}else {
|
||||||
|
List<CsSubConfigurationAss> csSubConfigurationAsses = csConfigurationParm.getSubstionIds().stream().map(temp -> {
|
||||||
|
CsSubConfigurationAss csSubConfigurationAss = new CsSubConfigurationAss();
|
||||||
|
csSubConfigurationAss.setSubId(temp);
|
||||||
|
csSubConfigurationAss.setConfigId(csConfigurationPO.getId());
|
||||||
|
return csSubConfigurationAss;
|
||||||
|
}).collect(Collectors.toList());
|
||||||
|
|
||||||
|
csSubConfigurationAssService.saveBatch(csSubConfigurationAsses);
|
||||||
|
}
|
||||||
|
}
|
||||||
return save;
|
return save;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public boolean audit(CsConfigurationParm.CsConfigurationAuditParam auditParm) {
|
public boolean audit(CsConfigurationParm.CsConfigurationAuditParam auditParm) {
|
||||||
CsConfigurationPO tem = this.getById(auditParm.getId());
|
CsConfigurationPO tem = this.getById(auditParm.getId());
|
||||||
if(Objects.isNull(tem)){
|
if(Objects.isNull(tem)){
|
||||||
throw new BusinessException(CommonResponseEnum.FAIL,"未查询到项目信息,无法操作!");
|
throw new BusinessException(CommonResponseEnum.FAIL,"未查询到项目信息,无法操作!");
|
||||||
}
|
}
|
||||||
|
//删除关联表信息
|
||||||
|
csSubConfigurationAssService.lambdaUpdate().eq(CsSubConfigurationAss::getConfigId,tem.getId()).remove();
|
||||||
|
|
||||||
CsConfigurationPO csConfigurationPO = new CsConfigurationPO();
|
CsConfigurationPO csConfigurationPO = new CsConfigurationPO();
|
||||||
if(Objects.equals(auditParm.getStatus(),"0")){
|
if(Objects.equals(auditParm.getStatus(),"0")){
|
||||||
@@ -126,6 +157,26 @@ public class CsConfigurationServiceImpl extends ServiceImpl<CsConfigurationMappe
|
|||||||
|
|
||||||
boolean b = this.updateById(csConfigurationPO);
|
boolean b = this.updateById(csConfigurationPO);
|
||||||
|
|
||||||
|
//添加变电站绑定
|
||||||
|
if(!CollectionUtils.isEmpty(auditParm.getSubstionIds())){
|
||||||
|
List<CsSubConfigurationAss> list = csSubConfigurationAssService.lambdaQuery().in(CsSubConfigurationAss::getSubId, auditParm.getSubstionIds()).list();
|
||||||
|
if (!CollectionUtils.isEmpty(list)){
|
||||||
|
List<Line> stationResult = lineMapper.selectList(new LambdaQueryWrapper<Line>().in(Line::getId,list));
|
||||||
|
String subNameList = stationResult.stream().map(Line::getName).collect(Collectors.joining(StrUtil.COMMA));
|
||||||
|
|
||||||
|
throw new BusinessException("变电站"+subNameList+"已绑定其他项目请修改");
|
||||||
|
}else {
|
||||||
|
List<CsSubConfigurationAss> csSubConfigurationAsses = auditParm.getSubstionIds().stream().map(temp -> {
|
||||||
|
CsSubConfigurationAss csSubConfigurationAss = new CsSubConfigurationAss();
|
||||||
|
csSubConfigurationAss.setSubId(temp);
|
||||||
|
csSubConfigurationAss.setConfigId(csConfigurationPO.getId());
|
||||||
|
return csSubConfigurationAss;
|
||||||
|
}).collect(Collectors.toList());
|
||||||
|
|
||||||
|
csSubConfigurationAssService.saveBatch(csSubConfigurationAsses);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return b;
|
return b;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -198,7 +249,14 @@ public class CsConfigurationServiceImpl extends ServiceImpl<CsConfigurationMappe
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
List<CsSubConfigurationAss> csSubConfigurationAssList = csSubConfigurationAssService.lambdaQuery().eq(CsSubConfigurationAss::getConfigId, page.getId()).list();
|
||||||
|
if(!CollectionUtils.isEmpty(csSubConfigurationAssList)){
|
||||||
|
List<String> subIds = csSubConfigurationAssList.stream().map(CsSubConfigurationAss::getSubId).collect(Collectors.toList());
|
||||||
|
|
||||||
|
csDevModelPageVO.setSubstionIds(subIds);
|
||||||
|
// List<Line> stationResult = lineMapper.selectList(new LambdaQueryWrapper<Line>().in(Line::getId,subIds));
|
||||||
|
// csDevModelPageVO.setSubstionName();
|
||||||
|
}
|
||||||
|
|
||||||
csDevModelPageVO.setOperater(collect2.get(csDevModelPageVO.getCreateBy()));
|
csDevModelPageVO.setOperater(collect2.get(csDevModelPageVO.getCreateBy()));
|
||||||
return csDevModelPageVO;
|
return csDevModelPageVO;
|
||||||
|
|||||||
@@ -0,0 +1,21 @@
|
|||||||
|
package com.njcn.product.cnzutai.zutai.service.impl;
|
||||||
|
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import java.util.List;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.njcn.product.cnzutai.zutai.mapper.CsSubConfigurationAssMapper;
|
||||||
|
import com.njcn.product.cnzutai.zutai.pojo.po.CsSubConfigurationAss;
|
||||||
|
import com.njcn.product.cnzutai.zutai.service.CsSubConfigurationAssService;
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* Description:
|
||||||
|
* Date: 2025/11/04 上午 11:07【需求编号】
|
||||||
|
*
|
||||||
|
* @author clam
|
||||||
|
* @version V1.0.0
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class CsSubConfigurationAssServiceImpl extends ServiceImpl<CsSubConfigurationAssMapper, CsSubConfigurationAss> implements CsSubConfigurationAssService{
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user