Commit 906f112d authored by duanruiming's avatar duanruiming

[update] 通过厂商信息查询路口信息优化

parent 3bf9fc65
......@@ -7,6 +7,7 @@ import lombok.extern.slf4j.Slf4j;
import net.wanji.common.utils.tool.StringUtils;
import net.wanji.databus.dao.entity.CrossSchedulesPO;
import net.wanji.databus.dao.mapper.CrossInfoMapper;
import net.wanji.databus.dao.mapper.ManufacturerInfoMapper;
import net.wanji.databus.dto.*;
import net.wanji.databus.po.CrossInfoPO;
import net.wanji.databus.po.CrossInfoPOExt;
......@@ -33,7 +34,9 @@ import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* @author duanruiming
......@@ -49,17 +52,28 @@ public class StaticInfoServiceImpl implements StaticInfoService {
@Resource
private CrossInfoMapper crossInfoMapper;
@Resource
private ManufacturerInfoMapper manufacturerInfoMapper;
@Resource
private VIntersectionMapper vIntersectionMapper;
@Resource
private VNtcipTimeBaseScheduleMapper vNtcipTimeBaseScheduleMapper;
@Override
public List<CrossInfoPO> crossBasicInfo(CrossInfoDTO crossInfoDTO) throws Exception {
List<VIntersectionEntity> vIntersectionEntities = vIntersectionMapper.selectList(null);
Integer id = manufacturerInfoMapper.selectIdByCode(crossInfoDTO.getManufacturerCode());
List<CrossInfoPO> crossInfoPOList = crossInfoMapper.selectByManufacturerId(id);
List<String> codeList = crossInfoPOList.stream().map(CrossInfoPO::getCode).collect(Collectors.toList());
Map<String, String> codeCrossIdMap = crossInfoPOList.stream().collect(Collectors.toMap(CrossInfoPO::getCode, CrossInfoPO::getId));
List<CrossInfoPO> crossInfoPOS = new ArrayList<>();
if (StringUtils.equalsIgnoreCase("HISENSE", crossInfoDTO.getManufacturerCode())) {
LambdaQueryWrapper<VIntersectionEntity> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.in(VIntersectionEntity::getCIntsID, codeList);
List<VIntersectionEntity> vIntersectionEntities = vIntersectionMapper.selectList(queryWrapper);
for (VIntersectionEntity vIntersectionEntity : vIntersectionEntities) {
String cIntsID = vIntersectionEntity.getCIntsID();
CrossInfoPO crossInfoPO = new CrossInfoPO();
crossInfoPO.setCode(vIntersectionEntity.getCIntsID());
crossInfoPO.setId(codeCrossIdMap.get(cIntsID));
crossInfoPO.setCode(cIntsID);
crossInfoPO.setName(vIntersectionEntity.getCIntsName());
crossInfoPO.setIp(vIntersectionEntity.getCCONTROLLERIP());
String [] array = {String.valueOf(vIntersectionEntity.getLongitude()), String.valueOf(vIntersectionEntity.getLatitude())};
......@@ -68,6 +82,7 @@ public class StaticInfoServiceImpl implements StaticInfoService {
crossInfoPO.setManufacturerId(22);
crossInfoPOS.add(crossInfoPO);
}
}
return crossInfoPOS;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment