pms台账功能修改
This commit is contained in:
@@ -275,5 +275,24 @@ public class PmsDistributionMonitorController extends BaseController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量同步台区到配网表
|
||||||
|
* @author cdf
|
||||||
|
* @date 2023/7/24
|
||||||
|
*/
|
||||||
|
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||||
|
@PostMapping("/batchOpDistributionArea")
|
||||||
|
@ApiOperation("批量同步台区到配网表")
|
||||||
|
public HttpResult<Boolean> batchOpDistributionArea() {
|
||||||
|
String methodDescribe = getMethodDescribe("batchOpDistributionArea");
|
||||||
|
boolean result = iDistributionMonitorService.batchOpDistributionArea();
|
||||||
|
if(result){
|
||||||
|
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||||
|
}
|
||||||
|
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package com.njcn.device.pms.mapper.majornetwork;
|
|||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
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;
|
||||||
|
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||||
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
|
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
|
||||||
import com.njcn.device.pms.pojo.dto.PmsMonitorBaseDTO;
|
import com.njcn.device.pms.pojo.dto.PmsMonitorBaseDTO;
|
||||||
import com.njcn.device.pms.pojo.dto.PmsSimpleDTO;
|
import com.njcn.device.pms.pojo.dto.PmsSimpleDTO;
|
||||||
@@ -27,7 +28,7 @@ import java.util.List;
|
|||||||
* @author hongawen
|
* @author hongawen
|
||||||
* @since 2022-10-14
|
* @since 2022-10-14
|
||||||
*/
|
*/
|
||||||
public interface DistributionMonitorMapper extends BaseMapper<DistributionMonitor> {
|
public interface DistributionMonitorMapper extends MppBaseMapper<DistributionMonitor> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据组织机构id获取配网监测点
|
* 根据组织机构id获取配网监测点
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
package com.njcn.device.pms.service.majornetwork.impl;
|
package com.njcn.device.pms.service.majornetwork.impl;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
|
import cn.hutool.core.date.TimeInterval;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||||
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.biz.pojo.po.Overlimit;
|
import com.njcn.device.biz.pojo.po.Overlimit;
|
||||||
@@ -51,7 +53,7 @@ import java.util.stream.Collectors;
|
|||||||
@Service
|
@Service
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class DistributionMonitorServiceImpl extends ServiceImpl<DistributionMonitorMapper, DistributionMonitor> implements IDistributionMonitorService {
|
public class DistributionMonitorServiceImpl extends MppServiceImpl<DistributionMonitorMapper, DistributionMonitor> implements IDistributionMonitorService {
|
||||||
|
|
||||||
private final DicDataFeignClient dicDataFeignClient;
|
private final DicDataFeignClient dicDataFeignClient;
|
||||||
|
|
||||||
@@ -440,6 +442,46 @@ public class DistributionMonitorServiceImpl extends ServiceImpl<DistributionMoni
|
|||||||
return distributionMonitorMapper.pwMonitorAreaDetailInfo(monitorIds);
|
return distributionMonitorMapper.pwMonitorAreaDetailInfo(monitorIds);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public Boolean batchOpDistributionArea() {
|
||||||
|
TimeInterval timeInterval = new TimeInterval();
|
||||||
|
|
||||||
|
DictData dictData = dicDataFeignClient.getDicDataByNameAndTypeName(DicDataTypeEnum.LINE_SORT.getName(),DicDataEnum.TWO_LINE.getName()).getData();
|
||||||
|
int count = powerDistributionareaMapper.selectCount(new LambdaQueryWrapper<>());
|
||||||
|
int calCount = 0;
|
||||||
|
if (count > 0) {
|
||||||
|
calCount = count / 10000 + 1;
|
||||||
|
|
||||||
|
for (int i = 0; i < calCount; i++) {
|
||||||
|
int page = i * 10000;
|
||||||
|
List<PowerDistributionarea> powerDistributionareaList = powerDistributionareaMapper.selectList(
|
||||||
|
new LambdaQueryWrapper<PowerDistributionarea>()
|
||||||
|
.select(PowerDistributionarea::getId,
|
||||||
|
PowerDistributionarea::getState,
|
||||||
|
PowerDistributionarea::getVoltageLevel)
|
||||||
|
.last(true, "limit " + page+ ",10000"));
|
||||||
|
|
||||||
|
List<DistributionMonitor> poList= new ArrayList<>();
|
||||||
|
for(PowerDistributionarea powerDistributionarea:powerDistributionareaList){
|
||||||
|
DistributionMonitor distributionMonitor = new DistributionMonitor();
|
||||||
|
distributionMonitor.setMonitorSort(dictData.getId());
|
||||||
|
distributionMonitor.setMonitorId(powerDistributionarea.getId());
|
||||||
|
distributionMonitor.setStatus(DataStateEnum.ENABLE.getCode());
|
||||||
|
distributionMonitor.setMonitorState(powerDistributionarea.getState());
|
||||||
|
distributionMonitor.setVoltageLevel(powerDistributionarea.getVoltageLevel());
|
||||||
|
distributionMonitor.setCreatedDate(LocalDateTime.now());
|
||||||
|
distributionMonitor.setIfPowerUser(0);
|
||||||
|
poList.add(distributionMonitor);
|
||||||
|
|
||||||
|
}
|
||||||
|
this.saveOrUpdateBatchByMultiId(poList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
private void overLimitAdd(String voltageLevel, String id) {
|
private void overLimitAdd(String voltageLevel, String id) {
|
||||||
DictData voltageDic = dicDataFeignClient.getDicDataById(voltageLevel).getData();
|
DictData voltageDic = dicDataFeignClient.getDicDataById(voltageLevel).getData();
|
||||||
float voltageLevelValue = Float.parseFloat(voltageDic.getValue());
|
float voltageLevelValue = Float.parseFloat(voltageDic.getValue());
|
||||||
|
|||||||
Reference in New Issue
Block a user