变电站绑定
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.pojo.dto.CustomerResponsibility;
|
||||
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.LedgerScaleDTO;
|
||||
import com.njcn.product.diagram.LedgerScale.pojo.vo.EventDetailVO;
|
||||
@@ -77,7 +81,8 @@ public class LedgerScaleServiceImpl implements LedgerScaleService {
|
||||
private final FileStorageUtil fileStorageUtil;
|
||||
private final UpHarmonicDetailMapper upHarmonicDetailMapper;
|
||||
private final PqStationMapper pqStationMapper;
|
||||
|
||||
private final CsSubConfigurationAssService csSubConfigurationAssService;
|
||||
private final CsConfigurationService csConfigurationService;
|
||||
|
||||
@Override
|
||||
public LedgerScaleDTO ledgerScaleStatistic(LargeScreenCountParam param) {
|
||||
@@ -506,6 +511,16 @@ public class LedgerScaleServiceImpl implements LedgerScaleService {
|
||||
}
|
||||
pqStation.setId(it.getId());
|
||||
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);
|
||||
});
|
||||
return result;
|
||||
|
||||
@@ -45,5 +45,14 @@ public class PqStation implements Serializable {
|
||||
@TableField(exist = false)
|
||||
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>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.njcn.product</groupId>
|
||||
<artifactId>cn-terminal</artifactId>
|
||||
<version>1.0.0</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
</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> substionIds;
|
||||
|
||||
|
||||
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> substionIds;
|
||||
|
||||
private List<String> substionName;
|
||||
|
||||
@ApiModelProperty(value = "操作人")
|
||||
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;
|
||||
|
||||
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.metadata.IPage;
|
||||
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.product.cnzutai.zutai.mapper.CsPagePOMapper;
|
||||
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.mapper.CsConfigurationMapper;
|
||||
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.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 org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -46,6 +52,8 @@ public class CsConfigurationServiceImpl extends ServiceImpl<CsConfigurationMappe
|
||||
|
||||
private final FileStorageUtil fileStorageUtil;
|
||||
private final CsPagePOMapper csPagePOMapper;
|
||||
private final CsSubConfigurationAssService csSubConfigurationAssService;
|
||||
private final LineMapper lineMapper;
|
||||
|
||||
//private final UserFeignClient userFeignClient;
|
||||
|
||||
@@ -72,21 +80,44 @@ public class CsConfigurationServiceImpl extends ServiceImpl<CsConfigurationMappe
|
||||
csConfigurationPO.setStatus("1");
|
||||
boolean save = this.save(csConfigurationPO);
|
||||
|
||||
|
||||
String name = csConfigurationPO.getName();
|
||||
Integer count = this.lambdaQuery().eq(CsConfigurationPO::getName, name).eq(CsConfigurationPO::getStatus, "1").count();
|
||||
if(count>1){
|
||||
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;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean audit(CsConfigurationParm.CsConfigurationAuditParam auditParm) {
|
||||
CsConfigurationPO tem = this.getById(auditParm.getId());
|
||||
if(Objects.isNull(tem)){
|
||||
throw new BusinessException(CommonResponseEnum.FAIL,"未查询到项目信息,无法操作!");
|
||||
}
|
||||
|
||||
//删除关联表信息
|
||||
csSubConfigurationAssService.lambdaUpdate().eq(CsSubConfigurationAss::getConfigId,tem.getId()).remove();
|
||||
|
||||
CsConfigurationPO csConfigurationPO = new CsConfigurationPO();
|
||||
if(Objects.equals(auditParm.getStatus(),"0")){
|
||||
@@ -126,6 +157,26 @@ public class CsConfigurationServiceImpl extends ServiceImpl<CsConfigurationMappe
|
||||
|
||||
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;
|
||||
}
|
||||
|
||||
@@ -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()));
|
||||
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