1.无锡地图电站打点接口

This commit is contained in:
2025-11-03 10:24:01 +08:00
parent 37f95daaf0
commit 00fabe3b6b
44 changed files with 200 additions and 112 deletions

View File

@@ -10,7 +10,7 @@ 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;
import com.njcn.product.diagram.LedgerScale.pojo.vo.EventLedgerVO;
import com.njcn.product.terminal.mysqlTerminal.pojo.dto.LedgerBaseInfo;
import com.njcn.product.terminal.mysqlTerminal.pojo.po.PqStation;
import com.njcn.product.terminal.mysqlTerminal.pojo.vo.TerminalShowVO;
import com.njcn.product.diagram.LedgerScale.service.LedgerScaleService;
import com.njcn.product.terminal.mysqlTerminal.pojo.param.LargeScreenCountParam;
@@ -168,4 +168,16 @@ public class LedgerScaleController extends BaseController {
}
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@PostMapping("/stationMap")
@ApiOperation("获取变电站详情")
@ApiImplicitParam(name = "param", value = "查询参数", required = true)
public HttpResult<List<PqStation>> stationMap(@RequestBody LargeScreenCountParam param) {
String methodDescribe = getMethodDescribe("stationMap");
List<PqStation> result = ledgerScaleService.stationMap(param);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
}

View File

@@ -6,7 +6,7 @@ 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;
import com.njcn.product.diagram.LedgerScale.pojo.vo.EventLedgerVO;
import com.njcn.product.terminal.mysqlTerminal.pojo.dto.LedgerBaseInfo;
import com.njcn.product.terminal.mysqlTerminal.pojo.po.PqStation;
import com.njcn.product.terminal.mysqlTerminal.pojo.vo.TerminalShowVO;
import com.njcn.product.terminal.mysqlTerminal.pojo.param.LargeScreenCountParam;
@@ -44,4 +44,6 @@ public interface LedgerScaleService {
List<CustomerResponsibility> harmOneImage(String id, Integer time);
List<PqStation> stationMap(LargeScreenCountParam param);
}

View File

@@ -3,7 +3,6 @@ package com.njcn.product.diagram.LedgerScale.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.IoUtil;
@@ -20,24 +19,21 @@ import com.njcn.product.advance.eventSource.pojo.po.RmpEventDetailAssPO;
import com.njcn.product.advance.harmonicUp.mapper.UpHarmonicDetailMapper;
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.CustomerData;
import com.njcn.product.advance.responsility.pojo.dto.CustomerResponsibility;
import com.njcn.product.advance.responsility.pojo.dto.ResponsibilityResult;
import com.njcn.product.advance.responsility.pojo.po.RespDataResult;
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;
import com.njcn.product.diagram.LedgerScale.pojo.vo.EventLedgerVO;
import com.njcn.product.terminal.mysqlTerminal.mapper.LineMapper;
import com.njcn.product.terminal.mysqlTerminal.mapper.UserReportPOMapper;
import com.njcn.product.terminal.mysqlTerminal.pojo.po.UserReportPO;
import com.njcn.product.terminal.mysqlTerminal.mapper.*;
import com.njcn.product.terminal.mysqlTerminal.pojo.enums.LineBaseEnum;
import com.njcn.product.terminal.mysqlTerminal.pojo.po.Line;
import com.njcn.product.terminal.mysqlTerminal.pojo.po.PqStation;
import com.njcn.product.terminal.mysqlTerminal.pojo.vo.TerminalShowVO;
import com.njcn.product.diagram.LedgerScale.service.LedgerScaleService;
import com.njcn.product.system.dict.mapper.DictDataMapper;
import com.njcn.product.system.dict.pojo.enums.DicDataTypeEnum;
import com.njcn.product.system.dict.pojo.po.DictData;
import com.njcn.product.terminal.mysqlTerminal.mapper.LedgerScaleMapper;
import com.njcn.product.terminal.mysqlTerminal.mapper.RmpEventDetailMapper;
import com.njcn.product.terminal.mysqlTerminal.pojo.dto.LedgerBaseInfo;
import com.njcn.product.terminal.mysqlTerminal.pojo.enums.RunFlagEnum;
import com.njcn.product.terminal.mysqlTerminal.pojo.param.LargeScreenCountParam;
@@ -51,7 +47,6 @@ import org.springframework.stereotype.Service;
import java.io.InputStream;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDateTime;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
@@ -80,8 +75,8 @@ public class LedgerScaleServiceImpl implements LedgerScaleService {
private final RespDataResultMapper respDataResultMapper;
private final FileStorageUtil fileStorageUtil;
private final UserReportPOMapper userReportPOMapper;
private final UpHarmonicDetailMapper upHarmonicDetailMapper;
private final PqStationMapper pqStationMapper;
@Override
@@ -489,5 +484,32 @@ public class LedgerScaleServiceImpl implements LedgerScaleService {
return new ArrayList<>();
}
@Override
public List<PqStation> stationMap(LargeScreenCountParam param) {
List<PqStation> result = new ArrayList<>();
List<String> runIds = commGeneralService.getRunLineIdsByDept(param.getDeptId());
if(CollUtil.isEmpty(runIds)){
return result;
}
List<Line> lineList = lineMapper.selectList(new LambdaQueryWrapper<Line>().in(Line::getId,runIds));
List<String> stationIds = lineList.stream().map(it->it.getPids().split(StrUtil.COMMA)[LineBaseEnum.SUB_LEVEL.getCode()]).distinct().collect(Collectors.toList());
List<Line> stationResult = lineMapper.selectList(new LambdaQueryWrapper<Line>().in(Line::getId,stationIds));
List<String> ids = stationResult.stream().map(Line::getId).distinct().collect(Collectors.toList());
List<PqStation> pqStationList = pqStationMapper.selectList(new LambdaQueryWrapper<PqStation>().in(PqStation::getId,ids));
Map<String, PqStation> substationMap = pqStationList.stream().collect(Collectors.toMap(PqStation::getId, po->po));
stationResult.forEach(it->{
PqStation pqStation = new PqStation();
if(substationMap.containsKey(it.getId())){
PqStation tem = substationMap.get(it.getId());
pqStation.setLng(tem.getLng());
pqStation.setLat(tem.getLat());
}
pqStation.setId(it.getId());
pqStation.setName(it.getName());
result.add(pqStation);
});
return result;
}
}