Commit c7aeef29 authored by duanruiming's avatar duanruiming

[update] 优化持久层

parent 11f5d1f9
...@@ -8,7 +8,7 @@ import net.wanji.common.annotation.aspect.AspectLog; ...@@ -8,7 +8,7 @@ import net.wanji.common.annotation.aspect.AspectLog;
import net.wanji.common.dto.CrossIdDTO; import net.wanji.common.dto.CrossIdDTO;
import net.wanji.common.enums.BaseEnum; import net.wanji.common.enums.BaseEnum;
import net.wanji.common.framework.rest.JsonViewObject; import net.wanji.common.framework.rest.JsonViewObject;
import net.wanji.web.dto.RunningPlanDTO; import net.wanji.databus.dto.RunningPlanDTO;
import net.wanji.web.service.scheme.impl.RunningPlanServiceImpl; import net.wanji.web.service.scheme.impl.RunningPlanServiceImpl;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
......
...@@ -8,16 +8,14 @@ import com.google.gson.GsonBuilder; ...@@ -8,16 +8,14 @@ import com.google.gson.GsonBuilder;
import net.wanji.common.dto.CrossIdDTO; import net.wanji.common.dto.CrossIdDTO;
import net.wanji.common.framework.rest.JsonViewObject; import net.wanji.common.framework.rest.JsonViewObject;
import net.wanji.databus.dao.entity.*; import net.wanji.databus.dao.entity.*;
import net.wanji.databus.dao.mapper.BaseCrossLightsMapper; import net.wanji.databus.dao.mapper.*;
import net.wanji.databus.dao.mapper.CrossLaneLightsMapper; import net.wanji.databus.dto.RunningPlanDTO;
import net.wanji.databus.dao.mapper.CrossPhaseLightsMapper;
import net.wanji.databus.dao.mapper.CrossPlanMapper;
import net.wanji.databus.po.BaseCrossLightsPO; import net.wanji.databus.po.BaseCrossLightsPO;
import net.wanji.databus.vo.*; import net.wanji.databus.vo.*;
import net.wanji.feign.service.UtcFeignClients; import net.wanji.feign.service.UtcFeignClients;
import net.wanji.web.dto.*; import net.wanji.web.dto.*;
import net.wanji.web.mapper.scheme.*; import net.wanji.web.mapper.scheme.CrossSchedulesPlanMapper;
import net.wanji.web.po.scheme.CrossSchedulesPO; import net.wanji.databus.dao.entity.BaseCrossSchedulesPO;
import net.wanji.web.po.scheme.CrossSchedulesPlanPO; import net.wanji.web.po.scheme.CrossSchedulesPlanPO;
import net.wanji.web.service.FeignProxyService; import net.wanji.web.service.FeignProxyService;
import net.wanji.web.service.PlanSendService; import net.wanji.web.service.PlanSendService;
...@@ -43,15 +41,15 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -43,15 +41,15 @@ public class PlanSendServiceImpl implements PlanSendService {
private final UtcFeignClients utcFeignClients; private final UtcFeignClients utcFeignClients;
private final FeignProxyService feignProxyService; private final FeignProxyService feignProxyService;
private final CrossSchedulesPlanMapper crossSchedulesPlanMapper; private final CrossSchedulesPlanMapper crossSchedulesPlanMapper;
private final CrossPlanMapper crossPlanMapper; private final BaseCrossPlanMapper baseCrossPlanMapper;
private final BaseCrossSchemeMapper baseCrossSchemeMapper; private final BaseCrossSchemeMapper baseCrossSchemeMapper;
private final BaseCrossPhaseMapper baseCrossPhaseMapper; private final BaseCrossPhaseMapper baseCrossPhaseMapper;
private final BaseCrossLightsMapper baseCrossLightsMapper; private final BaseCrossLightsMapper baseCrossLightsMapper;
private final CrossPhaseLightsMapper crossPhaseLightsMapper; private final BaseCrossPhaseLightsMapper baseCrossPhaseLightsMapper;
private final RunningPlanServiceImpl runningPlanServiceImpl; private final RunningPlanServiceImpl runningPlanServiceImpl;
private final SchemeConfigServiceImpl schemeConfigServiceImpl; private final SchemeConfigServiceImpl schemeConfigServiceImpl;
private final BaseCrossSchedulesMapper baseCrossSchedulesMapper; private final BaseCrossSchedulesMapper baseCrossSchedulesMapper;
private final CrossLaneLightsMapper crossLaneLightsMapper; private final BaseCrossLaneLightsMapper baseCrossLaneLightsMapper;
private final BaseCrossSectionMapper baseCrossSectionMapper; private final BaseCrossSectionMapper baseCrossSectionMapper;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
...@@ -60,23 +58,23 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -60,23 +58,23 @@ public class PlanSendServiceImpl implements PlanSendService {
private Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create(); private Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
public PlanSendServiceImpl(@Qualifier("net.wanji.feign.service.UtcFeignClients") UtcFeignClients utcFeignClients, public PlanSendServiceImpl(@Qualifier("net.wanji.feign.service.UtcFeignClients") UtcFeignClients utcFeignClients,
CrossSchedulesPlanMapper crossSchedulesPlanMapper, CrossPlanMapper crossPlanMapper, CrossSchedulesPlanMapper crossSchedulesPlanMapper, BaseCrossPlanMapper baseCrossPlanMapper,
BaseCrossSchemeMapper baseCrossSchemeMapper, BaseCrossPhaseMapper baseCrossPhaseMapper, BaseCrossSchemeMapper baseCrossSchemeMapper, BaseCrossPhaseMapper baseCrossPhaseMapper,
BaseCrossLightsMapper baseCrossLightsMapper, CrossPhaseLightsMapper crossPhaseLightsMapper, BaseCrossLightsMapper baseCrossLightsMapper, BaseCrossPhaseLightsMapper baseCrossPhaseLightsMapper,
RunningPlanServiceImpl runningPlanServiceImpl, SchemeConfigServiceImpl schemeConfigServiceImpl, RunningPlanServiceImpl runningPlanServiceImpl, SchemeConfigServiceImpl schemeConfigServiceImpl,
BaseCrossSchedulesMapper baseCrossSchedulesMapper, CrossLaneLightsMapper crossLaneLightsMapper, BaseCrossSchedulesMapper baseCrossSchedulesMapper, BaseCrossLaneLightsMapper baseCrossLaneLightsMapper,
BaseCrossSectionMapper baseCrossSectionMapper, FeignProxyService feignProxyService) { BaseCrossSectionMapper baseCrossSectionMapper, FeignProxyService feignProxyService) {
this.utcFeignClients = utcFeignClients; this.utcFeignClients = utcFeignClients;
this.crossSchedulesPlanMapper = crossSchedulesPlanMapper; this.crossSchedulesPlanMapper = crossSchedulesPlanMapper;
this.crossPlanMapper = crossPlanMapper; this.baseCrossPlanMapper = baseCrossPlanMapper;
this.baseCrossSchemeMapper = baseCrossSchemeMapper; this.baseCrossSchemeMapper = baseCrossSchemeMapper;
this.baseCrossPhaseMapper = baseCrossPhaseMapper; this.baseCrossPhaseMapper = baseCrossPhaseMapper;
this.baseCrossLightsMapper = baseCrossLightsMapper; this.baseCrossLightsMapper = baseCrossLightsMapper;
this.crossPhaseLightsMapper = crossPhaseLightsMapper; this.baseCrossPhaseLightsMapper = baseCrossPhaseLightsMapper;
this.runningPlanServiceImpl = runningPlanServiceImpl; this.runningPlanServiceImpl = runningPlanServiceImpl;
this.schemeConfigServiceImpl = schemeConfigServiceImpl; this.schemeConfigServiceImpl = schemeConfigServiceImpl;
this.baseCrossSchedulesMapper = baseCrossSchedulesMapper; this.baseCrossSchedulesMapper = baseCrossSchedulesMapper;
this.crossLaneLightsMapper = crossLaneLightsMapper; this.baseCrossLaneLightsMapper = baseCrossLaneLightsMapper;
this.baseCrossSectionMapper = baseCrossSectionMapper; this.baseCrossSectionMapper = baseCrossSectionMapper;
this.feignProxyService = feignProxyService; this.feignProxyService = feignProxyService;
} }
...@@ -109,7 +107,7 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -109,7 +107,7 @@ public class PlanSendServiceImpl implements PlanSendService {
List<CrossPhasePO> crossPhasePOS = baseCrossPhaseMapper.listCrossPhasePO(crossPhasePO); List<CrossPhasePO> crossPhasePOS = baseCrossPhaseMapper.listCrossPhasePO(crossPhasePO);
CrossPhaseLightsPO crossPhaseLightsPO = new CrossPhaseLightsPO(); CrossPhaseLightsPO crossPhaseLightsPO = new CrossPhaseLightsPO();
crossPhaseLightsPO.setCrossId(crossId); crossPhaseLightsPO.setCrossId(crossId);
List<CrossPhaseLightsPO> crossPhaseLightsPOS = crossPhaseLightsMapper.selectByEntity(crossPhaseLightsPO); List<CrossPhaseLightsPO> crossPhaseLightsPOS = baseCrossPhaseLightsMapper.listCrossPhaseLightsPO(crossPhaseLightsPO);
BaseCrossLightsPO crossLightsPO = new BaseCrossLightsPO(); BaseCrossLightsPO crossLightsPO = new BaseCrossLightsPO();
crossLightsPO.setCrossId(crossId); crossLightsPO.setCrossId(crossId);
List<BaseCrossLightsPO> crossLightsPOS = baseCrossLightsMapper.listCrossLightsPO(crossLightsPO); List<BaseCrossLightsPO> crossLightsPOS = baseCrossLightsMapper.listCrossLightsPO(crossLightsPO);
...@@ -179,7 +177,7 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -179,7 +177,7 @@ public class PlanSendServiceImpl implements PlanSendService {
List<CrossSchedulesPlanPO> crossSchedulesPlanPOList = List<CrossSchedulesPlanPO> crossSchedulesPlanPOList =
crossSchedulesPlanMapper.selectByCrossIdAndSchedulesId(crossId, scheduleId); crossSchedulesPlanMapper.selectByCrossIdAndSchedulesId(crossId, scheduleId);
Integer planId = crossSchedulesPlanPOList.get(0).getPlanId(); Integer planId = crossSchedulesPlanPOList.get(0).getPlanId();
CrossPlanPO crossPlanPO = crossPlanMapper.selectById(planId); CrossPlanPO crossPlanPO = baseCrossPlanMapper.selectById(planId);
CrossSectionPO crossSectionPO = new CrossSectionPO(); CrossSectionPO crossSectionPO = new CrossSectionPO();
crossSectionPO.setCrossId(crossId); crossSectionPO.setCrossId(crossId);
...@@ -187,9 +185,9 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -187,9 +185,9 @@ public class PlanSendServiceImpl implements PlanSendService {
List<CrossSectionPO> crossSectionPOS = baseCrossSectionMapper.listCrossSectionPO(crossSectionPO); List<CrossSectionPO> crossSectionPOS = baseCrossSectionMapper.listCrossSectionPO(crossSectionPO);
List<PlanSendVO.Plan.Section> sectionList = new ArrayList<>(crossSectionPOS.size()); List<PlanSendVO.Plan.Section> sectionList = new ArrayList<>(crossSectionPOS.size());
for (CrossSectionPO sectionPO : crossSectionPOS) { for (CrossSectionPO sectionPO : crossSectionPOS) {
Integer schemeId = sectionPO.getScemeId(); Integer schemeId = sectionPO.getSchemeId();
CrossSchemePO crossSchemePO = baseCrossSchemeMapper.selectById(schemeId); BaseCrossSchemePO baseCrossSchemePO = baseCrossSchemeMapper.selectById(schemeId);
String patternNo = crossSchemePO.getSchemeNo(); String patternNo = baseCrossSchemePO.getSchemeNo();
PlanSendVO.Plan.Section section = new PlanSendVO.Plan.Section(); PlanSendVO.Plan.Section section = new PlanSendVO.Plan.Section();
section.setSectionNo(sectionPO.getSectionNo()); section.setSectionNo(sectionPO.getSectionNo());
section.setPatternNo(patternNo); section.setPatternNo(patternNo);
...@@ -370,13 +368,13 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -370,13 +368,13 @@ public class PlanSendServiceImpl implements PlanSendService {
if (ObjectUtil.isEmpty(schemePhaseLightsVO)) { if (ObjectUtil.isEmpty(schemePhaseLightsVO)) {
return jsonViewObject.fail("信号机方案对象转换结果为空,未更新数据库"); return jsonViewObject.fail("信号机方案对象转换结果为空,未更新数据库");
} }
List<CrossSchemePO> crossSchemeList = schemePhaseLightsVO.getCrossSchemeList(); List<BaseCrossSchemePO> crossSchemeList = schemePhaseLightsVO.getCrossSchemeList();
baseCrossSchemeMapper.deleteByCrossId(crossId); baseCrossSchemeMapper.deleteByCrossId(crossId);
// 保存旧方案ID // 保存旧方案ID
List<Integer> oldSchemeIds = crossSchemeList.stream().map(CrossSchemePO::getId).collect(Collectors.toList()); List<Integer> oldSchemeIds = crossSchemeList.stream().map(BaseCrossSchemePO::getId).collect(Collectors.toList());
// 保存新方案ID // 保存新方案ID
baseCrossSchemeMapper.insertBatch(crossSchemeList); baseCrossSchemeMapper.insertBatch(crossSchemeList);
List<Integer> newSchemeIds = crossSchemeList.stream().map(CrossSchemePO::getId).collect(Collectors.toList()); List<Integer> newSchemeIds = crossSchemeList.stream().map(BaseCrossSchemePO::getId).collect(Collectors.toList());
// 生成新旧方案ID映射 // 生成新旧方案ID映射
Map<Integer, Integer> oldNewSchemeId = new HashMap<>(); Map<Integer, Integer> oldNewSchemeId = new HashMap<>();
for (int i = 0; i < oldSchemeIds.size(); i++) { for (int i = 0; i < oldSchemeIds.size(); i++) {
...@@ -400,8 +398,8 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -400,8 +398,8 @@ public class PlanSendServiceImpl implements PlanSendService {
changeLightsType(crossLightsSet); changeLightsType(crossLightsSet);
baseCrossLightsMapper.insertBatch(crossLightsSet); baseCrossLightsMapper.insertBatch(crossLightsSet);
crossPhaseLightsMapper.deleteByCrossId(crossId); baseCrossPhaseLightsMapper.deleteByCrossId(crossId);
crossLaneLightsMapper.deleteByCrossId(crossId); baseCrossLaneLightsMapper.deleteByCrossId(crossId);
} }
return jsonViewObject.success(); return jsonViewObject.success();
} }
...@@ -558,13 +556,13 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -558,13 +556,13 @@ public class PlanSendServiceImpl implements PlanSendService {
private List<SchemeSendVO.Pattern> buildPatternList(String crossId, Integer schemeId) { private List<SchemeSendVO.Pattern> buildPatternList(String crossId, Integer schemeId) {
List<SchemeSendVO.Pattern> patternList = new ArrayList<>(); List<SchemeSendVO.Pattern> patternList = new ArrayList<>();
CrossSchemePO crossSchemePO = baseCrossSchemeMapper.selectById(schemeId); BaseCrossSchemePO baseCrossSchemePO = baseCrossSchemeMapper.selectById(schemeId);
SchemeSendVO.Pattern pattern = new SchemeSendVO.Pattern(); SchemeSendVO.Pattern pattern = new SchemeSendVO.Pattern();
pattern.setPatternNo(crossSchemePO.getSchemeNo()); pattern.setPatternNo(baseCrossSchemePO.getSchemeNo());
pattern.setPatternName(crossSchemePO.getName()); pattern.setPatternName(baseCrossSchemePO.getName());
pattern.setCycle(crossSchemePO.getCycle().toString()); pattern.setCycle(baseCrossSchemePO.getCycle().toString());
pattern.setCoordPhase(crossSchemePO.getCoordPhase().toString()); pattern.setCoordPhase(baseCrossSchemePO.getCoordPhase().toString());
pattern.setOffset(crossSchemePO.getOffset().toString()); pattern.setOffset(baseCrossSchemePO.getOffset().toString());
// 构造环列表 // 构造环列表
List<SchemeSendVO.Pattern.Ring> rings = buildRings(crossId, schemeId); List<SchemeSendVO.Pattern.Ring> rings = buildRings(crossId, schemeId);
pattern.setRings(rings); pattern.setRings(rings);
...@@ -639,8 +637,8 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -639,8 +637,8 @@ public class PlanSendServiceImpl implements PlanSendService {
} }
schedule.setWeeks(weeks); schedule.setWeeks(weeks);
schedule.setSpecialDays(specialDays); schedule.setSpecialDays(specialDays);
CrossSchedulesPO crossSchedulesPO = baseCrossSchedulesMapper.selectById(scheduleId); BaseCrossSchedulesPO baseCrossSchedulesPO = baseCrossSchedulesMapper.selectById(scheduleId);
schedule.setScheduleNo(crossSchedulesPO.getScheduleNo()); schedule.setScheduleNo(baseCrossSchedulesPO.getScheduleNo());
schedules.add(schedule); schedules.add(schedule);
return schedules; return schedules;
} }
...@@ -663,7 +661,7 @@ public class PlanSendServiceImpl implements PlanSendService { ...@@ -663,7 +661,7 @@ public class PlanSendServiceImpl implements PlanSendService {
} }
private String getPlanNo(Integer planId) { private String getPlanNo(Integer planId) {
CrossPlanPO crossPlanPO = crossPlanMapper.selectById(planId); CrossPlanPO crossPlanPO = baseCrossPlanMapper.selectById(planId);
return crossPlanPO.getPlanNo(); return crossPlanPO.getPlanNo();
} }
} }
package net.wanji.web.service.scheme; package net.wanji.web.service.scheme;
import net.wanji.common.dto.CrossIdDTO; import net.wanji.common.dto.CrossIdDTO;
import net.wanji.web.dto.RunningPlanDTO; import net.wanji.databus.dto.RunningPlanDTO;
import java.text.ParseException; import java.text.ParseException;
......
...@@ -4,10 +4,7 @@ import cn.hutool.core.collection.CollectionUtil; ...@@ -4,10 +4,7 @@ import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import net.wanji.common.dto.CrossIdDTO; import net.wanji.common.dto.CrossIdDTO;
import net.wanji.common.enums.LightsAddressEnum; import net.wanji.common.enums.LightsAddressEnum;
import net.wanji.databus.dao.mapper.BaseCrossLightsMapper; import net.wanji.databus.dao.mapper.*;
import net.wanji.databus.dao.mapper.CrossLaneLightsMapper;
import net.wanji.databus.dao.mapper.CrossPhaseLightsMapper;
import net.wanji.databus.dao.mapper.LaneInfoMapper;
import net.wanji.databus.po.BaseCrossLightsPO; import net.wanji.databus.po.BaseCrossLightsPO;
import net.wanji.databus.po.CrossLaneLightsPO; import net.wanji.databus.po.CrossLaneLightsPO;
import net.wanji.databus.po.LaneInfoPO; import net.wanji.databus.po.LaneInfoPO;
...@@ -36,7 +33,7 @@ import java.util.stream.Collectors; ...@@ -36,7 +33,7 @@ import java.util.stream.Collectors;
public class CrossConfigServiceImpl implements CrossConfigService { public class CrossConfigServiceImpl implements CrossConfigService {
private final CrossDirInfoMapper crossDirInfoMapper; private final CrossDirInfoMapper crossDirInfoMapper;
private final LaneInfoMapper laneInfoMapper; private final LaneInfoMapper laneInfoMapper;
private final CrossLaneLightsMapper crossLaneLightsMapper; private final BaseCrossLaneLightsMapper baseCrossLaneLightsMapper;
private final LaneSegmentMapper laneSegmentMapper; private final LaneSegmentMapper laneSegmentMapper;
private final BaseCrossLightsMapper baseCrossLightsMapper; private final BaseCrossLightsMapper baseCrossLightsMapper;
...@@ -59,18 +56,18 @@ public class CrossConfigServiceImpl implements CrossConfigService { ...@@ -59,18 +56,18 @@ public class CrossConfigServiceImpl implements CrossConfigService {
MOTOR_VEH_MAP.put(14, 6); MOTOR_VEH_MAP.put(14, 6);
} }
private final CrossPhaseLightsMapper crossPhaseLightsMapper; private final BaseCrossPhaseLightsMapper baseCrossPhaseLightsMapper;
public CrossConfigServiceImpl(CrossDirInfoMapper crossDirInfoMapper, LaneInfoMapper laneInfoMapper, public CrossConfigServiceImpl(CrossDirInfoMapper crossDirInfoMapper, LaneInfoMapper laneInfoMapper,
CrossLaneLightsMapper crossLaneLightsMapper, LaneSegmentMapper laneSegmentMapper, BaseCrossLaneLightsMapper baseCrossLaneLightsMapper, LaneSegmentMapper laneSegmentMapper,
BaseCrossLightsMapper baseCrossLightsMapper, BaseCrossLightsMapper baseCrossLightsMapper,
CrossPhaseLightsMapper crossPhaseLightsMapper) { BaseCrossPhaseLightsMapper baseCrossPhaseLightsMapper) {
this.crossDirInfoMapper = crossDirInfoMapper; this.crossDirInfoMapper = crossDirInfoMapper;
this.laneInfoMapper = laneInfoMapper; this.laneInfoMapper = laneInfoMapper;
this.crossLaneLightsMapper = crossLaneLightsMapper; this.baseCrossLaneLightsMapper = baseCrossLaneLightsMapper;
this.laneSegmentMapper = laneSegmentMapper; this.laneSegmentMapper = laneSegmentMapper;
this.baseCrossLightsMapper = baseCrossLightsMapper; this.baseCrossLightsMapper = baseCrossLightsMapper;
this.crossPhaseLightsMapper = crossPhaseLightsMapper; this.baseCrossPhaseLightsMapper = baseCrossPhaseLightsMapper;
} }
@Override @Override
...@@ -124,8 +121,8 @@ public class CrossConfigServiceImpl implements CrossConfigService { ...@@ -124,8 +121,8 @@ public class CrossConfigServiceImpl implements CrossConfigService {
crossLaneLightsPOList.add(crossLaneLightsPO); crossLaneLightsPOList.add(crossLaneLightsPO);
} }
} }
crossLaneLightsMapper.deleteByCrossId(crossId); baseCrossLaneLightsMapper.deleteByCrossId(crossId);
crossLaneLightsMapper.insertBatch(crossLaneLightsPOList); baseCrossLaneLightsMapper.insertBatch(crossLaneLightsPOList);
} }
private void handleLightsData(SaveLaneInfoDTO saveLaneInfoDTO, List<LedConfigListElement> ledConfigList, private void handleLightsData(SaveLaneInfoDTO saveLaneInfoDTO, List<LedConfigListElement> ledConfigList,
...@@ -174,7 +171,7 @@ public class CrossConfigServiceImpl implements CrossConfigService { ...@@ -174,7 +171,7 @@ public class CrossConfigServiceImpl implements CrossConfigService {
BaseCrossLightsPO oldPO = oldLightsMap.get(newNumber); BaseCrossLightsPO oldPO = oldLightsMap.get(newNumber);
if (oldPO != null) { if (oldPO != null) {
if (checkIsSame(oldPO, newPO)) { if (checkIsSame(oldPO, newPO)) {
crossPhaseLightsMapper.updateLightsId(oldPO.getId(), newPO.getId()); baseCrossPhaseLightsMapper.updateLightsId(oldPO.getId(), newPO.getId());
} }
} }
} }
...@@ -285,7 +282,7 @@ public class CrossConfigServiceImpl implements CrossConfigService { ...@@ -285,7 +282,7 @@ public class CrossConfigServiceImpl implements CrossConfigService {
List<String> laneIds = getLaneIds(laneInfoPOList); List<String> laneIds = getLaneIds(laneInfoPOList);
if (laneIds.size()!=0){ if (laneIds.size()!=0){
// 删除灯组-车道关系表数据 // 删除灯组-车道关系表数据
crossLaneLightsMapper.deleteByLaneIds(laneIds); baseCrossLaneLightsMapper.deleteByLaneIds(laneIds);
// 删除车道状态表数据 // 删除车道状态表数据
laneSegmentMapper.deleteByLaneIds(laneIds); laneSegmentMapper.deleteByLaneIds(laneIds);
} }
...@@ -389,7 +386,7 @@ public class CrossConfigServiceImpl implements CrossConfigService { ...@@ -389,7 +386,7 @@ public class CrossConfigServiceImpl implements CrossConfigService {
laneListElement.setLaneType(laneInfoPO.getCategory()); laneListElement.setLaneType(laneInfoPO.getCategory());
laneListElement.setName(laneInfoPO.getCode()); laneListElement.setName(laneInfoPO.getCode());
// 根据laneId获取灯组代码 // 根据laneId获取灯组代码
String lightsCode = crossLaneLightsMapper.selectLightsCodeByLaneId(laneId); String lightsCode = baseCrossLaneLightsMapper.selectLightsCodeByLaneId(laneId);
if (lightsCode != null) { if (lightsCode != null) {
laneListElement.setLedNum(lightsCode); laneListElement.setLedNum(lightsCode);
} }
......
...@@ -2,12 +2,16 @@ package net.wanji.web.service.scheme.impl; ...@@ -2,12 +2,16 @@ package net.wanji.web.service.scheme.impl;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import net.wanji.common.dto.CrossIdDTO; import net.wanji.common.dto.CrossIdDTO;
import net.wanji.databus.dao.entity.BaseCrossSchedulesPO;
import net.wanji.databus.dao.entity.CrossPlanPO; import net.wanji.databus.dao.entity.CrossPlanPO;
import net.wanji.databus.dao.entity.CrossSchemePO; import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import net.wanji.databus.dao.entity.CrossSectionPO; import net.wanji.databus.dao.entity.CrossSectionPO;
import net.wanji.web.dto.RunningPlanDTO; import net.wanji.databus.dao.mapper.BaseCrossPlanMapper;
import net.wanji.web.mapper.scheme.*; import net.wanji.databus.dao.mapper.BaseCrossSchedulesMapper;
import net.wanji.web.po.scheme.CrossSchedulesPO; import net.wanji.databus.dao.mapper.BaseCrossSchemeMapper;
import net.wanji.databus.dao.mapper.BaseCrossSectionMapper;
import net.wanji.databus.dto.RunningPlanDTO;
import net.wanji.web.mapper.scheme.CrossSchedulesPlanMapper;
import net.wanji.web.po.scheme.CrossSchedulesPlanPO; import net.wanji.web.po.scheme.CrossSchedulesPlanPO;
import net.wanji.web.service.scheme.RunningPlanService; import net.wanji.web.service.scheme.RunningPlanService;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
...@@ -30,16 +34,16 @@ import java.util.stream.Collectors; ...@@ -30,16 +34,16 @@ import java.util.stream.Collectors;
public class RunningPlanServiceImpl implements RunningPlanService { public class RunningPlanServiceImpl implements RunningPlanService {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
private final BaseCrossPlanMapper BaseCrossPlanMapper; private final BaseCrossPlanMapper baseCrossPlanMapper;
private final BaseCrossSchemeMapper baseCrossSchemeMapper; private final BaseCrossSchemeMapper baseCrossSchemeMapper;
private final BaseCrossSectionMapper baseCrossSectionMapper; private final BaseCrossSectionMapper baseCrossSectionMapper;
private final BaseCrossSchedulesMapper baseCrossSchedulesMapper; private final BaseCrossSchedulesMapper baseCrossSchedulesMapper;
private final CrossSchedulesPlanMapper crossSchedulesPlanMapper; private final CrossSchedulesPlanMapper crossSchedulesPlanMapper;
public RunningPlanServiceImpl(BaseCrossPlanMapper BaseCrossPlanMapper, BaseCrossSchemeMapper baseCrossSchemeMapper, public RunningPlanServiceImpl(BaseCrossPlanMapper baseCrossPlanMapper, BaseCrossSchemeMapper baseCrossSchemeMapper,
BaseCrossSectionMapper baseCrossSectionMapper, BaseCrossSchedulesMapper baseCrossSchedulesMapper, BaseCrossSectionMapper baseCrossSectionMapper, BaseCrossSchedulesMapper baseCrossSchedulesMapper,
CrossSchedulesPlanMapper crossSchedulesPlanMapper) { CrossSchedulesPlanMapper crossSchedulesPlanMapper) {
this.BaseCrossPlanMapper = BaseCrossPlanMapper; this.baseCrossPlanMapper = baseCrossPlanMapper;
this.baseCrossSchemeMapper = baseCrossSchemeMapper; this.baseCrossSchemeMapper = baseCrossSchemeMapper;
this.baseCrossSectionMapper = baseCrossSectionMapper; this.baseCrossSectionMapper = baseCrossSectionMapper;
this.baseCrossSchedulesMapper = baseCrossSchedulesMapper; this.baseCrossSchedulesMapper = baseCrossSchedulesMapper;
...@@ -51,7 +55,7 @@ public class RunningPlanServiceImpl implements RunningPlanService { ...@@ -51,7 +55,7 @@ public class RunningPlanServiceImpl implements RunningPlanService {
public void saveRunningPlan(RunningPlanDTO runningPlanDTO) throws ParseException { public void saveRunningPlan(RunningPlanDTO runningPlanDTO) throws ParseException {
String crossId = runningPlanDTO.getCrossId(); String crossId = runningPlanDTO.getCrossId();
// 清空之前计划 // 清空之前计划
BaseCrossPlanMapper.deleteByCrossId(crossId); baseCrossPlanMapper.deleteByCrossId(crossId);
baseCrossSectionMapper.deleteByCrossId(crossId); baseCrossSectionMapper.deleteByCrossId(crossId);
baseCrossSchedulesMapper.deleteByCrossId(crossId); baseCrossSchedulesMapper.deleteByCrossId(crossId);
crossSchedulesPlanMapper.deleteByCrossId(crossId); crossSchedulesPlanMapper.deleteByCrossId(crossId);
...@@ -78,16 +82,16 @@ public class RunningPlanServiceImpl implements RunningPlanService { ...@@ -78,16 +82,16 @@ public class RunningPlanServiceImpl implements RunningPlanService {
private List<RunningPlanDTO.SchedulesPlanListElement> buildSchedulesPlanList(String crossId) { private List<RunningPlanDTO.SchedulesPlanListElement> buildSchedulesPlanList(String crossId) {
List<RunningPlanDTO.SchedulesPlanListElement> schedulesPlanList = new ArrayList<>(); List<RunningPlanDTO.SchedulesPlanListElement> schedulesPlanList = new ArrayList<>();
List<CrossSchedulesPO> crossSchedulesPOList = baseCrossSchedulesMapper.selectByCrossId(crossId); List<BaseCrossSchedulesPO> baseCrossSchedulesPOList = baseCrossSchedulesMapper.selectByCrossId(crossId);
for (CrossSchedulesPO crossSchedulesPO : crossSchedulesPOList) { for (BaseCrossSchedulesPO baseCrossSchedulesPO : baseCrossSchedulesPOList) {
String scheduleNo = crossSchedulesPO.getScheduleNo(); String scheduleNo = baseCrossSchedulesPO.getScheduleNo();
String name = crossSchedulesPO.getName(); String name = baseCrossSchedulesPO.getName();
Integer crossSchedulesPOId = crossSchedulesPO.getId(); Integer crossSchedulesPOId = baseCrossSchedulesPO.getId();
RunningPlanDTO.SchedulesPlanListElement schedulesPlan = new RunningPlanDTO.SchedulesPlanListElement(); RunningPlanDTO.SchedulesPlanListElement schedulesPlan = new RunningPlanDTO.SchedulesPlanListElement();
schedulesPlan.setScheduleNo(scheduleNo); schedulesPlan.setScheduleNo(scheduleNo);
schedulesPlan.setName(name); schedulesPlan.setName(name);
schedulesPlan.setId(crossSchedulesPOId); schedulesPlan.setId(crossSchedulesPOId);
schedulesPlan.setStatus(crossSchedulesPO.getStatus()); schedulesPlan.setStatus(baseCrossSchedulesPO.getStatus());
// 构造execList // 构造execList
List<RunningPlanDTO.ExecListElement> execList = buildExecList(crossId, scheduleNo); List<RunningPlanDTO.ExecListElement> execList = buildExecList(crossId, scheduleNo);
schedulesPlan.setExecList(execList); schedulesPlan.setExecList(execList);
...@@ -99,7 +103,7 @@ public class RunningPlanServiceImpl implements RunningPlanService { ...@@ -99,7 +103,7 @@ public class RunningPlanServiceImpl implements RunningPlanService {
private List<RunningPlanDTO.ExecListElement> buildExecList(String crossId, String scheduleNo) { private List<RunningPlanDTO.ExecListElement> buildExecList(String crossId, String scheduleNo) {
List<RunningPlanDTO.ExecListElement> execList = new ArrayList<>(); List<RunningPlanDTO.ExecListElement> execList = new ArrayList<>();
// 获取调度ID // 获取调度ID
CrossSchedulesPO schedulesPO = baseCrossSchedulesMapper.selectByCrossIdAndScheduleNo(crossId, scheduleNo); BaseCrossSchedulesPO schedulesPO = baseCrossSchedulesMapper.selectByCrossIdAndScheduleNo(crossId, scheduleNo);
Integer schedulesId = schedulesPO.getId(); Integer schedulesId = schedulesPO.getId();
// 根据路口ID、调度ID和计划ID查询调度计划关系 // 根据路口ID、调度ID和计划ID查询调度计划关系
List<CrossSchedulesPlanPO> crossSchedulesPlanPOList = List<CrossSchedulesPlanPO> crossSchedulesPlanPOList =
...@@ -123,7 +127,7 @@ public class RunningPlanServiceImpl implements RunningPlanService { ...@@ -123,7 +127,7 @@ public class RunningPlanServiceImpl implements RunningPlanService {
} }
execListElement.setWeek(week); execListElement.setWeek(week);
execListElement.setSpecialDateList(specialDateList); execListElement.setSpecialDateList(specialDateList);
CrossPlanPO crossPlanPO = BaseCrossPlanMapper.selectById(planId); CrossPlanPO crossPlanPO = baseCrossPlanMapper.selectById(planId);
execListElement.setPlanName(crossPlanPO.getName()); execListElement.setPlanName(crossPlanPO.getName());
execList.add(execListElement); execList.add(execListElement);
} }
...@@ -132,9 +136,9 @@ public class RunningPlanServiceImpl implements RunningPlanService { ...@@ -132,9 +136,9 @@ public class RunningPlanServiceImpl implements RunningPlanService {
private List<RunningPlanDTO.DailyPlanListElement> buildDailyPlanList(String crossId) { private List<RunningPlanDTO.DailyPlanListElement> buildDailyPlanList(String crossId) {
List<RunningPlanDTO.DailyPlanListElement> dailyPlanList = new ArrayList<>(); List<RunningPlanDTO.DailyPlanListElement> dailyPlanList = new ArrayList<>();
dailyPlanList = BaseCrossPlanMapper.selectDailyPlanList(crossId); dailyPlanList = baseCrossPlanMapper.selectDailyPlanList(crossId);
if (CollectionUtil.isEmpty(dailyPlanList)) { if (CollectionUtil.isEmpty(dailyPlanList)) {
List<CrossPlanPO> crossPlanPOList = BaseCrossPlanMapper.selectByCrossId(crossId); List<CrossPlanPO> crossPlanPOList = baseCrossPlanMapper.selectByCrossId(crossId);
if (CollectionUtil.isNotEmpty(crossPlanPOList)) { if (CollectionUtil.isNotEmpty(crossPlanPOList)) {
for (CrossPlanPO crossPlanPO : crossPlanPOList) { for (CrossPlanPO crossPlanPO : crossPlanPOList) {
RunningPlanDTO.DailyPlanListElement dailyPlan = new RunningPlanDTO.DailyPlanListElement(); RunningPlanDTO.DailyPlanListElement dailyPlan = new RunningPlanDTO.DailyPlanListElement();
...@@ -164,19 +168,19 @@ public class RunningPlanServiceImpl implements RunningPlanService { ...@@ -164,19 +168,19 @@ public class RunningPlanServiceImpl implements RunningPlanService {
List<RunningPlanDTO.SchedulesPlanListElement> schedulesPlanList = runningPlanDTO.getSchedulesPlanList(); List<RunningPlanDTO.SchedulesPlanListElement> schedulesPlanList = runningPlanDTO.getSchedulesPlanList();
for (RunningPlanDTO.SchedulesPlanListElement schedulesPlan : schedulesPlanList) { for (RunningPlanDTO.SchedulesPlanListElement schedulesPlan : schedulesPlanList) {
// 更新调度表获取调度ID // 更新调度表获取调度ID
CrossSchedulesPO crossSchedulesPO = new CrossSchedulesPO(); BaseCrossSchedulesPO baseCrossSchedulesPO = new BaseCrossSchedulesPO();
crossSchedulesPO.setScheduleNo(schedulesPlan.getScheduleNo()); baseCrossSchedulesPO.setScheduleNo(schedulesPlan.getScheduleNo());
crossSchedulesPO.setName(schedulesPlan.getName()); baseCrossSchedulesPO.setName(schedulesPlan.getName());
crossSchedulesPO.setStatus(0); // 新增调度状态为未执行 baseCrossSchedulesPO.setStatus(0); // 新增调度状态为未执行
crossSchedulesPO.setCrossId(crossId); baseCrossSchedulesPO.setCrossId(crossId);
baseCrossSchedulesMapper.insertOne(crossSchedulesPO); baseCrossSchedulesMapper.insertOne(baseCrossSchedulesPO);
Integer crossSchedulesId = crossSchedulesPO.getId(); Integer crossSchedulesId = baseCrossSchedulesPO.getId();
// 遍历执行的日计划列表 // 遍历执行的日计划列表
List<RunningPlanDTO.ExecListElement> execList = schedulesPlan.getExecList(); List<RunningPlanDTO.ExecListElement> execList = schedulesPlan.getExecList();
for (RunningPlanDTO.ExecListElement execListElement : execList) { for (RunningPlanDTO.ExecListElement execListElement : execList) {
// 根据路口ID和计划名获取计划ID // 根据路口ID和计划名获取计划ID
String planName = execListElement.getPlanName(); String planName = execListElement.getPlanName();
CrossPlanPO crossPlanPO = BaseCrossPlanMapper.selectByCrossIdAndName(crossId, planName); CrossPlanPO crossPlanPO = baseCrossPlanMapper.selectByCrossIdAndName(crossId, planName);
if (crossPlanPO != null) { if (crossPlanPO != null) {
Integer planId = crossPlanPO.getId(); Integer planId = crossPlanPO.getId();
// 更新调度计划关系表 // 更新调度计划关系表
...@@ -231,14 +235,14 @@ public class RunningPlanServiceImpl implements RunningPlanService { ...@@ -231,14 +235,14 @@ public class RunningPlanServiceImpl implements RunningPlanService {
crossPlanPO.setPlanNo(planNo); crossPlanPO.setPlanNo(planNo);
crossPlanPO.setName(dailyPlan.getName()); crossPlanPO.setName(dailyPlan.getName());
crossPlanPO.setCrossId(crossId); crossPlanPO.setCrossId(crossId);
BaseCrossPlanMapper.insertOne(crossPlanPO); baseCrossPlanMapper.insertOne(crossPlanPO);
Integer crossPlanId = crossPlanPO.getId(); Integer crossPlanId = crossPlanPO.getId();
List<RunningPlanDTO.TimeListElement> timeList = dailyPlan.getTimeList(); List<RunningPlanDTO.TimeListElement> timeList = dailyPlan.getTimeList();
for (RunningPlanDTO.TimeListElement time : timeList) { for (RunningPlanDTO.TimeListElement time : timeList) {
// 根据路口ID和方案名获取方案ID // 根据路口ID和方案名获取方案ID
String schemeName = time.getSchemeName(); String schemeName = time.getSchemeName();
CrossSchemePO crossSchemePO = baseCrossSchemeMapper.selectByCrossIdAndSchemeName(crossId, schemeName); BaseCrossSchemePO baseCrossSchemePO = baseCrossSchemeMapper.selectByCrossIdAndSchemeName(crossId, schemeName);
Integer schemeId = crossSchemePO.getId(); Integer schemeId = baseCrossSchemePO.getId();
// 更新时段表 // 更新时段表
updateCrossSection(crossId, crossPlanId, schemeId, time); updateCrossSection(crossId, crossPlanId, schemeId, time);
} }
...@@ -259,7 +263,7 @@ public class RunningPlanServiceImpl implements RunningPlanService { ...@@ -259,7 +263,7 @@ public class RunningPlanServiceImpl implements RunningPlanService {
crossSectionPO.setCrossId(crossId); crossSectionPO.setCrossId(crossId);
crossSectionPO.setPlanId(crossPlanId); crossSectionPO.setPlanId(crossPlanId);
crossSectionPO.setControlMode(1); // todo 暂时只有定周期 crossSectionPO.setControlMode(1); // todo 暂时只有定周期
crossSectionPO.setScemeId(schemeId); crossSectionPO.setSchemeId(schemeId);
baseCrossSectionMapper.insertOne(crossSectionPO); baseCrossSectionMapper.insertOne(crossSectionPO);
} }
} }
...@@ -5,11 +5,8 @@ import cn.hutool.core.util.ObjectUtil; ...@@ -5,11 +5,8 @@ import cn.hutool.core.util.ObjectUtil;
import net.wanji.common.dto.CrossIdDTO; import net.wanji.common.dto.CrossIdDTO;
import net.wanji.databus.dao.entity.CrossPhaseLightsPO; import net.wanji.databus.dao.entity.CrossPhaseLightsPO;
import net.wanji.databus.dao.entity.CrossPhasePO; import net.wanji.databus.dao.entity.CrossPhasePO;
import net.wanji.databus.dao.entity.CrossSchemePO; import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import net.wanji.databus.dao.mapper.BaseCrossLightsMapper; import net.wanji.databus.dao.mapper.*;
import net.wanji.databus.dao.mapper.CrossLaneLightsMapper;
import net.wanji.databus.dao.mapper.CrossPhaseLightsMapper;
import net.wanji.databus.dao.mapper.LaneInfoMapper;
import net.wanji.databus.po.BaseCrossLightsPO; import net.wanji.databus.po.BaseCrossLightsPO;
import net.wanji.databus.po.CrossLaneLightsPO; import net.wanji.databus.po.CrossLaneLightsPO;
import net.wanji.databus.po.LaneInfoPO; import net.wanji.databus.po.LaneInfoPO;
...@@ -18,9 +15,7 @@ import net.wanji.web.common.exception.PhaseNoNotUniqueException; ...@@ -18,9 +15,7 @@ import net.wanji.web.common.exception.PhaseNoNotUniqueException;
import net.wanji.web.dto.LaneIdDTO; import net.wanji.web.dto.LaneIdDTO;
import net.wanji.web.dto.LightIdDTO; import net.wanji.web.dto.LightIdDTO;
import net.wanji.web.dto.SaveSchemeConfigDTO; import net.wanji.web.dto.SaveSchemeConfigDTO;
import net.wanji.web.mapper.scheme.BaseCrossPhaseMapper;
import net.wanji.web.mapper.scheme.CrossAccompanyPhaseMapper; import net.wanji.web.mapper.scheme.CrossAccompanyPhaseMapper;
import net.wanji.web.mapper.scheme.BaseCrossSchemeMapper;
import net.wanji.web.po.scheme.CrossAccompanyPhasePO; import net.wanji.web.po.scheme.CrossAccompanyPhasePO;
import net.wanji.web.service.scheme.SchemeConfigService; import net.wanji.web.service.scheme.SchemeConfigService;
import net.wanji.web.vo.scheme.LaneIdsVO; import net.wanji.web.vo.scheme.LaneIdsVO;
...@@ -40,19 +35,19 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -40,19 +35,19 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
private final BaseCrossSchemeMapper baseCrossSchemeMapper; private final BaseCrossSchemeMapper baseCrossSchemeMapper;
private final BaseCrossPhaseMapper crossPhaseMapper; private final BaseCrossPhaseMapper crossPhaseMapper;
private final LaneInfoMapper laneInfoMapper; private final LaneInfoMapper laneInfoMapper;
private final CrossLaneLightsMapper crossLaneLightsMapper; private final BaseCrossLaneLightsMapper baseCrossLaneLightsMapper;
private final CrossPhaseLightsMapper crossPhaseLightsMapper; private final BaseCrossPhaseLightsMapper baseCrossPhaseLightsMapper;
private final BaseCrossLightsMapper baseCrossLightsMapper; private final BaseCrossLightsMapper baseCrossLightsMapper;
private final CrossAccompanyPhaseMapper crossAccompanyPhaseMapper; private final CrossAccompanyPhaseMapper crossAccompanyPhaseMapper;
public SchemeConfigServiceImpl(BaseCrossSchemeMapper baseCrossSchemeMapper, BaseCrossPhaseMapper baseCrossPhaseMapper, public SchemeConfigServiceImpl(BaseCrossSchemeMapper baseCrossSchemeMapper, BaseCrossPhaseMapper baseCrossPhaseMapper,
LaneInfoMapper laneInfoMapper, CrossLaneLightsMapper crossLaneLightsMapper, LaneInfoMapper laneInfoMapper, BaseCrossLaneLightsMapper baseCrossLaneLightsMapper,
CrossPhaseLightsMapper crossPhaseLightsMapper, BaseCrossLightsMapper baseCrossLightsMapper, CrossAccompanyPhaseMapper crossAccompanyPhaseMapper) { BaseCrossPhaseLightsMapper baseCrossPhaseLightsMapper, BaseCrossLightsMapper baseCrossLightsMapper, CrossAccompanyPhaseMapper crossAccompanyPhaseMapper) {
this.baseCrossSchemeMapper = baseCrossSchemeMapper; this.baseCrossSchemeMapper = baseCrossSchemeMapper;
this.crossPhaseMapper = baseCrossPhaseMapper; this.crossPhaseMapper = baseCrossPhaseMapper;
this.laneInfoMapper = laneInfoMapper; this.laneInfoMapper = laneInfoMapper;
this.crossLaneLightsMapper = crossLaneLightsMapper; this.baseCrossLaneLightsMapper = baseCrossLaneLightsMapper;
this.crossPhaseLightsMapper = crossPhaseLightsMapper; this.baseCrossPhaseLightsMapper = baseCrossPhaseLightsMapper;
this.baseCrossLightsMapper = baseCrossLightsMapper; this.baseCrossLightsMapper = baseCrossLightsMapper;
this.crossAccompanyPhaseMapper = crossAccompanyPhaseMapper; this.crossAccompanyPhaseMapper = crossAccompanyPhaseMapper;
} }
...@@ -72,7 +67,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -72,7 +67,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
public LightIdVO getLightByLane(LaneIdDTO laneIdDTO) { public LightIdVO getLightByLane(LaneIdDTO laneIdDTO) {
String crossId = laneIdDTO.getCrossId(); String crossId = laneIdDTO.getCrossId();
String laneId = laneIdDTO.getLaneId(); String laneId = laneIdDTO.getLaneId();
Integer lightId = crossLaneLightsMapper.selectLightsIdByLaneId(crossId, laneId); Integer lightId = baseCrossLaneLightsMapper.selectLightsIdByLaneId(crossId, laneId);
LightIdVO lightIdVO = new LightIdVO(); LightIdVO lightIdVO = new LightIdVO();
lightIdVO.setCrossId(crossId); lightIdVO.setCrossId(crossId);
lightIdVO.setLightId(lightId); lightIdVO.setLightId(lightId);
...@@ -96,7 +91,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -96,7 +91,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
laneIdsVO.setPedType(type); laneIdsVO.setPedType(type);
// 构建车道信息 // 构建车道信息
List<CrossLaneLightsPO> crossLaneLightsPOList = crossLaneLightsMapper.selectLanesByLightId(crossId, lightId); List<CrossLaneLightsPO> crossLaneLightsPOList = baseCrossLaneLightsMapper.selectLanesByLightId(crossId, lightId);
List<String> laneIds = crossLaneLightsPOList.stream() List<String> laneIds = crossLaneLightsPOList.stream()
.map(CrossLaneLightsPO::getLaneId) .map(CrossLaneLightsPO::getLaneId)
.collect(Collectors.toList()); .collect(Collectors.toList());
...@@ -133,23 +128,23 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -133,23 +128,23 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
*/ */
private List<SaveSchemeConfigDTO.PhaseScheme> buildPhaseSchemeList(String crossId) { private List<SaveSchemeConfigDTO.PhaseScheme> buildPhaseSchemeList(String crossId) {
List<SaveSchemeConfigDTO.PhaseScheme> phaseSchemeList = new ArrayList<>(); List<SaveSchemeConfigDTO.PhaseScheme> phaseSchemeList = new ArrayList<>();
List<CrossSchemePO> crossSchemePOList = baseCrossSchemeMapper.selectByCrossId(crossId); List<BaseCrossSchemePO> baseCrossSchemePOList = baseCrossSchemeMapper.selectByCrossId(crossId);
for (CrossSchemePO crossSchemePO : crossSchemePOList) { for (BaseCrossSchemePO baseCrossSchemePO : baseCrossSchemePOList) {
SaveSchemeConfigDTO.PhaseScheme phaseScheme = new SaveSchemeConfigDTO.PhaseScheme(); SaveSchemeConfigDTO.PhaseScheme phaseScheme = new SaveSchemeConfigDTO.PhaseScheme();
phaseScheme.setSchemeNo(crossSchemePO.getSchemeNo()); phaseScheme.setSchemeNo(baseCrossSchemePO.getSchemeNo());
phaseScheme.setName(crossSchemePO.getName()); phaseScheme.setName(baseCrossSchemePO.getName());
phaseScheme.setSchemeId(crossSchemePO.getId()); phaseScheme.setSchemeId(baseCrossSchemePO.getId());
// 获取协调相位号 // 获取协调相位号
Integer coordPhaseId = crossSchemePO.getCoordPhase(); Integer coordPhaseId = baseCrossSchemePO.getCoordPhase();
if (coordPhaseId != null) { if (coordPhaseId != null) {
CrossPhasePO crossPhasePO = crossPhaseMapper.selectById(coordPhaseId); CrossPhasePO crossPhasePO = crossPhaseMapper.selectById(coordPhaseId);
if (crossPhasePO != null) { if (crossPhasePO != null) {
phaseScheme.setCoordPhaseNo(crossPhasePO.getPhaseNo()); phaseScheme.setCoordPhaseNo(crossPhasePO.getPhaseNo());
} }
} }
phaseScheme.setCycle(crossSchemePO.getCycle()); phaseScheme.setCycle(baseCrossSchemePO.getCycle());
phaseScheme.setOffset(crossSchemePO.getOffset()); phaseScheme.setOffset(baseCrossSchemePO.getOffset());
phaseScheme.setStatus(crossSchemePO.getStatus()); phaseScheme.setStatus(baseCrossSchemePO.getStatus());
// 构造环列表 // 构造环列表
String schemeNo = phaseScheme.getSchemeNo(); String schemeNo = phaseScheme.getSchemeNo();
Integer schemeId = baseCrossSchemeMapper.selectIdByCrossIdAndSchemeNo(crossId, schemeNo); Integer schemeId = baseCrossSchemeMapper.selectIdByCrossIdAndSchemeNo(crossId, schemeNo);
...@@ -342,7 +337,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -342,7 +337,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
List<SaveSchemeConfigDTO.DirListElement> dirList = new ArrayList<>(); List<SaveSchemeConfigDTO.DirListElement> dirList = new ArrayList<>();
CrossPhaseLightsPO entity = new CrossPhaseLightsPO(); CrossPhaseLightsPO entity = new CrossPhaseLightsPO();
entity.setPhaseId(phaseId); entity.setPhaseId(phaseId);
List<CrossPhaseLightsPO> crossPhaseLightsPOList = crossPhaseLightsMapper.selectByEntity(entity); List<CrossPhaseLightsPO> crossPhaseLightsPOList = baseCrossPhaseLightsMapper.listCrossPhaseLightsPO(entity);
Set<Integer> dirSet = new HashSet<>(); Set<Integer> dirSet = new HashSet<>();
for (CrossPhaseLightsPO crossPhaseLightsPO : crossPhaseLightsPOList) { for (CrossPhaseLightsPO crossPhaseLightsPO : crossPhaseLightsPOList) {
Integer lightsId = crossPhaseLightsPO.getLightsId(); Integer lightsId = crossPhaseLightsPO.getLightsId();
...@@ -390,7 +385,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -390,7 +385,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
List<SaveSchemeConfigDTO.LaneListElement> laneList = new ArrayList<>(); List<SaveSchemeConfigDTO.LaneListElement> laneList = new ArrayList<>();
CrossPhaseLightsPO entity = new CrossPhaseLightsPO(); CrossPhaseLightsPO entity = new CrossPhaseLightsPO();
entity.setPhaseId(phaseId); entity.setPhaseId(phaseId);
List<CrossPhaseLightsPO> crossPhaseLightsPOList = crossPhaseLightsMapper.selectByEntity(entity); List<CrossPhaseLightsPO> crossPhaseLightsPOList = baseCrossPhaseLightsMapper.listCrossPhaseLightsPO(entity);
List<Integer> lightsIds = crossPhaseLightsPOList.stream() List<Integer> lightsIds = crossPhaseLightsPOList.stream()
.map(CrossPhaseLightsPO::getLightsId) .map(CrossPhaseLightsPO::getLightsId)
.collect(Collectors.toList()); .collect(Collectors.toList());
...@@ -399,7 +394,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -399,7 +394,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
Integer type = crossLightsPO.getType(); Integer type = crossLightsPO.getType();
if (type < 20 || type >= 30) { // 非行人灯 if (type < 20 || type >= 30) { // 非行人灯
Integer lightsId = crossLightsPO.getId(); Integer lightsId = crossLightsPO.getId();
List<CrossLaneLightsPO> crossLaneLightsPOList = crossLaneLightsMapper.selectByLightsId(lightsId); List<CrossLaneLightsPO> crossLaneLightsPOList = baseCrossLaneLightsMapper.selectByLightsId(lightsId);
List<String> laneIds = crossLaneLightsPOList.stream() List<String> laneIds = crossLaneLightsPOList.stream()
.map(CrossLaneLightsPO::getLaneId) .map(CrossLaneLightsPO::getLaneId)
.collect(Collectors.toList()); .collect(Collectors.toList());
...@@ -429,7 +424,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -429,7 +424,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
entity.setPhaseId(phaseId); entity.setPhaseId(phaseId);
entity.setCrossId(crossId); entity.setCrossId(crossId);
entity.setLightsId(lightsId); entity.setLightsId(lightsId);
List<CrossPhaseLightsPO> crossPhaseLightsPOList = crossPhaseLightsMapper.selectByEntity(entity); List<CrossPhaseLightsPO> crossPhaseLightsPOList = baseCrossPhaseLightsMapper.listCrossPhaseLightsPO(entity);
return !CollectionUtil.isEmpty(crossPhaseLightsPOList); return !CollectionUtil.isEmpty(crossPhaseLightsPOList);
} }
...@@ -459,7 +454,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -459,7 +454,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
private void updateCrossPhase(SaveSchemeConfigDTO saveSchemeConfigDTO) { private void updateCrossPhase(SaveSchemeConfigDTO saveSchemeConfigDTO) {
String crossId = saveSchemeConfigDTO.getCrossId(); String crossId = saveSchemeConfigDTO.getCrossId();
crossPhaseMapper.deleteByCrossId(crossId); crossPhaseMapper.deleteByCrossId(crossId);
crossPhaseLightsMapper.deleteByCrossId(crossId); baseCrossPhaseLightsMapper.deleteByCrossId(crossId);
crossAccompanyPhaseMapper.deleteByCrossId(crossId); crossAccompanyPhaseMapper.deleteByCrossId(crossId);
List<SaveSchemeConfigDTO.PhaseScheme> phaseSchemeList = saveSchemeConfigDTO.getPhaseSchemeList(); List<SaveSchemeConfigDTO.PhaseScheme> phaseSchemeList = saveSchemeConfigDTO.getPhaseSchemeList();
...@@ -669,7 +664,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -669,7 +664,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
Integer turn = laneListElement.getDirection(); Integer turn = laneListElement.getDirection();
// 根据车道获得灯组ID // 根据车道获得灯组ID
String laneId = laneInfoMapper.selectIdByCrossIdDirTurn(crossId, dir, turn, category); String laneId = laneInfoMapper.selectIdByCrossIdDirTurn(crossId, dir, turn, category);
Integer lightsId = crossLaneLightsMapper.selectLightsIdByLaneId(crossId, laneId); Integer lightsId = baseCrossLaneLightsMapper.selectLightsIdByLaneId(crossId, laneId);
if (lightsId != null) { if (lightsId != null) {
crossPhaseLightsPO.setLightsId(lightsId); crossPhaseLightsPO.setLightsId(lightsId);
} }
...@@ -678,7 +673,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -678,7 +673,7 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
crossPhaseLightsPOSet.add(crossPhaseLightsPO); crossPhaseLightsPOSet.add(crossPhaseLightsPO);
} }
} }
crossPhaseLightsMapper.insertBatch(crossPhaseLightsPOSet); baseCrossPhaseLightsMapper.insertBatch(crossPhaseLightsPOSet);
} }
private void updateCrossScheme(SaveSchemeConfigDTO saveSchemeConfigDTO) { private void updateCrossScheme(SaveSchemeConfigDTO saveSchemeConfigDTO) {
...@@ -699,29 +694,29 @@ public class SchemeConfigServiceImpl implements SchemeConfigService { ...@@ -699,29 +694,29 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
} }
for (SaveSchemeConfigDTO.PhaseScheme phaseScheme : phaseSchemeList) { for (SaveSchemeConfigDTO.PhaseScheme phaseScheme : phaseSchemeList) {
// 构造PO // 构造PO
CrossSchemePO crossSchemePO = new CrossSchemePO(); BaseCrossSchemePO baseCrossSchemePO = new BaseCrossSchemePO();
String schemeNo = phaseScheme.getSchemeNo();// 方案号 String schemeNo = phaseScheme.getSchemeNo();// 方案号
crossSchemePO.setSchemeNo(schemeNo); baseCrossSchemePO.setSchemeNo(schemeNo);
String name = phaseScheme.getName(); // 方案名称 String name = phaseScheme.getName(); // 方案名称
crossSchemePO.setName(name); baseCrossSchemePO.setName(name);
crossSchemePO.setCrossId(crossId); baseCrossSchemePO.setCrossId(crossId);
crossSchemePO.setCycle(phaseScheme.getCycle()); baseCrossSchemePO.setCycle(phaseScheme.getCycle());
crossSchemePO.setOffset(phaseScheme.getOffset()); baseCrossSchemePO.setOffset(phaseScheme.getOffset());
Integer offset = phaseScheme.getOffset(); Integer offset = phaseScheme.getOffset();
if (offset != null) { if (offset != null) {
crossSchemePO.setOffset(offset); baseCrossSchemePO.setOffset(offset);
} }
crossSchemePO.setSource(2); // 来自平台 baseCrossSchemePO.setSource(2); // 来自平台
crossSchemePO.setIsDeleted(0); baseCrossSchemePO.setIsDeleted(0);
// 新增或修改数据 // 新增或修改数据
Integer schemeId = phaseScheme.getSchemeId(); Integer schemeId = phaseScheme.getSchemeId();
if (ObjectUtil.isEmpty(schemeId)) { if (ObjectUtil.isEmpty(schemeId)) {
// 没有方案ID视为新增 // 没有方案ID视为新增
baseCrossSchemeMapper.insertOne(crossSchemePO); baseCrossSchemeMapper.insertOne(baseCrossSchemePO);
} else { } else {
// 有方案ID视为修改 // 有方案ID视为修改
crossSchemePO.setId(schemeId); baseCrossSchemePO.setId(schemeId);
baseCrossSchemeMapper.update(crossSchemePO); baseCrossSchemeMapper.update(baseCrossSchemePO);
} }
} }
} }
......
...@@ -3,14 +3,14 @@ package net.wanji.web.vo; ...@@ -3,14 +3,14 @@ package net.wanji.web.vo;
import lombok.Data; import lombok.Data;
import net.wanji.databus.dao.entity.CrossPhaseLightsPO; import net.wanji.databus.dao.entity.CrossPhaseLightsPO;
import net.wanji.databus.dao.entity.CrossPhasePO; import net.wanji.databus.dao.entity.CrossPhasePO;
import net.wanji.databus.dao.entity.CrossSchemePO; import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import net.wanji.databus.po.BaseCrossLightsPO; import net.wanji.databus.po.BaseCrossLightsPO;
import java.util.List; import java.util.List;
@Data @Data
public class SchemePhaseLightsVO { public class SchemePhaseLightsVO {
private List<CrossSchemePO> crossSchemeList; private List<BaseCrossSchemePO> crossSchemeList;
private List<CrossPhasePO> crossPhaseList; private List<CrossPhasePO> crossPhaseList;
private List<BaseCrossLightsPO> crossLightsList; private List<BaseCrossLightsPO> crossLightsList;
private List<CrossPhaseLightsPO> crossPhaseLightsPOList; private List<CrossPhaseLightsPO> crossPhaseLightsPOList;
......
<?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="net.wanji.web.mapper.scheme.BaseCrossSchemeMapper">
<!-- 通用查询映射结果 -->
<resultMap type="net.wanji.databus.dao.entity.CrossSchemePO" id="BaseResultMap">
<result property="id" column="id" />
<result property="schemeNo" column="scheme_no"/>
<result property="name" column="name"/>
<result property="crossId" column="cross_id"/>
<result property="cycle" column="cycle"/>
<result property="coordPhase" column="coord_phase"/>
<result property="offset" column="offset"/>
<result property="source" column="source"/>
<result property="isDeleted" column="is_deleted"/>
<result property="status" column="status"/>
<result property="gmtCreate" column="gmt_create"/>
<result property="gmtModified" column="gmt_modified"/>
</resultMap>
<insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
insert into t_base_cross_scheme(scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status)
values
<foreach collection="entities" item="entity" separator=",">
(#{entity.schemeNo},#{entity.name},#{entity.crossId},#{entity.cycle},#{entity.coordPhase},#{entity.offset},#{entity.source},#{entity.isDeleted},#{entity.status})
</foreach>
</insert>
<insert id="insertOne">
insert into t_base_cross_scheme(scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status)
values (#{schemeNo},#{name},#{crossId},#{cycle},#{coordPhase},#{offset},#{source},#{isDeleted},#{status})
</insert>
<update id="updateCoordPhase">
update t_base_cross_scheme
set coord_phase = #{phaseId}
where cross_id = #{crossId} and scheme_no = #{schemeNo}
</update>
<update id="update">
update t_base_cross_scheme
<set>
status = 0,
<if test="name != null and name != ''">
name = #{name},
</if>
<if test="cycle != null and cycle != ''">
cycle = #{cycle},
</if>
<if test="coordPhase != null and coordPhase != ''">
coord_phase = #{coordPhase},
</if>
<if test="offset != null and offset != ''">
offset = #{offset},
</if>
<if test="source != null and source != ''">
source = #{source},
</if>
<if test="isDeleted != null and isDeleted != ''">
is_deleted = #{isDeleted},
</if>
<if test="status != null and isDeleted != ''">
status = #{status},
</if>
</set>
where id = #{id}
</update>
<update id="resetStatus">
UPDATE t_base_cross_scheme
SET status = 0
WHERE cross_id = #{crossId}
</update>
<update id="updateStatus">
UPDATE t_base_cross_scheme
SET status = 1
WHERE id = #{schemeId}
</update>
<delete id="deleteByCrossId">
delete from t_base_cross_scheme
where cross_id = #{crossId}
</delete>
<select id="selectIdByCrossIdAndSchemeNo" resultType="java.lang.Integer">
select id from t_base_cross_scheme
where cross_id = #{crossId} and scheme_no = #{schemeNo}
</select>
<select id="selectByCrossId" resultMap="BaseResultMap">
select
id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status,gmt_create,gmt_modified
from t_base_cross_scheme
where cross_id = #{crossId}
</select>
<select id="selectIdByCrossIdAndSchemeName" resultType="java.lang.Integer">
select id from t_base_cross_scheme
where cross_id = #{crossId} and name = #{schemeName}
</select>
<select id="selectByCrossIdAndSchemeName" resultMap="BaseResultMap">
select
id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status,gmt_create,gmt_modified
from t_base_cross_scheme
where cross_id = #{crossId} and name = #{schemeName}
</select>
<select id="selectById" resultType="net.wanji.databus.dao.entity.CrossSchemePO">
select
id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status,gmt_create,gmt_modified
from t_base_cross_scheme
where id = #{id}
</select>
<select id="selectIdsByCrossId" resultType="java.lang.Integer">
SELECT id FROM t_base_cross_scheme
WHERE cross_id = #{crossId}
</select>
<delete id="deleteByIds">
DELETE FROM t_base_cross_scheme
WHERE id IN
<foreach collection="existedIds" item="id" separator="," open="(" close=")">
#{id}
</foreach>
</delete>
</mapper>
package net.wanji.opt.cache; package net.wanji.opt.cache;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.common.framework.Constants; import net.wanji.databus.dao.entity.CrossPhasePO;
import net.wanji.opt.dao.mapper.CrossPhaseMapper; import net.wanji.databus.dao.mapper.BaseCrossPhaseMapper;
import net.wanji.opt.po.base.CrossPhasePO;
import org.springframework.boot.CommandLineRunner; import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
...@@ -24,7 +23,7 @@ import java.util.stream.Collectors; ...@@ -24,7 +23,7 @@ import java.util.stream.Collectors;
public class CrossPhaseInfoCache implements CommandLineRunner { public class CrossPhaseInfoCache implements CommandLineRunner {
@Resource @Resource
CrossPhaseMapper crossPhaseMapper; BaseCrossPhaseMapper baseCrossPhaseMapper;
/** /**
* 路口相位缓存 * 路口相位缓存
...@@ -65,7 +64,7 @@ public class CrossPhaseInfoCache implements CommandLineRunner { ...@@ -65,7 +64,7 @@ public class CrossPhaseInfoCache implements CommandLineRunner {
} }
public void init() { public void init() {
List<CrossPhasePO> crossPhasePOS = crossPhaseMapper.listCrossPhase(Constants.SystemParam.NULL, Constants.SystemParam.NULL_INT); List<CrossPhasePO> crossPhasePOS = baseCrossPhaseMapper.listCrossPhasePO(new CrossPhasePO());
if (!CollectionUtils.isEmpty(crossPhasePOS)) { if (!CollectionUtils.isEmpty(crossPhasePOS)) {
crossPhaseInfoMap = crossPhasePOS.stream().collect(Collectors.groupingBy(CrossPhasePO::getCrossId)); crossPhaseInfoMap = crossPhasePOS.stream().collect(Collectors.groupingBy(CrossPhasePO::getCrossId));
} }
......
...@@ -2,8 +2,8 @@ package net.wanji.opt.cache; ...@@ -2,8 +2,8 @@ package net.wanji.opt.cache;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.common.framework.Constants; import net.wanji.common.framework.Constants;
import net.wanji.opt.dao.mapper.CrossSchemeMapper; import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import net.wanji.opt.po.base.CrossSchemePO; import net.wanji.databus.dao.mapper.BaseCrossSchemeMapper;
import org.springframework.boot.CommandLineRunner; import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
...@@ -22,18 +22,18 @@ import java.util.Map; ...@@ -22,18 +22,18 @@ import java.util.Map;
public class CrossSchemeInfoCache implements CommandLineRunner { public class CrossSchemeInfoCache implements CommandLineRunner {
@Resource @Resource
CrossSchemeMapper crossSchemeMapper; BaseCrossSchemeMapper baseCrossSchemeMapper;
/** /**
* key:crossId_id value:CrossSchemePO * key:crossId_id value:CrossSchemePO
*/ */
private static Map<String, CrossSchemePO> crossSchemeInfoMap = new HashMap<>(); private static Map<String, BaseCrossSchemePO> crossSchemeInfoMap = new HashMap<>();
/** /**
* 获取所有路口方案信息 * 获取所有路口方案信息
* @return * @return
*/ */
public static Map<String, CrossSchemePO> getCrossSchemeInfosCache() { public static Map<String, BaseCrossSchemePO> getCrossSchemeInfosCache() {
return crossSchemeInfoMap; return crossSchemeInfoMap;
} }
...@@ -42,7 +42,7 @@ public class CrossSchemeInfoCache implements CommandLineRunner { ...@@ -42,7 +42,7 @@ public class CrossSchemeInfoCache implements CommandLineRunner {
* @param key: crossId_id * @param key: crossId_id
* @return * @return
*/ */
public static CrossSchemePO geteSchemePOCache(String key) { public static BaseCrossSchemePO geteSchemePOCache(String key) {
if (!crossSchemeInfoMap.isEmpty()) { if (!crossSchemeInfoMap.isEmpty()) {
return crossSchemeInfoMap.get(key); return crossSchemeInfoMap.get(key);
} }
...@@ -65,9 +65,9 @@ public class CrossSchemeInfoCache implements CommandLineRunner { ...@@ -65,9 +65,9 @@ public class CrossSchemeInfoCache implements CommandLineRunner {
try { try {
long start = System.currentTimeMillis(); long start = System.currentTimeMillis();
List<CrossSchemePO> crossSchemePOS = crossSchemeMapper.listCrossSchemeInfo(Constants.SystemParam.NULL, Constants.SystemParam.NULL, null); List<BaseCrossSchemePO> baseCrossSchemePOS = baseCrossSchemeMapper.listCrossSchemeInfo(Constants.SystemParam.NULL, Constants.SystemParam.NULL, null);
if (!CollectionUtils.isEmpty(crossSchemePOS)) { if (!CollectionUtils.isEmpty(baseCrossSchemePOS)) {
crossSchemePOS.forEach(crossSchemePO -> { baseCrossSchemePOS.forEach(crossSchemePO -> {
String crossId = crossSchemePO.getCrossId(); String crossId = crossSchemePO.getCrossId();
Integer schemeId = crossSchemePO.getId(); Integer schemeId = crossSchemePO.getId();
String key = String.join(Constants.SystemParam.SEPARATOR_UNDER_LINE, crossId, String.valueOf(schemeId)); String key = String.join(Constants.SystemParam.SEPARATOR_UNDER_LINE, crossId, String.valueOf(schemeId));
......
package net.wanji.opt.dao.mapper;
import net.wanji.opt.po.base.CrossPhaseLightsPO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author hfx
* @date 2023/1/18 14:25
* @desc CrossPhaseLightsMapper
*/
@Repository
public interface CrossPhaseLightsMapper {
/**
* 查询相位灯组信息
* @return
*/
List<CrossPhaseLightsPO> listCrossPhaseLights();
}
package net.wanji.opt.dao.mapper;
import net.wanji.opt.po.base.CrossPhasePO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author hfx
* @date 2023/1/13 10:54
* @desc CrossPhaseMapper
*/
@Repository
public interface CrossPhaseMapper {
/**
* 查询相位基础信息列表
* @return
*/
List<CrossPhasePO> listCrossPhase(@Param("crossId") String crossId, @Param("schemeId") Integer schemeId);
}
package net.wanji.opt.dao.mapper;
import net.wanji.opt.po.base.CrossPlanPO;
import net.wanji.opt.po.base.CrossSchemePO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author hfx
* @date 2023/1/17 16:06
* @desc CrossPlanMapper
*/
@Repository
public interface CrossPlanMapper {
/**
* 查询计划基础信息列表
* @param crossId
* @return
*/
List<CrossPlanPO> listCrossPlanInfo(String crossId);
}
package net.wanji.opt.dao.mapper;
import net.wanji.opt.po.base.CrossSchedulesPO;
import net.wanji.opt.po.base.CrossSchedulesPlanPO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author hfx
* @date 2023/1/17 16:06
* @desc CrossSchedulesMapper
*/
@Repository
public interface CrossSchedulesMapper {
/**
* 查询调度基础信息列表
* @param crossId
* @return
*/
List<CrossSchedulesPO> listCrossSchedulesInfo(String crossId);
/**
* 查询调度计划信息列表
* @param crossId
* @param status
* @return
*/
List<CrossSchedulesPlanPO> listSchedulesPlan(@Param("crossId") String crossId, @Param("status") Integer status);
}
package net.wanji.opt.dao.mapper;
import net.wanji.opt.po.base.CrossSchemePO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Set;
/**
* @author hfx
* @date 2023/1/17 14:49
* @desc CrossSchemeMapper
*/
@Repository
public interface CrossSchemeMapper {
/**
* 查询方案基础信息列表
* @param crossId
* @return
*/
List<CrossSchemePO> listCrossSchemeInfo(@Param("crossId") String crossId, @Param("schemeNo")String schemeNo, @Param("id")Integer id);
void insertBatch(@Param("entities") List<CrossSchemePO> entities);
Integer selectIdByCrossIdAndSchemeNo(@Param("crossId") String crossId, @Param("schemeNo") String schemeNo);
void updateCoordPhase(@Param("crossId") String crossId,
@Param("schemeNo") String schemeNo,
@Param("phaseId") Integer phaseId);
List<CrossSchemePO> selectByCrossId(@Param("crossId") String crossId);
Integer selectIdByCrossIdAndSchemeName(@Param("crossId") String crossId,
@Param("schemeName") String schemeName);
CrossSchemePO selectByCrossIdAndSchemeName(@Param("crossId") String crossId,
@Param("schemeName") String schemeName);
CrossSchemePO selectById(@Param("id") Integer id);
void insertOne(CrossSchemePO crossSchemePO);
void update(CrossSchemePO crossSchemePO);
Set<Integer> selectIdsByCrossId(String crossId);
void deleteByIds(Set<Integer> existedIds);
void resetStatus(String crossId);
void updateStatus(Integer schemeId);
CrossSchemePO selectByCrossIdAndSchemeNo(String crossId, String schemeNo);
}
package net.wanji.opt.dao.mapper;
import net.wanji.opt.po.base.CrossSectionPO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author hfx
* @date 2023/1/17 17:35
* @desc CrossSectionMapper
*/
@Repository
public interface CrossSectionMapper {
/**
* 查询时段基础信息列表
* @return
*/
List<CrossSectionPO> listCrossSectionInfo();
}
package net.wanji.opt.dao.mapper;
import net.wanji.opt.po.base.LaneLightsPO;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author hfx
* @date 2023/1/13 14:43
* @desc LaneLightsMapper
*/
@Repository
public interface LaneLightsMapper {
/**
* 查询灯组车道列表信息
* @return
*/
List<LaneLightsPO> listLightLane();
}
package net.wanji.opt.po.base;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author hfx
* @date 2023/01/18 14:27:39
* @desc 路口相位灯组信息
*/
@Data
public class CrossPhaseLightsPO {
@ApiModelProperty(name = "相位ID",notes = "")
private Integer phaseId;
@ApiModelProperty(name = "灯组ID",notes = "")
private Integer lightsId;
@ApiModelProperty(name = "路口ID",notes = "")
private String crossId;
}
package net.wanji.opt.po.base;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author hfx
* @date 2023/01/12 13:29:39
* @desc 路口相位基础信息
*/
@Data
public class CrossPhasePO {
@ApiModelProperty(name = "相位ID",notes = "")
private Integer id;
@ApiModelProperty(name = "相位号",notes = "")
private String phaseNo;
@ApiModelProperty(name = "相位名称",notes = "")
private String name;
@ApiModelProperty(name = "相位序号",notes = "")
private Integer sort;
@ApiModelProperty(name = "路口ID",notes = "")
private String crossId;
@ApiModelProperty(name = "方案ID",notes = "")
private Integer schemeId;
@ApiModelProperty(name = "环号",notes = "")
private Integer ringNo;
@ApiModelProperty(name = "组号",notes = "")
private Integer groupNo;
@ApiModelProperty(name = "相位类型:1实相位;2虚相位;3伴随相位",notes = "")
private Integer type;
@ApiModelProperty(name = "控制模式:1定周期;2绿灯;3黄灯;4红灯;5关灯;6绿闪;7黄闪;8红闪",notes = "")
private Integer controlMode;
@ApiModelProperty(name = "相位时间",notes = "")
private Integer phaseTime;
@ApiModelProperty(name = "绿灯时间",notes = "")
private Integer greenTime;
@ApiModelProperty(name = "绿闪时间",notes = "")
private Integer greenFlashTime;
@ApiModelProperty(name = "行闪时间",notes = "")
private Integer pedFlashTime;
@ApiModelProperty(name = "黄灯时间",notes = "")
private Integer yellowTime;
@ApiModelProperty(name = "红灯时间",notes = "")
private Integer redTime;
@ApiModelProperty(name = "最小绿灯时间",notes = "")
private Integer minGreenTime;
@ApiModelProperty(name = "最大绿灯时间",notes = "")
private Integer maxGreenTime;
}
package net.wanji.opt.po.base;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author hfx
* @date 2023/01/12 13:29:39
* @desc 路口方案基础信息
*/
@Data
public class CrossSchemePO {
/** 方案ID */
@ApiModelProperty(name = "方案ID",notes = "")
private Integer id ;
/** 方案号 */
@ApiModelProperty(name = "方案号",notes = "")
private String schemeNo ;
/** 方案名称 */
@ApiModelProperty(name = "方案名称",notes = "")
private String name ;
/** 路口ID */
@ApiModelProperty(name = "路口ID",notes = "")
private String crossId ;
/** 周期 */
@ApiModelProperty(name = "周期",notes = "")
private Integer cycle = 0;
/** 协调相位ID */
@ApiModelProperty(name = "协调相位ID",notes = "")
private Integer coordPhase = 0 ;
/** 相位差 */
@ApiModelProperty(name = "相位差",notes = "")
private Integer offset = 0;
/** 数据来源:1信号机;2平台 */
@ApiModelProperty(name = "数据来源:1信号机;2平台",notes = "")
private Integer source ;
/** 删除标识:1删除;0未删除 */
@ApiModelProperty(name = "删除标识:1删除;0未删除",notes = "")
private Integer isDeleted ;
@ApiModelProperty(name = "状态:1执行;0未执行",notes = "")
private Integer status = 0 ;
/** 创建时间 */
@ApiModelProperty(name = "创建时间",notes = "")
private Date gmtCreate ;
/** 修改时间 */
@ApiModelProperty(name = "修改时间",notes = "")
private Date gmtModified ;
}
package net.wanji.opt.po.base;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author hfx
* @date 2023/1/13 10:32
* @desc 路口时段信息
*/
@Data
public class CrossSectionPO {
@ApiModelProperty(name = "时段ID",notes = "")
private Integer id;
@ApiModelProperty(name = "时段号",notes = "")
private String sectionNo;
@ApiModelProperty(name = "开始时间",notes = "")
private String startTime;
@ApiModelProperty(name = "结束时间",notes = "")
private String endTime;
@ApiModelProperty(name = "计划ID",notes = "")
private Integer planId;
@ApiModelProperty(name = "路口ID",notes = "")
private String crossId;
@ApiModelProperty(name = "方案ID",notes = "")
private Integer schemeId;
@ApiModelProperty(name = "控制模式:1定周期;2绿波协调;3黄闪;4全红;5关灯;6单点自适应;7全感应;8半感应;",notes = "")
private Integer controlMode;
}
package net.wanji.opt.po.base;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author hfx
* @date 2023/1/13 17:37
* @desc 车道灯组信息
*/
@Data
public class LaneLightsPO {
@ApiModelProperty(name = "灯组ID",notes = "")
private Integer lightsId;
@ApiModelProperty(name = "车道ID",notes = "")
private String laneId;
@ApiModelProperty(name = "路口ID",notes = "")
private String crossId;
}
...@@ -26,14 +26,14 @@ import java.util.stream.Collectors; ...@@ -26,14 +26,14 @@ import java.util.stream.Collectors;
public class CrossLightsServiceImpl implements CrossLightsService { public class CrossLightsServiceImpl implements CrossLightsService {
@Resource @Resource
BaseCrossLightsMapper crossLightsMapper; BaseCrossLightsMapper baseCrossLightsMapper;
@Resource @Resource
LaneInfoService laneInfoService; LaneInfoService laneInfoService;
@Override @Override
public List<CrossLightsDTO> listCrossLights() { public List<CrossLightsDTO> listCrossLights() {
List<BaseCrossLightsPO> lightsPOList = crossLightsMapper.listCrossLights(); List<BaseCrossLightsPO> lightsPOList = baseCrossLightsMapper.listCrossLights();
return BeanListUtils.populateList(lightsPOList, new ArrayList<>(), CrossLightsDTO.class); return BeanListUtils.populateList(lightsPOList, new ArrayList<>(), CrossLightsDTO.class);
} }
......
...@@ -8,6 +8,8 @@ import net.wanji.common.framework.Constants; ...@@ -8,6 +8,8 @@ import net.wanji.common.framework.Constants;
import net.wanji.common.framework.rest.JsonViewObject; import net.wanji.common.framework.rest.JsonViewObject;
import net.wanji.common.utils.tool.BeanListUtils; import net.wanji.common.utils.tool.BeanListUtils;
import net.wanji.common.utils.tool.BeanMapUtils; import net.wanji.common.utils.tool.BeanMapUtils;
import net.wanji.databus.dao.entity.CrossPhasePO;
import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import net.wanji.databus.dao.entity.RidInfoEntity; import net.wanji.databus.dao.entity.RidInfoEntity;
import net.wanji.databus.dao.mapper.CrossDirDataRealtimeMapper; import net.wanji.databus.dao.mapper.CrossDirDataRealtimeMapper;
import net.wanji.databus.dao.mapper.CrossTurnDataRealtimeMapper; import net.wanji.databus.dao.mapper.CrossTurnDataRealtimeMapper;
...@@ -27,9 +29,7 @@ import net.wanji.opt.common.exception.OptServiceException; ...@@ -27,9 +29,7 @@ import net.wanji.opt.common.exception.OptServiceException;
import net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper; import net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper;
import net.wanji.opt.dto.CrossPhaseDTO; import net.wanji.opt.dto.CrossPhaseDTO;
import net.wanji.opt.dto.CrossTurnDataRealtimeDTO; import net.wanji.opt.dto.CrossTurnDataRealtimeDTO;
import net.wanji.opt.po.base.CrossPhasePO;
import net.wanji.opt.po.base.CrossSchemeOptLogPO; import net.wanji.opt.po.base.CrossSchemeOptLogPO;
import net.wanji.opt.po.base.CrossSchemePO;
import net.wanji.opt.po.strategy.SceneStrategyIdeaPO; import net.wanji.opt.po.strategy.SceneStrategyIdeaPO;
import net.wanji.opt.service.CrossOptimizeService; import net.wanji.opt.service.CrossOptimizeService;
import net.wanji.opt.service.strategy.SceneService; import net.wanji.opt.service.strategy.SceneService;
...@@ -513,20 +513,19 @@ public class CrossOptimizeServiceImpl implements CrossOptimizeService { ...@@ -513,20 +513,19 @@ public class CrossOptimizeServiceImpl implements CrossOptimizeService {
throw new OptServiceException("当前路口不能获取到运行方案相位信息!"); throw new OptServiceException("当前路口不能获取到运行方案相位信息!");
} }
Integer schemeId = crossPhaseDTO.getSchemeId(); Integer schemeId = crossPhaseDTO.getSchemeId();
BaseCrossSchemePO baseCrossSchemePO = geteSchemePOCache(String.join(Constants.SystemParam.SEPARATOR_UNDER_LINE, crossId, String.valueOf(schemeId)));
CrossSchemePO crossSchemePO = geteSchemePOCache(String.join(Constants.SystemParam.SEPARATOR_UNDER_LINE, crossId, String.valueOf(schemeId)));
// 当前路口方案号的相位参数 // 当前路口方案号的相位参数
Map<Integer, List<CrossPhasePO>> ringNoPhasePOMap = getCrossPhaseCacheByCrossId(crossId).stream().filter(po -> Objects.equals(schemeId, po.getSchemeId())).collect(Collectors.groupingBy(CrossPhasePO::getRingNo)); Map<Integer, List<CrossPhasePO>> ringNoPhasePOMap = getCrossPhaseCacheByCrossId(crossId).stream().filter(po -> Objects.equals(schemeId, po.getPlanId())).collect(Collectors.groupingBy(CrossPhasePO::getRingNo));
SchemeSendVO schemeSendVO = new SchemeSendVO(); SchemeSendVO schemeSendVO = new SchemeSendVO();
List<SchemeSendVO.Pattern> patternList = new ArrayList<>(); List<SchemeSendVO.Pattern> patternList = new ArrayList<>();
if (Objects.nonNull(crossSchemePO)) { if (Objects.nonNull(baseCrossSchemePO)) {
SchemeSendVO.Pattern pattern = new SchemeSendVO.Pattern(); SchemeSendVO.Pattern pattern = new SchemeSendVO.Pattern();
pattern.setPatternName("实时监测优化方案".concat(crossSchemePO.getSchemeNo())); pattern.setPatternName("实时监测优化方案".concat(baseCrossSchemePO.getSchemeNo()));
pattern.setPatternNo(String.valueOf(crossSchemePO.getId())); pattern.setPatternNo(String.valueOf(baseCrossSchemePO.getId()));
pattern.setCycle(String.valueOf(crossSchemePO.getCycle())); pattern.setCycle(String.valueOf(baseCrossSchemePO.getCycle()));
pattern.setOffset(String.valueOf(crossSchemePO.getOffset())); pattern.setOffset(String.valueOf(baseCrossSchemePO.getOffset()));
pattern.setCoordPhase(String.valueOf(crossSchemePO.getCoordPhase())); pattern.setCoordPhase(String.valueOf(baseCrossSchemePO.getCoordPhase()));
List<SchemeSendVO.Pattern.Ring> rings = new ArrayList<>(); List<SchemeSendVO.Pattern.Ring> rings = new ArrayList<>();
ringNoPhasePOMap.entrySet().forEach(entry -> { ringNoPhasePOMap.entrySet().forEach(entry -> {
......
package net.wanji.opt.service.impl; package net.wanji.opt.service.impl;
import net.wanji.common.framework.Constants; import net.wanji.databus.dao.entity.CrossPhaseLightsPO;
import net.wanji.common.utils.tool.BeanListUtils; import net.wanji.databus.dao.entity.CrossPhasePO;
import net.wanji.opt.dao.mapper.CrossPhaseLightsMapper; import net.wanji.databus.dao.mapper.BaseCrossPhaseLightsMapper;
import net.wanji.opt.dao.mapper.CrossPhaseMapper; import net.wanji.databus.dao.mapper.BaseCrossPhaseMapper;
import net.wanji.opt.dto.CrossLightsDTO; import net.wanji.opt.dto.CrossLightsDTO;
import net.wanji.opt.dto.CrossPhaseDTO; import net.wanji.opt.dto.CrossPhaseDTO;
import net.wanji.opt.po.base.CrossPhaseLightsPO;
import net.wanji.opt.po.base.CrossPhasePO;
import net.wanji.opt.service.CrossLightsService; import net.wanji.opt.service.CrossLightsService;
import net.wanji.opt.service.CrossPhaseService; import net.wanji.opt.service.CrossPhaseService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
...@@ -28,10 +27,10 @@ import java.util.stream.Collectors; ...@@ -28,10 +27,10 @@ import java.util.stream.Collectors;
public class CrossPhaseServiceImpl implements CrossPhaseService { public class CrossPhaseServiceImpl implements CrossPhaseService {
@Resource @Resource
CrossPhaseMapper crossPhaseMapper; BaseCrossPhaseMapper baseCrossPhaseMapper;
@Resource @Resource
CrossPhaseLightsMapper phaseLightsMapper; BaseCrossPhaseLightsMapper baseCrossPhaseLightsMapper;
@Resource @Resource
CrossLightsService crossLightsService; CrossLightsService crossLightsService;
...@@ -41,8 +40,15 @@ public class CrossPhaseServiceImpl implements CrossPhaseService { ...@@ -41,8 +40,15 @@ public class CrossPhaseServiceImpl implements CrossPhaseService {
public List<CrossPhaseDTO> listCrossPhase() { public List<CrossPhaseDTO> listCrossPhase() {
// 获取相位信息 // 获取相位信息
List<CrossPhasePO> crossPhasePOList = crossPhaseMapper.listCrossPhase("", Constants.SystemParam.NULL_INT); List<CrossPhasePO> crossPhasePOList = baseCrossPhaseMapper.listCrossPhasePO(new CrossPhasePO());
return BeanListUtils.populateList(crossPhasePOList, new ArrayList<>(), CrossPhaseDTO.class); List<CrossPhaseDTO> crossPhaseDTOS = new ArrayList<>();
for (CrossPhasePO crossPhasePO : crossPhasePOList) {
CrossPhaseDTO crossPhaseDTO = new CrossPhaseDTO();
BeanUtils.copyProperties(crossPhasePO, crossPhaseDTO);
crossPhaseDTO.setSchemeId(crossPhasePO.getPlanId());
crossPhaseDTOS.add(crossPhaseDTO);
}
return crossPhaseDTOS;
} }
@Override @Override
...@@ -70,7 +76,7 @@ public class CrossPhaseServiceImpl implements CrossPhaseService { ...@@ -70,7 +76,7 @@ public class CrossPhaseServiceImpl implements CrossPhaseService {
Map<Integer, List<CrossLightsDTO>> phaseLightsMap = new HashMap<>(); Map<Integer, List<CrossLightsDTO>> phaseLightsMap = new HashMap<>();
// 获取相位灯组信息 // 获取相位灯组信息
List<CrossPhaseLightsPO> phaseLightsPOList = phaseLightsMapper.listCrossPhaseLights(); List<CrossPhaseLightsPO> phaseLightsPOList = baseCrossPhaseLightsMapper.listCrossPhaseLightsPO(new CrossPhaseLightsPO());
if(phaseLightsPOList.isEmpty()) { if(phaseLightsPOList.isEmpty()) {
return phaseLightsMap; return phaseLightsMap;
} }
......
...@@ -2,10 +2,10 @@ package net.wanji.opt.service.impl; ...@@ -2,10 +2,10 @@ package net.wanji.opt.service.impl;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.common.utils.tool.BeanListUtils; import net.wanji.common.utils.tool.BeanListUtils;
import net.wanji.opt.dao.mapper.CrossSchedulesMapper; import net.wanji.databus.dao.entity.BaseCrossSchedulesPlanPO;
import net.wanji.databus.dao.mapper.BaseCrossSchedulesMapper;
import net.wanji.opt.dto.CrossSchedulesDTO; import net.wanji.opt.dto.CrossSchedulesDTO;
import net.wanji.opt.dto.CrossSectionDTO; import net.wanji.opt.dto.CrossSectionDTO;
import net.wanji.opt.po.base.CrossSchedulesPlanPO;
import net.wanji.opt.service.CrossSchedulesService; import net.wanji.opt.service.CrossSchedulesService;
import net.wanji.opt.service.CrossSectionService; import net.wanji.opt.service.CrossSectionService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -26,7 +26,7 @@ import java.util.stream.Collectors; ...@@ -26,7 +26,7 @@ import java.util.stream.Collectors;
public class CrossSchedulesServiceImpl implements CrossSchedulesService { public class CrossSchedulesServiceImpl implements CrossSchedulesService {
@Resource @Resource
CrossSchedulesMapper crossSchedulesMapper; BaseCrossSchedulesMapper baseCrossSchedulesMapper;
@Resource @Resource
CrossSectionService crossSectionService; CrossSectionService crossSectionService;
...@@ -36,7 +36,7 @@ public class CrossSchedulesServiceImpl implements CrossSchedulesService { ...@@ -36,7 +36,7 @@ public class CrossSchedulesServiceImpl implements CrossSchedulesService {
List<CrossSchedulesDTO> schedulesDTOList = new ArrayList<>(); List<CrossSchedulesDTO> schedulesDTOList = new ArrayList<>();
// 获取调度计划信息 // 获取调度计划信息
List<CrossSchedulesPlanPO> schedulesPlanPOList = crossSchedulesMapper.listSchedulesPlan(crossId, status); List<BaseCrossSchedulesPlanPO> schedulesPlanPOList = baseCrossSchedulesMapper.listSchedulesPlan(crossId, status);
schedulesDTOList = BeanListUtils.populateList(schedulesPlanPOList, schedulesDTOList, CrossSchedulesDTO.class); schedulesDTOList = BeanListUtils.populateList(schedulesPlanPOList, schedulesDTOList, CrossSchedulesDTO.class);
// 获取日计划信息 // 获取日计划信息
List<CrossSectionDTO> sectionPOList = crossSectionService.listCrossSectionInfo(crossId, null); List<CrossSectionDTO> sectionPOList = crossSectionService.listCrossSectionInfo(crossId, null);
......
...@@ -2,10 +2,10 @@ package net.wanji.opt.service.impl; ...@@ -2,10 +2,10 @@ package net.wanji.opt.service.impl;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.common.utils.tool.BeanListUtils; import net.wanji.common.utils.tool.BeanListUtils;
import net.wanji.opt.dao.mapper.CrossSchemeMapper; import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import net.wanji.databus.dao.mapper.BaseCrossSchemeMapper;
import net.wanji.opt.dto.CrossPhaseDTO; import net.wanji.opt.dto.CrossPhaseDTO;
import net.wanji.opt.dto.CrossSchemeDTO; import net.wanji.opt.dto.CrossSchemeDTO;
import net.wanji.opt.po.base.CrossSchemePO;
import net.wanji.opt.service.CrossPhaseService; import net.wanji.opt.service.CrossPhaseService;
import net.wanji.opt.service.CrossSchemeService; import net.wanji.opt.service.CrossSchemeService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -26,7 +26,7 @@ import java.util.stream.Collectors; ...@@ -26,7 +26,7 @@ import java.util.stream.Collectors;
public class CrossSchemeServiceImpl implements CrossSchemeService { public class CrossSchemeServiceImpl implements CrossSchemeService {
@Resource @Resource
CrossSchemeMapper crossSchemeMapper; BaseCrossSchemeMapper baseCrossSchemeMapper;
@Resource @Resource
CrossPhaseService crossPhaseService; CrossPhaseService crossPhaseService;
...@@ -34,7 +34,7 @@ public class CrossSchemeServiceImpl implements CrossSchemeService { ...@@ -34,7 +34,7 @@ public class CrossSchemeServiceImpl implements CrossSchemeService {
@Override @Override
public List<CrossSchemeDTO> listCrossSchemeInfo(String crossId) { public List<CrossSchemeDTO> listCrossSchemeInfo(String crossId) {
List<CrossSchemePO> schemePOList = crossSchemeMapper.listCrossSchemeInfo(crossId, "", null); List<BaseCrossSchemePO> schemePOList = baseCrossSchemeMapper.listCrossSchemeInfo(crossId, "", null);
return BeanListUtils.populateList(schemePOList, new ArrayList<>(), CrossSchemeDTO.class); return BeanListUtils.populateList(schemePOList, new ArrayList<>(), CrossSchemeDTO.class);
} }
......
...@@ -2,9 +2,9 @@ package net.wanji.opt.service.impl; ...@@ -2,9 +2,9 @@ package net.wanji.opt.service.impl;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.common.utils.tool.BeanListUtils; import net.wanji.common.utils.tool.BeanListUtils;
import net.wanji.opt.dao.mapper.CrossSectionMapper; import net.wanji.databus.dao.entity.CrossSectionPO;
import net.wanji.databus.dao.mapper.BaseCrossSectionMapper;
import net.wanji.opt.dto.CrossSectionDTO; import net.wanji.opt.dto.CrossSectionDTO;
import net.wanji.opt.po.base.CrossSectionPO;
import net.wanji.opt.service.CrossSectionService; import net.wanji.opt.service.CrossSectionService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -22,13 +22,13 @@ import java.util.List; ...@@ -22,13 +22,13 @@ import java.util.List;
public class CrossSectionServiceImpl implements CrossSectionService { public class CrossSectionServiceImpl implements CrossSectionService {
@Resource @Resource
CrossSectionMapper crossSectionMapper; BaseCrossSectionMapper baseCrossSectionMapper;
@Override @Override
public List<CrossSectionDTO> listCrossSectionInfo(String crossId, String planId) { public List<CrossSectionDTO> listCrossSectionInfo(String crossId, String planId) {
// 获取时段信息 // 获取时段信息
List<CrossSectionPO> sectionPOList = crossSectionMapper.listCrossSectionInfo(); List<CrossSectionPO> sectionPOList = baseCrossSectionMapper.listCrossSectionPO(new CrossSectionPO());
return BeanListUtils.populateList(sectionPOList, new ArrayList<>(), CrossSectionDTO.class); return BeanListUtils.populateList(sectionPOList, new ArrayList<>(), CrossSectionDTO.class);
} }
} }
...@@ -10,23 +10,19 @@ import lombok.extern.slf4j.Slf4j; ...@@ -10,23 +10,19 @@ import lombok.extern.slf4j.Slf4j;
import net.wanji.common.dto.CrossIdDTO; import net.wanji.common.dto.CrossIdDTO;
import net.wanji.common.enums.LightsAddressEnum; import net.wanji.common.enums.LightsAddressEnum;
import net.wanji.common.utils.tool.CrossUtil; import net.wanji.common.utils.tool.CrossUtil;
import net.wanji.databus.dao.entity.CrossLightsPO; import net.wanji.databus.dao.entity.BaseCrossDirInfoPO;
import net.wanji.databus.dao.entity.CrossPhasePO;
import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import net.wanji.databus.dao.entity.RidInfoEntity; import net.wanji.databus.dao.entity.RidInfoEntity;
import net.wanji.databus.dao.mapper.*; import net.wanji.databus.dao.mapper.*;
import net.wanji.databus.po.*; import net.wanji.databus.po.*;
import net.wanji.databus.vo.SchemeSendVO; import net.wanji.databus.vo.SchemeSendVO;
import net.wanji.opt.dao.mapper.CrossDirInfoMapper;
import net.wanji.opt.dao.mapper.CrossPhaseMapper;
import net.wanji.opt.dao.mapper.CrossSchemeMapper;
import net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper; import net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper;
import net.wanji.opt.dao.mapper.strategy.SceneMapper; import net.wanji.opt.dao.mapper.strategy.SceneMapper;
import net.wanji.opt.dto.*; import net.wanji.opt.dto.*;
import net.wanji.opt.dto.strategy.AddOrUpdateSceneDTO; import net.wanji.opt.dto.strategy.AddOrUpdateSceneDTO;
import net.wanji.opt.dto.strategy.QuerySceneDTO; import net.wanji.opt.dto.strategy.QuerySceneDTO;
import net.wanji.opt.po.base.CrossDirInfoPO;
import net.wanji.opt.po.base.CrossPhasePO;
import net.wanji.opt.po.base.CrossSchemeOptLogPO; import net.wanji.opt.po.base.CrossSchemeOptLogPO;
import net.wanji.opt.po.base.CrossSchemePO;
import net.wanji.opt.po.strategy.ScenePO; import net.wanji.opt.po.strategy.ScenePO;
import net.wanji.opt.service.DiagnoService; import net.wanji.opt.service.DiagnoService;
import net.wanji.opt.service.signalcontrol.FeignProxyService; import net.wanji.opt.service.signalcontrol.FeignProxyService;
...@@ -53,17 +49,17 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -53,17 +49,17 @@ public class DiagnoServiceImpl implements DiagnoService {
private final CrossDataRealtimeMapper crossDataRealtimeMapper; private final CrossDataRealtimeMapper crossDataRealtimeMapper;
private final SceneService sceneService; private final SceneService sceneService;
private final SceneMapper sceneMapper; private final SceneMapper sceneMapper;
private final CrossDirInfoMapper crossDirInfoMapper; private final BaseCrossDirInfoMapper baseCrossDirInfoMapper;
private final RidInfoMapper ridInfoMapper; private final RidInfoMapper ridInfoMapper;
private final CrossSchemeOptLogMapper crossSchemeOptLogMapper; private final CrossSchemeOptLogMapper crossSchemeOptLogMapper;
private final CrossSchemeMapper crossSchemeMapper; private final BaseCrossSchemeMapper baseCrossSchemeMapper;
private final CrossPhaseMapper crossPhaseMapper; private final BaseCrossPhaseMapper baseCrossPhaseMapper;
private final FeignProxyService feignProxyService; private final FeignProxyService feignProxyService;
private final CrossDataHistMapper crossDataHistMapper; private final CrossDataHistMapper crossDataHistMapper;
private final CrossDirDataHistMapper crossDirDataHistMapper; private final CrossDirDataHistMapper crossDirDataHistMapper;
private final LaneInfoMapper laneInfoMapper; private final LaneInfoMapper laneInfoMapper;
private final CrossDirDataRealtimeMapper crossDirDataRealtimeMapper; private final CrossDirDataRealtimeMapper crossDirDataRealtimeMapper;
private final CrossLaneLightsMapper crossLaneLightsMapper; private final BaseCrossLaneLightsMapper baseCrossLaneLightsMapper;
private final BaseCrossLightsMapper baseCrossLightsMapper; private final BaseCrossLightsMapper baseCrossLightsMapper;
private Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create(); private Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
...@@ -87,28 +83,28 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -87,28 +83,28 @@ public class DiagnoServiceImpl implements DiagnoService {
} }
public DiagnoServiceImpl(BaseCrossInfoMapper baseCrossInfoMapper, CrossDataRealtimeMapper crossDataRealtimeMapper, public DiagnoServiceImpl(BaseCrossInfoMapper baseCrossInfoMapper, CrossDataRealtimeMapper crossDataRealtimeMapper,
SceneService sceneService, SceneMapper sceneMapper, CrossDirInfoMapper crossDirInfoMapper, SceneService sceneService, SceneMapper sceneMapper, BaseCrossDirInfoMapper baseCrossDirInfoMapper,
RidInfoMapper ridInfoMapper, CrossSchemeOptLogMapper crossSchemeOptLogMapper, RidInfoMapper ridInfoMapper, CrossSchemeOptLogMapper crossSchemeOptLogMapper,
CrossSchemeMapper crossSchemeMapper, CrossPhaseMapper crossPhaseMapper, BaseCrossSchemeMapper baseCrossSchemeMapper, BaseCrossPhaseMapper baseCrossPhaseMapper,
FeignProxyService feignProxyService, CrossDataHistMapper crossDataHistMapper, FeignProxyService feignProxyService, CrossDataHistMapper crossDataHistMapper,
CrossDirDataHistMapper crossDirDataHistMapper, LaneInfoMapper laneInfoMapper, CrossDirDataHistMapper crossDirDataHistMapper, LaneInfoMapper laneInfoMapper,
CrossDirDataRealtimeMapper crossDirDataRealtimeMapper, CrossDirDataRealtimeMapper crossDirDataRealtimeMapper,
CrossLaneLightsMapper crossLaneLightsMapper, BaseCrossLightsMapper baseCrossLightsMapper) { BaseCrossLaneLightsMapper baseCrossLaneLightsMapper, BaseCrossLightsMapper baseCrossLightsMapper) {
this.baseCrossInfoMapper = baseCrossInfoMapper; this.baseCrossInfoMapper = baseCrossInfoMapper;
this.crossDataRealtimeMapper = crossDataRealtimeMapper; this.crossDataRealtimeMapper = crossDataRealtimeMapper;
this.sceneService = sceneService; this.sceneService = sceneService;
this.sceneMapper = sceneMapper; this.sceneMapper = sceneMapper;
this.crossDirInfoMapper = crossDirInfoMapper; this.baseCrossDirInfoMapper = baseCrossDirInfoMapper;
this.ridInfoMapper = ridInfoMapper; this.ridInfoMapper = ridInfoMapper;
this.crossSchemeOptLogMapper = crossSchemeOptLogMapper; this.crossSchemeOptLogMapper = crossSchemeOptLogMapper;
this.crossSchemeMapper = crossSchemeMapper; this.baseCrossSchemeMapper = baseCrossSchemeMapper;
this.crossPhaseMapper = crossPhaseMapper; this.baseCrossPhaseMapper = baseCrossPhaseMapper;
this.feignProxyService = feignProxyService; this.feignProxyService = feignProxyService;
this.crossDataHistMapper = crossDataHistMapper; this.crossDataHistMapper = crossDataHistMapper;
this.crossDirDataHistMapper = crossDirDataHistMapper; this.crossDirDataHistMapper = crossDirDataHistMapper;
this.laneInfoMapper = laneInfoMapper; this.laneInfoMapper = laneInfoMapper;
this.crossDirDataRealtimeMapper = crossDirDataRealtimeMapper; this.crossDirDataRealtimeMapper = crossDirDataRealtimeMapper;
this.crossLaneLightsMapper = crossLaneLightsMapper; this.baseCrossLaneLightsMapper = baseCrossLaneLightsMapper;
this.baseCrossLightsMapper = baseCrossLightsMapper; this.baseCrossLightsMapper = baseCrossLightsMapper;
} }
...@@ -137,7 +133,7 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -137,7 +133,7 @@ public class DiagnoServiceImpl implements DiagnoService {
public List<CrossIdAndLocationVO> queryNeighborCross(CrossIdDTO crossIdDTO) { public List<CrossIdAndLocationVO> queryNeighborCross(CrossIdDTO crossIdDTO) {
List<CrossIdAndLocationVO> crossIdAndLocationVOList = new ArrayList<>(); List<CrossIdAndLocationVO> crossIdAndLocationVOList = new ArrayList<>();
String crossId = crossIdDTO.getCrossId(); String crossId = crossIdDTO.getCrossId();
List<Integer> inDirs = crossDirInfoMapper.selectInDirsByCrossId(crossId); List<Integer> inDirs = baseCrossDirInfoMapper.selectInDirsByCrossId(crossId);
for (Integer inDir : inDirs) { for (Integer inDir : inDirs) {
RidInfoEntity ridInfo = ridInfoMapper.selectByEndInDir(crossId, inDir); RidInfoEntity ridInfo = ridInfoMapper.selectByEndInDir(crossId, inDir);
if (ridInfo != null) { if (ridInfo != null) {
...@@ -185,10 +181,10 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -185,10 +181,10 @@ public class DiagnoServiceImpl implements DiagnoService {
String optType = crossSchemeOptLogPO.getOptType(); String optType = crossSchemeOptLogPO.getOptType();
schemeOptVO.setOptType(Integer.parseInt(optType)); schemeOptVO.setOptType(Integer.parseInt(optType));
Integer schemeNo = crossSchemeOptLogPO.getSchemeId(); Integer schemeNo = crossSchemeOptLogPO.getSchemeId();
CrossSchemePO crossSchemePO = crossSchemeMapper.selectByCrossIdAndSchemeNo(crossId, schemeNo.toString()); BaseCrossSchemePO baseCrossSchemePO = baseCrossSchemeMapper.selectByCrossIdAndSchemeNo(crossId, schemeNo);
if (crossSchemePO != null) { if (baseCrossSchemePO != null) {
schemeOptVO.setCycle(crossSchemePO.getCycle()); schemeOptVO.setCycle(baseCrossSchemePO.getCycle());
schemeOptVO.setSchemeId(crossSchemePO.getId()); schemeOptVO.setSchemeId(baseCrossSchemePO.getId());
schemeOptVO.setOffset(crossSchemeOptLogPO.getOffset()); schemeOptVO.setOffset(crossSchemeOptLogPO.getOffset());
} }
// 构造调整时间列表 // 构造调整时间列表
...@@ -280,13 +276,13 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -280,13 +276,13 @@ public class DiagnoServiceImpl implements DiagnoService {
private List<SchemeSendVO.Pattern> buildPatternList(String sendCrossId, Integer schemeId, private List<SchemeSendVO.Pattern> buildPatternList(String sendCrossId, Integer schemeId,
Map<String, Integer> phaseOffsetTimeMap) { Map<String, Integer> phaseOffsetTimeMap) {
List<SchemeSendVO.Pattern> patternList = new ArrayList<>(); List<SchemeSendVO.Pattern> patternList = new ArrayList<>();
CrossSchemePO crossSchemePO = crossSchemeMapper.selectById(schemeId); BaseCrossSchemePO baseCrossSchemePO = baseCrossSchemeMapper.selectById(schemeId);
SchemeSendVO.Pattern pattern = new SchemeSendVO.Pattern(); SchemeSendVO.Pattern pattern = new SchemeSendVO.Pattern();
pattern.setPatternNo(crossSchemePO.getSchemeNo()); pattern.setPatternNo(baseCrossSchemePO.getSchemeNo());
pattern.setPatternName(crossSchemePO.getName()); pattern.setPatternName(baseCrossSchemePO.getName());
pattern.setCycle(crossSchemePO.getCycle().toString()); pattern.setCycle(baseCrossSchemePO.getCycle().toString());
pattern.setCoordPhase(crossSchemePO.getCoordPhase().toString()); pattern.setCoordPhase(baseCrossSchemePO.getCoordPhase().toString());
pattern.setOffset(crossSchemePO.getOffset().toString()); pattern.setOffset(baseCrossSchemePO.getOffset().toString());
// 构造环列表 // 构造环列表
List<SchemeSendVO.Pattern.Ring> rings = buildRings(sendCrossId, schemeId, phaseOffsetTimeMap); List<SchemeSendVO.Pattern.Ring> rings = buildRings(sendCrossId, schemeId, phaseOffsetTimeMap);
pattern.setRings(rings); pattern.setRings(rings);
...@@ -299,7 +295,10 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -299,7 +295,10 @@ public class DiagnoServiceImpl implements DiagnoService {
Map<String, Integer> phaseOffsetTimeMap) { Map<String, Integer> phaseOffsetTimeMap) {
List<SchemeSendVO.Pattern.Ring> rings = new ArrayList<>(); List<SchemeSendVO.Pattern.Ring> rings = new ArrayList<>();
// 根据路口ID和方案ID查询相位集合,根据ringNo分组,特殊控制ringNo为0 // 根据路口ID和方案ID查询相位集合,根据ringNo分组,特殊控制ringNo为0
List<CrossPhasePO> crossPhasePOList = crossPhaseMapper.listCrossPhase(sendCrossId, schemeId); CrossPhasePO crossPhasePO = new CrossPhasePO();
crossPhasePO.setCrossId(sendCrossId);
crossPhasePO.setPlanId(schemeId);
List<CrossPhasePO> crossPhasePOList = baseCrossPhaseMapper.listCrossPhasePO(crossPhasePO);
Map<Integer, List<CrossPhasePO>> collectMap = crossPhasePOList.stream() Map<Integer, List<CrossPhasePO>> collectMap = crossPhasePOList.stream()
.collect(Collectors.groupingBy(CrossPhasePO::getRingNo)); .collect(Collectors.groupingBy(CrossPhasePO::getRingNo));
for (Map.Entry<Integer, List<CrossPhasePO>> entry : collectMap.entrySet()) { for (Map.Entry<Integer, List<CrossPhasePO>> entry : collectMap.entrySet()) {
...@@ -499,8 +498,8 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -499,8 +498,8 @@ public class DiagnoServiceImpl implements DiagnoService {
dirListElement.setLength(crossDirDataRealtimePO.getLength()); dirListElement.setLength(crossDirDataRealtimePO.getLength());
dirListElement.setDuration(crossDirDataRealtimePO.getDuration()); dirListElement.setDuration(crossDirDataRealtimePO.getDuration());
// 获取是否有行人道 // 获取是否有行人道
CrossDirInfoPO crossDirInfoPO = crossDirInfoMapper.selectByCrossIdAndDirType(crossId, key); BaseCrossDirInfoPO baseCrossDirInfoPO = baseCrossDirInfoMapper.selectByCrossIdAndDirType(crossId, key);
Integer isPedestrian = crossDirInfoPO.getIsPedestrian(); Integer isPedestrian = baseCrossDirInfoPO.getIsPedestrian();
dirListElement.setIsPersonCross(isPedestrian); dirListElement.setIsPersonCross(isPedestrian);
// 构造laneList // 构造laneList
List<LaneInfoPO> value = entry.getValue(); List<LaneInfoPO> value = entry.getValue();
...@@ -517,7 +516,7 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -517,7 +516,7 @@ public class DiagnoServiceImpl implements DiagnoService {
laneListElement.setLaneType(laneInfoPO.getCategory()); laneListElement.setLaneType(laneInfoPO.getCategory());
laneListElement.setName(laneInfoPO.getCode()); laneListElement.setName(laneInfoPO.getCode());
// 根据laneId获取灯组代码 // 根据laneId获取灯组代码
String lightsCode = crossLaneLightsMapper.selectLightsCodeByLaneId(laneId); String lightsCode = baseCrossLaneLightsMapper.selectLightsCodeByLaneId(laneId);
if (lightsCode != null) { if (lightsCode != null) {
laneListElement.setLedNum(lightsCode); laneListElement.setLedNum(lightsCode);
} }
...@@ -525,8 +524,8 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -525,8 +524,8 @@ public class DiagnoServiceImpl implements DiagnoService {
} }
dirListElement.setLaneList(laneListElementList); dirListElement.setLaneList(laneListElementList);
// 构造行人过街数据 // 构造行人过街数据
List<CrossLightsPO> crossLightsPOList = baseCrossLightsMapper.selectByCrossIdAndDir(crossId, key); List<BaseCrossLightsPO> crossLightsPOList = baseCrossLightsMapper.selectByCrossIdAndDir(crossId, key);
for (CrossLightsPO crossLightsPO : crossLightsPOList) { for (BaseCrossLightsPO crossLightsPO : crossLightsPOList) {
Integer type = crossLightsPO.getType(); Integer type = crossLightsPO.getType();
String lightsNo = crossLightsPO.getLightsNo(); String lightsNo = crossLightsPO.getLightsNo();
if (type == 20) { // 一次过街 if (type == 20) { // 一次过街
...@@ -544,15 +543,15 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -544,15 +543,15 @@ public class DiagnoServiceImpl implements DiagnoService {
dirList.add(dirListElement); dirList.add(dirListElement);
} }
// 返回没有车道的方向 // 返回没有车道的方向
List<CrossDirInfoPO> crossDirInfoPOList = crossDirInfoMapper.selectByCrossId(crossId); List<BaseCrossDirInfoPO> baseCrossDirInfoPOList = baseCrossDirInfoMapper.selectByCrossId(crossId);
for (CrossDirInfoPO crossDirInfoPO : crossDirInfoPOList) { for (BaseCrossDirInfoPO baseCrossDirInfoPO : baseCrossDirInfoPOList) {
List<DirListElement> dirList = saveLaneInfoDTO.getDirList(); List<DirListElement> dirList = saveLaneInfoDTO.getDirList();
Integer dirType = crossDirInfoPO.getDirType(); Integer dirType = baseCrossDirInfoPO.getDirType();
List<LaneInfoPO> laneInfoPOList1 = laneInfoMapper.selectByCrossIdAndDir(crossId, dirType); List<LaneInfoPO> laneInfoPOList1 = laneInfoMapper.selectByCrossIdAndDir(crossId, dirType);
if (CollectionUtil.isEmpty(laneInfoPOList1)) { if (CollectionUtil.isEmpty(laneInfoPOList1)) {
DirListElement dirListElement = new DirListElement(); DirListElement dirListElement = new DirListElement();
dirListElement.setDir(crossDirInfoPO.getDirType()); dirListElement.setDir(baseCrossDirInfoPO.getDirType());
dirListElement.setIsPersonCross(crossDirInfoPO.getIsPedestrian()); dirListElement.setIsPersonCross(baseCrossDirInfoPO.getIsPedestrian());
dirList.add(dirListElement); dirList.add(dirListElement);
} }
} }
...@@ -621,7 +620,10 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -621,7 +620,10 @@ public class DiagnoServiceImpl implements DiagnoService {
} }
private Integer getNewGreenTime(String crossId, Integer schemeId, String phaseNo) { private Integer getNewGreenTime(String crossId, Integer schemeId, String phaseNo) {
List<CrossPhasePO> crossPhasePOList = crossPhaseMapper.listCrossPhase(crossId, schemeId); CrossPhasePO entity = new CrossPhasePO();
entity.setCrossId(crossId);
entity.setPlanId(schemeId);
List<CrossPhasePO> crossPhasePOList = baseCrossPhaseMapper.listCrossPhasePO(entity);
for (CrossPhasePO crossPhasePO : crossPhasePOList) { for (CrossPhasePO crossPhasePO : crossPhasePOList) {
String newPhaseNo = crossPhasePO.getPhaseNo(); String newPhaseNo = crossPhasePO.getPhaseNo();
if (Objects.equals(phaseNo, newPhaseNo)) { if (Objects.equals(phaseNo, newPhaseNo)) {
...@@ -653,8 +655,11 @@ public class DiagnoServiceImpl implements DiagnoService { ...@@ -653,8 +655,11 @@ public class DiagnoServiceImpl implements DiagnoService {
} }
private void initPhaseOptTimeList(Integer schemeNo, List<SchemeOptVO.PhaseOptTime> phaseOptTimeList, String crossId) { private void initPhaseOptTimeList(Integer schemeNo, List<SchemeOptVO.PhaseOptTime> phaseOptTimeList, String crossId) {
Integer schemeId = crossSchemeMapper.selectIdByCrossIdAndSchemeNo(crossId, schemeNo.toString()); Integer schemeId = baseCrossSchemeMapper.selectIdByCrossIdAndSchemeNo(crossId, schemeNo.toString());
List<CrossPhasePO> crossPhasePOList = crossPhaseMapper.listCrossPhase(crossId, schemeId); CrossPhasePO phasePO = new CrossPhasePO();
phasePO.setCrossId(crossId);
phasePO.setPlanId(schemeId);
List<CrossPhasePO> crossPhasePOList = baseCrossPhaseMapper.listCrossPhasePO(phasePO);
for (CrossPhasePO crossPhasePO : crossPhasePOList) { for (CrossPhasePO crossPhasePO : crossPhasePOList) {
SchemeOptVO.PhaseOptTime phaseOptTime = new SchemeOptVO.PhaseOptTime(); SchemeOptVO.PhaseOptTime phaseOptTime = new SchemeOptVO.PhaseOptTime();
phaseOptTime.setPhaseNo(crossPhasePO.getPhaseNo()); phaseOptTime.setPhaseNo(crossPhasePO.getPhaseNo());
......
...@@ -2,11 +2,11 @@ package net.wanji.opt.service.impl; ...@@ -2,11 +2,11 @@ package net.wanji.opt.service.impl;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.common.utils.tool.BeanListUtils; import net.wanji.common.utils.tool.BeanListUtils;
import net.wanji.databus.dao.mapper.BaseCrossLaneLightsMapper;
import net.wanji.databus.dao.mapper.LaneInfoMapper; import net.wanji.databus.dao.mapper.LaneInfoMapper;
import net.wanji.databus.po.CrossLaneLightsPO;
import net.wanji.databus.po.LaneInfoPO; import net.wanji.databus.po.LaneInfoPO;
import net.wanji.opt.dao.mapper.LaneLightsMapper;
import net.wanji.opt.dto.LaneInfoDTO; import net.wanji.opt.dto.LaneInfoDTO;
import net.wanji.opt.po.base.LaneLightsPO;
import net.wanji.opt.query.LaneQuery; import net.wanji.opt.query.LaneQuery;
import net.wanji.opt.service.LaneInfoService; import net.wanji.opt.service.LaneInfoService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -30,7 +30,7 @@ public class LaneInfoServiceImpl implements LaneInfoService { ...@@ -30,7 +30,7 @@ public class LaneInfoServiceImpl implements LaneInfoService {
LaneInfoMapper laneInfoMapper; LaneInfoMapper laneInfoMapper;
@Resource @Resource
LaneLightsMapper laneLightsMapper; BaseCrossLaneLightsMapper baseCrossLaneLightsMapper;
@Override @Override
public List<LaneInfoDTO> listLaneInfo(LaneQuery query) { public List<LaneInfoDTO> listLaneInfo(LaneQuery query) {
...@@ -50,7 +50,7 @@ public class LaneInfoServiceImpl implements LaneInfoService { ...@@ -50,7 +50,7 @@ public class LaneInfoServiceImpl implements LaneInfoService {
return laneInfoDTOList; return laneInfoDTOList;
} }
// 获取灯组车道信息 // 获取灯组车道信息
List<LaneLightsPO> lightLanePOList = laneLightsMapper.listLightLane(); List<CrossLaneLightsPO> lightLanePOList = baseCrossLaneLightsMapper.listLightLane();
if(lightLanePOList.isEmpty()) { if(lightLanePOList.isEmpty()) {
return laneInfoDTOList; return laneInfoDTOList;
} }
......
...@@ -17,7 +17,6 @@ import net.wanji.databus.po.BaseCrossInfoPO; ...@@ -17,7 +17,6 @@ import net.wanji.databus.po.BaseCrossInfoPO;
import net.wanji.databus.po.CrossTurnDataRealtimePO; import net.wanji.databus.po.CrossTurnDataRealtimePO;
import net.wanji.databus.po.TBaseCrossInfo; import net.wanji.databus.po.TBaseCrossInfo;
import net.wanji.databus.vo.AbnormalCrossListVO; import net.wanji.databus.vo.AbnormalCrossListVO;
import net.wanji.opt.dao.mapper.CrossDirInfoMapper;
import net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper; import net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper;
import net.wanji.opt.dao.mapper.trend.EventAlarmMapper; import net.wanji.opt.dao.mapper.trend.EventAlarmMapper;
import net.wanji.opt.dao.mapper.trend.GreenwaveInfoMapper; import net.wanji.opt.dao.mapper.trend.GreenwaveInfoMapper;
...@@ -47,7 +46,7 @@ public class TrendServiceImpl implements TrendService { ...@@ -47,7 +46,7 @@ public class TrendServiceImpl implements TrendService {
private final CrossDirDataHistMapper crossDirDataHistMapper; private final CrossDirDataHistMapper crossDirDataHistMapper;
private final EventAlarmMapper eventAlarmMapper; private final EventAlarmMapper eventAlarmMapper;
private final RidInfoMapper ridInfoMapper; private final RidInfoMapper ridInfoMapper;
private final CrossDirInfoMapper crossDirInfoMapper; private final BaseCrossDirInfoMapper baseCrossDirInfoMapper;
private final CrossSchemeOptLogMapper crossSchemeOptLogMapper; private final CrossSchemeOptLogMapper crossSchemeOptLogMapper;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
...@@ -56,7 +55,7 @@ public class TrendServiceImpl implements TrendService { ...@@ -56,7 +55,7 @@ public class TrendServiceImpl implements TrendService {
CrossDataRealtimeMapper crossDataRealtimeMapper, CrossDataRealtimeMapper crossDataRealtimeMapper,
CrossTurnDataRealtimeMapper crossTurnDataRealtimeMapper, CrossTurnDataRealtimeMapper crossTurnDataRealtimeMapper,
CrossDirDataHistMapper crossDirDataHistMapper, EventAlarmMapper eventAlarmMapper, CrossDirDataHistMapper crossDirDataHistMapper, EventAlarmMapper eventAlarmMapper,
RidInfoMapper ridInfoMapper, CrossDirInfoMapper crossDirInfoMapper, RidInfoMapper ridInfoMapper, BaseCrossDirInfoMapper baseCrossDirInfoMapper,
CrossSchemeOptLogMapper crossSchemeOptLogMapper) { CrossSchemeOptLogMapper crossSchemeOptLogMapper) {
this.greenwaveInfoMapper = greenwaveInfoMapper; this.greenwaveInfoMapper = greenwaveInfoMapper;
this.baseCrossInfoMapper = baseCrossInfoMapper; this.baseCrossInfoMapper = baseCrossInfoMapper;
...@@ -65,7 +64,7 @@ public class TrendServiceImpl implements TrendService { ...@@ -65,7 +64,7 @@ public class TrendServiceImpl implements TrendService {
this.crossDirDataHistMapper = crossDirDataHistMapper; this.crossDirDataHistMapper = crossDirDataHistMapper;
this.eventAlarmMapper = eventAlarmMapper; this.eventAlarmMapper = eventAlarmMapper;
this.ridInfoMapper = ridInfoMapper; this.ridInfoMapper = ridInfoMapper;
this.crossDirInfoMapper = crossDirInfoMapper; this.baseCrossDirInfoMapper = baseCrossDirInfoMapper;
this.crossSchemeOptLogMapper = crossSchemeOptLogMapper; this.crossSchemeOptLogMapper = crossSchemeOptLogMapper;
} }
...@@ -159,7 +158,7 @@ public class TrendServiceImpl implements TrendService { ...@@ -159,7 +158,7 @@ public class TrendServiceImpl implements TrendService {
buildRidData(abnormalCrossListVO, endCrossId, spilloverDirList); buildRidData(abnormalCrossListVO, endCrossId, spilloverDirList);
} else if (Objects.equals(realtimeStatus, CrossStatusEnum.CONGESTION.getCode())){ } else if (Objects.equals(realtimeStatus, CrossStatusEnum.CONGESTION.getCode())){
// 拥堵返回所有方向关联路口 // 拥堵返回所有方向关联路口
List<Integer> inDirs = crossDirInfoMapper.selectInDirsByCrossId(endCrossId); List<Integer> inDirs = baseCrossDirInfoMapper.selectInDirsByCrossId(endCrossId);
buildRidData(abnormalCrossListVO, endCrossId, inDirs); buildRidData(abnormalCrossListVO, endCrossId, inDirs);
} }
} }
......
<?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="net.wanji.opt.dao.mapper.CrossPhaseLightsMapper">
<!-- 通用查询映射结果 -->
<resultMap type="net.wanji.opt.po.base.CrossPhaseLightsPO" id="BaseResultMap">
<result property="lightsId" column="lights_id"/>
<result property="phaseId" column="phase_id"/>
<result property="crossId" column="cross_id"/>
</resultMap>
<!-- 查询相位灯组信息 -->
<select id="listCrossPhaseLights" resultMap="BaseResultMap">
select
lights_id
,phase_id
,cross_id
from
t_base_cross_phase_lights
where 1=1
<if test="crossId != null and crossId != ''">
and cross_id = #{crossId}
</if>
<if test="phaseId != null and phaseId != ''">
and phase_id = #{phaseId}
</if>
</select>
</mapper>
<?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="net.wanji.opt.dao.mapper.CrossPhaseMapper">
<!-- 通用查询映射结果 -->
<resultMap type="net.wanji.opt.po.base.CrossPhasePO" id="BaseResultMap">
<result property="id" column="id"/>
<result property="phaseNo" column="phase_no"/>
<result property="name" column="name"/>
<result property="sort" column="sort"/>
<result property="crossId" column="cross_id"/>
<result property="schemeId" column="plan_id"/>
<result property="ringNo" column="ring_no"/>
<result property="groupNo" column="group_no"/>
<!--<result property="type" column="type"/>-->
<result property="controlMode" column="control_mode"/>
<result property="phaseTime" column="phase_time"/>
<result property="greenTime" column="green_time"/>
<result property="greenFlashTime" column="green_flash_time"/>
<result property="pedFlashTime" column="ped_flash_time"/>
<result property="yellowTime" column="yellow_time"/>
<result property="redTime" column="red_time"/>
<result property="minGreenTime" column="min_green_time"/>
<result property="maxGreenTime" column="max_green_time"/>
<result property="gmtCreate" column="gmt_create"/>
<result property="gmtModified" column="gmt_modified"/>
</resultMap>
<select id="listCrossPhase" resultMap="BaseResultMap">
select
id
,phase_no
,name
,sort
,cross_id
,plan_id
,ring_no
,group_no
,control_mode
,phase_time
,green_time
,green_flash_time
,ped_flash_time
,yellow_time
,red_time
,min_green_time
,max_green_time
from
t_base_cross_phase
where 1=1
<if test="crossId != null and crossId != ''">
and cross_id = #{crossId}
</if>
<if test="schemeId != null and schemeId != ''">
and plan_id = #{schemeId}
</if>
</select>
</mapper>
<?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="net.wanji.opt.dao.mapper.CrossPlanMapper">
<!-- 通用查询映射结果 -->
<resultMap type="net.wanji.opt.po.base.CrossPlanPO" id="BaseResultMap">
<result property="id" column="id"/>
<result property="planNo" column="plan_no"/>
<result property="name" column="name"/>
<result property="crossId" column="cross_id"/>
</resultMap>
<!-- 查询计划基础信息列表 -->
<select id="listCrossPlanInfo" parameterType="String" resultMap="BaseResultMap">
select
id
,plan_no
,name
,cross_id
from
t_base_cross_plan
where 1=1
<if test="crossId != null and crossId != ''">
and cross_id = #{crossId}
</if>
</select>
</mapper>
<?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="net.wanji.opt.dao.mapper.CrossSchedulesMapper">
<!-- 通用查询映射结果 -->
<resultMap type="net.wanji.opt.po.base.CrossSchedulesPO" id="BaseResultMap">
<result property="id" column="id"/>
<result property="name" column="name"/>
<result property="crossId" column="cross_id"/>
<result property="status" column="status"/>
</resultMap>
<resultMap type="net.wanji.opt.po.base.CrossSchedulesPlanPO" id="CrossSchedulesPlanPO">
<result property="schedulesId" column="schedulesId"/>
<result property="schedulesName" column="schedulesName"/>
<result property="status" column="status"/>
<result property="planId" column="plan_id"/>
<result property="planNo" column="plan_no"/>
<result property="crossId" column="cross_id"/>
<result property="week" column="week"/>
<result property="specialDate" column="special_date"/>
</resultMap>
<!-- 查询调度基础信息列表 -->
<select id="listCrossSchedulesInfo" parameterType="String" resultMap="BaseResultMap">
select
id
,plan_no
,name
,cross_id
from
t_base_cross_plan
where 1=1
<if test="crossId != null and crossId != ''">
and cross_id = #{crossId}
</if>
</select>
<!-- 查询调度计划信息列表 -->
<select id="listSchedulesPlan" parameterType="String" resultMap="CrossSchedulesPlanPO">
SELECT
s.id schedulesId
,s.`name` schedulesName
,s.`status`
,s.cross_id
,p.id plan_id
,p.plan_no
,sp.`week`
,sp.special_date
FROM
t_base_cross_schedules s
,t_base_cross_schedules_plan sp
,t_base_cross_plan p
WHERE
s.id = sp.schedules_id
AND p.id = sp.plan_id
<if test="crossId != null and crossId != ''">
and s.cross_id = #{crossId}
</if>
<if test="status != null and status != ''">
and s.status = #{status}
</if>
</select>
</mapper>
<?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="net.wanji.opt.dao.mapper.CrossSectionMapper">
<!-- 通用查询映射结果 -->
<resultMap type="net.wanji.opt.po.base.CrossSectionPO" id="BaseResultMap">
<result property="id" column="id"/>
<result property="sectionNo" column="section_no"/>
<result property="startTime" column="start_time"/>
<result property="endTime" column="end_time"/>
<result property="crossId" column="cross_id"/>
<result property="planId" column="plan_id"/>
<result property="schemeId" column="scheme_id"/>
<result property="controlMode" column="control_mode"/>
</resultMap>
<!-- 查询时段基础信息列表 -->
<select id="listCrossSectionInfo" parameterType="String" resultMap="BaseResultMap">
select
id
,section_no
,start_time
,end_time
,cross_id
,plan_id
,scheme_id
,control_mode
from
t_base_cross_section
where 1=1
<if test="crossId != null and crossId != ''">
and cross_id = #{crossId}
</if>
<if test="planId != null and planId != ''">
and plan_id = #{planId}
</if>
</select>
</mapper>
<?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="net.wanji.opt.dao.mapper.LaneLightsMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="net.wanji.opt.po.base.LaneLightsPO">
<result property="laneId" column="lane_id"/>
<result property="crossId" column="cross_id"/>
<result property="lightsId" column="lights_id"/>
</resultMap>
<!-- 查询灯组车道列表信息 -->
<select id="listLightLane" parameterType="String" resultMap="BaseResultMap">
select
id
,lights_id
,lane_id
,cross_id
from
t_base_cross_lane_lights
where 1=1
<if test="crossId != null and crossId != '' ">
and cross_id = #{crossId}
</if>
<if test="lightsId != null and lightsId != '' ">
and lights_id = #{lightsId}
</if>
</select>
</mapper>
...@@ -75,18 +75,18 @@ public class ControlCommandStrategyServiceImpl implements ControlCommandStrategy ...@@ -75,18 +75,18 @@ public class ControlCommandStrategyServiceImpl implements ControlCommandStrategy
private void schemeSendDataInsert(SchemeSendVO schemeSendVO) { private void schemeSendDataInsert(SchemeSendVO schemeSendVO) {
// 入库操作 // 入库操作
List<CrossSchemePO> crossSchemePOList = new ArrayList<>(); List<BaseCrossSchemePO> baseCrossSchemePOList = new ArrayList<>();
schemeSendVO.getPatternList().forEach(pattern -> { schemeSendVO.getPatternList().forEach(pattern -> {
CrossSchemePO crossSchemePO = new CrossSchemePO(); BaseCrossSchemePO baseCrossSchemePO = new BaseCrossSchemePO();
crossSchemePO.setSchemeNo(pattern.getPatternNo()); baseCrossSchemePO.setSchemeNo(pattern.getPatternNo());
crossSchemePO.setName(pattern.getPatternName()); baseCrossSchemePO.setName(pattern.getPatternName());
crossSchemePO.setCrossId(schemeSendVO.getCrossCode()); baseCrossSchemePO.setCrossId(schemeSendVO.getCrossCode());
crossSchemePO.setCycle(Integer.parseInt(pattern.getCycle())); baseCrossSchemePO.setCycle(Integer.parseInt(pattern.getCycle()));
crossSchemePO.setCoordPhase(Integer.parseInt(pattern.getCoordPhase())); baseCrossSchemePO.setCoordPhase(Integer.parseInt(pattern.getCoordPhase()));
crossSchemePO.setOffset(Integer.parseInt(pattern.getOffset())); baseCrossSchemePO.setOffset(Integer.parseInt(pattern.getOffset()));
crossSchemePO.setSource(2); baseCrossSchemePO.setSource(2);
crossSchemePO.setIsDeleted(0); baseCrossSchemePO.setIsDeleted(0);
crossSchemePOList.add(crossSchemePO); baseCrossSchemePOList.add(baseCrossSchemePO);
pattern.getRings().forEach(ring -> { pattern.getRings().forEach(ring -> {
List<CrossPhasePO> crossPhasePOList = new ArrayList<>(); List<CrossPhasePO> crossPhasePOList = new ArrayList<>();
...@@ -115,7 +115,7 @@ public class ControlCommandStrategyServiceImpl implements ControlCommandStrategy ...@@ -115,7 +115,7 @@ public class ControlCommandStrategyServiceImpl implements ControlCommandStrategy
}); });
// 入库信号方案表 // 入库信号方案表
crossSchemeMapper.insertBatch(crossSchemePOList); crossSchemeMapper.insertBatch(baseCrossSchemePOList);
} }
@Override @Override
...@@ -149,7 +149,7 @@ public class ControlCommandStrategyServiceImpl implements ControlCommandStrategy ...@@ -149,7 +149,7 @@ public class ControlCommandStrategyServiceImpl implements ControlCommandStrategy
crossSectionPO.setCrossId(planSendVO.getCrossCode()); crossSectionPO.setCrossId(planSendVO.getCrossCode());
crossSectionPO.setPlanId(Integer.parseInt(plan.getPlanNo())); crossSectionPO.setPlanId(Integer.parseInt(plan.getPlanNo()));
crossSectionPO.setControlMode(Integer.parseInt(section.getControlMode())); crossSectionPO.setControlMode(Integer.parseInt(section.getControlMode()));
crossSectionPO.setScemeId(Integer.parseInt(section.getPatternNo())); crossSectionPO.setSchemeId(Integer.parseInt(section.getPatternNo()));
crossSectionPOList.add(crossSectionPO); crossSectionPOList.add(crossSectionPO);
}); });
// 入库路口时段表 // 入库路口时段表
......
...@@ -7,10 +7,10 @@ import com.hikvision.artemis.sdk.ArtemisHttpUtil; ...@@ -7,10 +7,10 @@ import com.hikvision.artemis.sdk.ArtemisHttpUtil;
import com.hikvision.artemis.sdk.config.ArtemisConfig; import com.hikvision.artemis.sdk.config.ArtemisConfig;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.wanji.databus.dao.mapper.BaseCrossLightsMapper; import net.wanji.databus.dao.entity.CrossLightsPO;
import net.wanji.databus.dao.mapper.CrossInfoMapper; import net.wanji.databus.dao.mapper.CrossInfoMapper;
import net.wanji.databus.dao.mapper.CrossLightsMapper;
import net.wanji.databus.dao.mapper.ManufacturerInfoMapper; import net.wanji.databus.dao.mapper.ManufacturerInfoMapper;
import net.wanji.databus.po.BaseCrossLightsPO;
import net.wanji.databus.po.CrossInfoPO; import net.wanji.databus.po.CrossInfoPO;
import net.wanji.databus.po.ManufacturerInfoPO; import net.wanji.databus.po.ManufacturerInfoPO;
import net.wanji.databus.vo.BaseCrossInfo; import net.wanji.databus.vo.BaseCrossInfo;
...@@ -36,7 +36,7 @@ import java.util.*; ...@@ -36,7 +36,7 @@ import java.util.*;
@RequiredArgsConstructor @RequiredArgsConstructor
public class HkLightsStatusServiceImpl implements HkLightsStatusService { public class HkLightsStatusServiceImpl implements HkLightsStatusService {
private final ArtemisConfig artemisConfig; private final ArtemisConfig artemisConfig;
private final BaseCrossLightsMapper baseCrossLightsMapper; private final CrossLightsMapper crossLightsMapper;
private final CrossInfoMapper crossInfoMapper; private final CrossInfoMapper crossInfoMapper;
private final ManufacturerInfoMapper manufacturerInfoMapper; private final ManufacturerInfoMapper manufacturerInfoMapper;
...@@ -93,7 +93,7 @@ public class HkLightsStatusServiceImpl implements HkLightsStatusService { ...@@ -93,7 +93,7 @@ public class HkLightsStatusServiceImpl implements HkLightsStatusService {
List<LightsStatusVO> result = new ArrayList<>(); List<LightsStatusVO> result = new ArrayList<>();
CrossInfoPO crossInfoPO = crossInfoMapper.selectByPrimaryKey(crossId); CrossInfoPO crossInfoPO = crossInfoMapper.selectByPrimaryKey(crossId);
List<BaseCrossLightsPO> CrossLightsPOList = baseCrossLightsMapper.selectByCrossId(crossId); List<CrossLightsPO> CrossLightsPOList = crossLightsMapper.selectByCrossId(crossId);
if (Objects.nonNull(crossInfoPO)) { if (Objects.nonNull(crossInfoPO)) {
String signalCode = crossInfoPO.getCode(); String signalCode = crossInfoPO.getCode();
...@@ -158,7 +158,7 @@ public class HkLightsStatusServiceImpl implements HkLightsStatusService { ...@@ -158,7 +158,7 @@ public class HkLightsStatusServiceImpl implements HkLightsStatusService {
Integer channelNo = channelStatePO.getChannelNo(); Integer channelNo = channelStatePO.getChannelNo();
Integer state = channelStatePO.getState(); Integer state = channelStatePO.getState();
String color = transferHKLampGroup(state); String color = transferHKLampGroup(state);
for (BaseCrossLightsPO po : CrossLightsPOList) { for (CrossLightsPO po : CrossLightsPOList) {
if (StringUtils.equals(po.getLightsNo(), String.valueOf(channelNo))) { if (StringUtils.equals(po.getLightsNo(), String.valueOf(channelNo))) {
String direction = po.getDir().toString(); String direction = po.getDir().toString();
String turn = po.getTurn().toString(); String turn = po.getTurn().toString();
...@@ -241,7 +241,7 @@ public class HkLightsStatusServiceImpl implements HkLightsStatusService { ...@@ -241,7 +241,7 @@ public class HkLightsStatusServiceImpl implements HkLightsStatusService {
String crossId = crossInfoMapper.selectIdByCodeAndManufacturerId(entity.getCode(), String crossId = crossInfoMapper.selectIdByCodeAndManufacturerId(entity.getCode(),
manufacturerInfoPO.getId()); manufacturerInfoPO.getId());
List<BaseCrossLightsPO> CrossLightsPOList = baseCrossLightsMapper.selectByCrossId(crossId); List<CrossLightsPO> crossLightsPOS = crossLightsMapper.selectByCrossId(crossId);
if (Constants.HK_SUCCESS_CODE.equals(object.getInteger(Constants.HK_CODE_KEY))) { if (Constants.HK_SUCCESS_CODE.equals(object.getInteger(Constants.HK_CODE_KEY))) {
JSONObject data = object.getJSONObject("data"); JSONObject data = object.getJSONObject("data");
...@@ -297,7 +297,7 @@ public class HkLightsStatusServiceImpl implements HkLightsStatusService { ...@@ -297,7 +297,7 @@ public class HkLightsStatusServiceImpl implements HkLightsStatusService {
JSONObject channelObj = channelState.getJSONObject(k); JSONObject channelObj = channelState.getJSONObject(k);
int channelNo = channelObj.getIntValue("channelNo"); int channelNo = channelObj.getIntValue("channelNo");
String color = transferHKLampGroup(channelObj.getIntValue("state")); String color = transferHKLampGroup(channelObj.getIntValue("state"));
for (BaseCrossLightsPO po : CrossLightsPOList) { for (CrossLightsPO po : crossLightsPOS) {
if (StringUtils.equals(po.getLightsNo(), String.valueOf(channelNo))) { if (StringUtils.equals(po.getLightsNo(), String.valueOf(channelNo))) {
String direction = po.getDir().toString(); String direction = po.getDir().toString();
String turn = po.getTurn().toString(); String turn = po.getTurn().toString();
......
...@@ -6,7 +6,7 @@ import com.hikvision.artemis.sdk.ArtemisHttpUtil; ...@@ -6,7 +6,7 @@ import com.hikvision.artemis.sdk.ArtemisHttpUtil;
import com.hikvision.artemis.sdk.config.ArtemisConfig; import com.hikvision.artemis.sdk.config.ArtemisConfig;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import net.wanji.databus.dao.entity.CrossPlanPO; import net.wanji.databus.dao.entity.CrossPlanPO;
import net.wanji.databus.dao.entity.CrossSchemePO; import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import net.wanji.databus.dao.entity.CrossSectionPO; import net.wanji.databus.dao.entity.CrossSectionPO;
import net.wanji.databus.dao.mapper.CrossPlanMapper; import net.wanji.databus.dao.mapper.CrossPlanMapper;
import net.wanji.databus.dao.mapper.CrossSchemeMapper; import net.wanji.databus.dao.mapper.CrossSchemeMapper;
...@@ -109,10 +109,10 @@ public class HkPlanSectionServiceImpl implements HkPlanSectionService { ...@@ -109,10 +109,10 @@ public class HkPlanSectionServiceImpl implements HkPlanSectionService {
crossSectionPO.setControlMode(controlType); crossSectionPO.setControlMode(controlType);
// 获取方案ID // 获取方案ID
Integer schemeNo = sectionPO.getPatternNo(); Integer schemeNo = sectionPO.getPatternNo();
CrossSchemePO crossSchemePO = crossSchemeMapper.selectByCrossIdAndSchemeNo(crossId, schemeNo); BaseCrossSchemePO baseCrossSchemePO = crossSchemeMapper.selectByCrossIdAndSchemeNo(crossId, schemeNo);
if (Objects.nonNull(crossSchemePO)) { if (Objects.nonNull(baseCrossSchemePO)) {
Integer schemePOId = crossSchemePO.getId(); Integer schemePOId = baseCrossSchemePO.getId();
crossSectionPO.setScemeId(schemePOId); crossSectionPO.setSchemeId(schemePOId);
// 写入数据库 // 写入数据库
crossSectionMapper.deleteOne(crossId, sectionPO.getTimeSecNo(), planId); crossSectionMapper.deleteOne(crossId, sectionPO.getTimeSecNo(), planId);
crossSectionMapper.insertOne(crossSectionPO); crossSectionMapper.insertOne(crossSectionPO);
......
...@@ -9,7 +9,7 @@ import lombok.RequiredArgsConstructor; ...@@ -9,7 +9,7 @@ import lombok.RequiredArgsConstructor;
import net.wanji.databus.dao.entity.CrossLightsPO; import net.wanji.databus.dao.entity.CrossLightsPO;
import net.wanji.databus.dao.entity.CrossPhaseLightsPO; import net.wanji.databus.dao.entity.CrossPhaseLightsPO;
import net.wanji.databus.dao.entity.CrossPhasePO; import net.wanji.databus.dao.entity.CrossPhasePO;
import net.wanji.databus.dao.entity.CrossSchemePO; import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import net.wanji.databus.dao.mapper.CrossLightsMapper; import net.wanji.databus.dao.mapper.CrossLightsMapper;
import net.wanji.databus.dao.mapper.CrossPhaseLightsMapper; import net.wanji.databus.dao.mapper.CrossPhaseLightsMapper;
import net.wanji.databus.dao.mapper.CrossPhaseMapper; import net.wanji.databus.dao.mapper.CrossPhaseMapper;
...@@ -204,18 +204,18 @@ public class HkSchemePhaseLightsServiceImpl implements HkSchemePhaseLightsServic ...@@ -204,18 +204,18 @@ public class HkSchemePhaseLightsServiceImpl implements HkSchemePhaseLightsServic
Integer coordPhase = scheme.getInteger("coordPhase"); Integer coordPhase = scheme.getInteger("coordPhase");
Integer offset = scheme.getInteger("offset"); Integer offset = scheme.getInteger("offset");
// 构造数据库记录 // 构造数据库记录
CrossSchemePO crossSchemePO = new CrossSchemePO(); BaseCrossSchemePO baseCrossSchemePO = new BaseCrossSchemePO();
crossSchemePO.setSchemeNo(patternNo.toString()); baseCrossSchemePO.setSchemeNo(patternNo.toString());
crossSchemePO.setName(patternName); baseCrossSchemePO.setName(patternName);
crossSchemePO.setCrossId(crossId); baseCrossSchemePO.setCrossId(crossId);
crossSchemePO.setCycle(cycle); baseCrossSchemePO.setCycle(cycle);
crossSchemePO.setCoordPhase(coordPhase); baseCrossSchemePO.setCoordPhase(coordPhase);
crossSchemePO.setOffset(offset); baseCrossSchemePO.setOffset(offset);
crossSchemePO.setSource(2); baseCrossSchemePO.setSource(2);
crossSchemePO.setIsDeleted(0); baseCrossSchemePO.setIsDeleted(0);
// 插入方案数据返回自增ID // 插入方案数据返回自增ID
crossSchemeMapper.insertOne(crossSchemePO); crossSchemeMapper.insertOne(baseCrossSchemePO);
Integer schemePOId = crossSchemePO.getId(); Integer schemePOId = baseCrossSchemePO.getId();
// 生成相位数据 // 生成相位数据
JSONArray phases = scheme.getJSONArray("phaseInfos"); JSONArray phases = scheme.getJSONArray("phaseInfos");
for (int j = 0; j < phases.size(); j++) { for (int j = 0; j < phases.size(); j++) {
......
...@@ -142,14 +142,14 @@ public class StaticInfoServiceImpl implements StaticInfoService { ...@@ -142,14 +142,14 @@ public class StaticInfoServiceImpl implements StaticInfoService {
@Override @Override
public net.wanji.databus.vo.SchemePhaseLightsVO buildSchemePhaseLightsResponse(SchemePhaseLightsDTO schemePhaseLightsDTO) { public net.wanji.databus.vo.SchemePhaseLightsVO buildSchemePhaseLightsResponse(SchemePhaseLightsDTO schemePhaseLightsDTO) {
String crossId = schemePhaseLightsDTO.getCrossId(); String crossId = schemePhaseLightsDTO.getCrossId();
List<CrossSchemePO> crossSchemePOList = crossSchemeMapper.selectByCrossId(crossId); List<BaseCrossSchemePO> baseCrossSchemePOList = crossSchemeMapper.selectByCrossId(crossId);
List<CrossPhasePO> crossPhasePOList = crossPhaseMapper.selectByCrossId(crossId); List<CrossPhasePO> crossPhasePOList = crossPhaseMapper.selectByCrossId(crossId);
List<CrossLightsPO> crossLightsPOList = crossLightsMapper.selectByCrossId(crossId); List<CrossLightsPO> crossLightsPOList = crossLightsMapper.selectByCrossId(crossId);
List<CrossPhaseLightsPO> crossPhaseLightsPOList = crossPhaseLightsMapper.selectByCrossId(crossId); List<CrossPhaseLightsPO> crossPhaseLightsPOList = crossPhaseLightsMapper.selectByCrossId(crossId);
net.wanji.databus.vo.SchemePhaseLightsVO schemePhaseLightsVO = new net.wanji.databus.vo.SchemePhaseLightsVO(); net.wanji.databus.vo.SchemePhaseLightsVO schemePhaseLightsVO = new net.wanji.databus.vo.SchemePhaseLightsVO();
schemePhaseLightsVO.setCrossSchemeList(crossSchemePOList); schemePhaseLightsVO.setCrossSchemeList(baseCrossSchemePOList);
schemePhaseLightsVO.setCrossPhaseList(crossPhasePOList); schemePhaseLightsVO.setCrossPhaseList(crossPhasePOList);
schemePhaseLightsVO.setCrossLightsList(crossLightsPOList); schemePhaseLightsVO.setCrossLightsList(crossLightsPOList);
schemePhaseLightsVO.setCrossPhaseLightsPOList(crossPhaseLightsPOList); schemePhaseLightsVO.setCrossPhaseLightsPOList(crossPhaseLightsPOList);
......
...@@ -47,7 +47,7 @@ public class WanJiCommonStaticInfoServiceImpl implements WanJiCommonStaticInfoSe ...@@ -47,7 +47,7 @@ public class WanJiCommonStaticInfoServiceImpl implements WanJiCommonStaticInfoSe
JsonViewObject jsonViewObject = rpcService(httpRestUtil, rpcUri, null, JSONObject.toJSONString(commonParamMap)); JsonViewObject jsonViewObject = rpcService(httpRestUtil, rpcUri, null, JSONObject.toJSONString(commonParamMap));
SchemePhaseLightsVO content = (SchemePhaseLightsVO) jsonViewObject.getContent(); SchemePhaseLightsVO content = (SchemePhaseLightsVO) jsonViewObject.getContent();
if (Objects.nonNull(content)) { if (Objects.nonNull(content)) {
List<CrossSchemePO> crossSchemeList = content.getCrossSchemeList(); List<BaseCrossSchemePO> crossSchemeList = content.getCrossSchemeList();
crossSchemeList.forEach(crossSchemePO -> { crossSchemeList.forEach(crossSchemePO -> {
crossSchemeMapper.deleteOne(crossId, crossSchemePO.getSchemeNo()); crossSchemeMapper.deleteOne(crossId, crossSchemePO.getSchemeNo());
crossSchemeMapper.insertOne(crossSchemePO); crossSchemeMapper.insertOne(crossSchemePO);
......
package net.wanji.opt.po.base; package net.wanji.databus.dao.entity;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -11,7 +11,7 @@ import java.util.Date; ...@@ -11,7 +11,7 @@ import java.util.Date;
* @desc 路口方向基础信息 * @desc 路口方向基础信息
*/ */
@Data @Data
public class CrossDirInfoPO { public class BaseCrossDirInfoPO {
/** 路口方向ID(路口ID_方向_进出口_主辅路序号) */ /** 路口方向ID(路口ID_方向_进出口_主辅路序号) */
@ApiModelProperty(name = "路口方向ID(路口ID_方向_进出口_主辅路序号)",notes = "") @ApiModelProperty(name = "路口方向ID(路口ID_方向_进出口_主辅路序号)",notes = "")
......
package net.wanji.web.po.scheme; package net.wanji.databus.dao.entity;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -12,7 +12,7 @@ import java.util.Date; ...@@ -12,7 +12,7 @@ import java.util.Date;
* @date 2022/12/28 17:45 * @date 2022/12/28 17:45
*/ */
@Data @Data
public class CrossSchedulesPO { public class BaseCrossSchedulesPO {
/** 调度ID */ /** 调度ID */
@ApiModelProperty(name = "调度ID",notes = "") @ApiModelProperty(name = "调度ID",notes = "")
private Integer id ; private Integer id ;
......
package net.wanji.opt.po.base; package net.wanji.databus.dao.entity;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -9,7 +9,7 @@ import lombok.Data; ...@@ -9,7 +9,7 @@ import lombok.Data;
* @desc 路口调度计划信息 * @desc 路口调度计划信息
*/ */
@Data @Data
public class CrossSchedulesPlanPO { public class BaseCrossSchedulesPlanPO {
@ApiModelProperty(name = "调度ID",notes = "") @ApiModelProperty(name = "调度ID",notes = "")
private Integer schedulesId; private Integer schedulesId;
......
...@@ -10,7 +10,7 @@ import java.util.Date; ...@@ -10,7 +10,7 @@ import java.util.Date;
* @date 2023/1/3 9:40 * @date 2023/1/3 9:40
*/ */
@Data @Data
public class CrossSchemePO { public class BaseCrossSchemePO {
/** 方案ID */ /** 方案ID */
@ApiModelProperty(name = "方案ID",notes = "") @ApiModelProperty(name = "方案ID",notes = "")
private Integer id ; private Integer id ;
......
...@@ -34,7 +34,7 @@ public class CrossSectionPO { ...@@ -34,7 +34,7 @@ public class CrossSectionPO {
private Integer controlMode ; private Integer controlMode ;
/** 方案ID */ /** 方案ID */
@ApiModelProperty(value = "方案ID",notes = "") @ApiModelProperty(value = "方案ID",notes = "")
private Integer scemeId; private Integer schemeId;
/** 创建时间 */ /** 创建时间 */
@ApiModelProperty(value = "创建时间",notes = "") @ApiModelProperty(value = "创建时间",notes = "")
private Date gmtCreate ; private Date gmtCreate ;
......
package net.wanji.opt.dao.mapper; package net.wanji.databus.dao.mapper;
import net.wanji.opt.po.base.CrossDirInfoPO; import net.wanji.databus.dao.entity.BaseCrossDirInfoPO;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List; import java.util.List;
...@@ -11,11 +11,11 @@ import java.util.List; ...@@ -11,11 +11,11 @@ import java.util.List;
* @desc CrossInfoMapper * @desc CrossInfoMapper
*/ */
@Repository @Repository
public interface CrossDirInfoMapper { public interface BaseCrossDirInfoMapper {
List<Integer> selectInDirsByCrossId(String endCrossId); List<Integer> selectInDirsByCrossId(String endCrossId);
CrossDirInfoPO selectByCrossIdAndDirType(String crossId, Integer key); BaseCrossDirInfoPO selectByCrossIdAndDirType(String crossId, Integer key);
List<CrossDirInfoPO> selectByCrossId(String crossId); List<BaseCrossDirInfoPO> selectByCrossId(String crossId);
} }
...@@ -11,7 +11,14 @@ import java.util.List; ...@@ -11,7 +11,14 @@ import java.util.List;
* @date 2022/12/20 10:32 * @date 2022/12/20 10:32
*/ */
@Repository @Repository
public interface CrossLaneLightsMapper { public interface BaseCrossLaneLightsMapper {
/**
* 查询灯组车道列表信息
* @return
*/
List<CrossLaneLightsPO> listLightLane();
void deleteByLaneIds(@Param("laneIds") List<String> laneIds); void deleteByLaneIds(@Param("laneIds") List<String> laneIds);
void deleteByCrossId(@Param("crossId") String crossId); void deleteByCrossId(@Param("crossId") String crossId);
...@@ -27,4 +34,6 @@ public interface CrossLaneLightsMapper { ...@@ -27,4 +34,6 @@ public interface CrossLaneLightsMapper {
@Param("lightId") Integer lightId); @Param("lightId") Integer lightId);
List<CrossLaneLightsPO> selectByLightsId(@Param("lightsId") Integer lightsId); List<CrossLaneLightsPO> selectByLightsId(@Param("lightsId") Integer lightsId);
} }
package net.wanji.databus.dao.mapper;
import net.wanji.databus.dao.entity.CrossPhaseLightsPO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.Collection;
import java.util.List;
/**
* 相位灯组关系;(t_base_cross_phase_lights)表数据库访问层
* @author : hanbing
* @date : 2023-1-3
*/
@Repository
public interface BaseCrossPhaseLightsMapper {
void deleteByCrossId(@Param("crossId") String crossId);
void insertBatch(@Param("entities") Collection<CrossPhaseLightsPO> entities);
List<CrossPhaseLightsPO> selectByPhaseId(@Param("phaseId") Integer phaseId);
List<CrossPhaseLightsPO> selectByLightsId(@Param("lightsId") Integer lightsId);
void updateLightsId(@Param("oldId") Integer oldId, @Param("newId") Integer newId);
Integer selectIdByThreeIds(Integer lightsId, Integer phaseId, String crossId);
void insertOne(CrossPhaseLightsPO crossPhaseLightsPO);
List<CrossPhaseLightsPO> listCrossPhaseLightsPO(@Param("entity") CrossPhaseLightsPO entity);
}
package net.wanji.web.mapper.scheme; package net.wanji.databus.dao.mapper;
import net.wanji.databus.dao.entity.CrossPhasePO; import net.wanji.databus.dao.entity.CrossPhasePO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
......
package net.wanji.web.mapper.scheme; package net.wanji.databus.dao.mapper;
import net.wanji.databus.dao.entity.CrossPlanPO; import net.wanji.databus.dao.entity.CrossPlanPO;
import net.wanji.web.dto.RunningPlanDTO; import net.wanji.databus.dto.RunningPlanDTO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
......
package net.wanji.web.mapper.scheme; package net.wanji.databus.dao.mapper;
import net.wanji.web.po.scheme.CrossSchedulesPO; import net.wanji.databus.dao.entity.BaseCrossSchedulesPO;
import net.wanji.databus.dao.entity.BaseCrossSchedulesPlanPO;
import net.wanji.databus.dao.entity.CrossSchedulesPO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
...@@ -15,18 +17,33 @@ import java.util.List; ...@@ -15,18 +17,33 @@ import java.util.List;
@Repository @Repository
public interface BaseCrossSchedulesMapper { public interface BaseCrossSchedulesMapper {
/**
* 查询调度基础信息列表
* @param crossId
* @return
*/
List<CrossSchedulesPO> listCrossSchedulesInfo(String crossId);
/**
* 查询调度计划信息列表
* @param crossId
* @param status
* @return
*/
List<BaseCrossSchedulesPlanPO> listSchedulesPlan(@Param("crossId") String crossId, @Param("status") Integer status);
void deleteByCrossId(@Param("crossId") String crossId); void deleteByCrossId(@Param("crossId") String crossId);
void insertOne(CrossSchedulesPO crossSchedulesPO); void insertOne(BaseCrossSchedulesPO crossSchedulesPO);
List<CrossSchedulesPO> selectByCrossId(@Param("crossId") String crossId); List<BaseCrossSchedulesPO> selectByCrossId(@Param("crossId") String crossId);
CrossSchedulesPO selectByCrossIdAndScheduleNo(@Param("crossId") String crossId, BaseCrossSchedulesPO selectByCrossIdAndScheduleNo(@Param("crossId") String crossId,
@Param("scheduleNo") String scheduleNo); @Param("scheduleNo") String scheduleNo);
void resetStatus(String crossId); void resetStatus(String crossId);
void updateStatus(Integer scheduleId); void updateStatus(Integer scheduleId);
CrossSchedulesPO selectById(Integer scheduleId); BaseCrossSchedulesPO selectById(Integer scheduleId);
} }
package net.wanji.web.mapper.scheme; package net.wanji.databus.dao.mapper;
import net.wanji.databus.dao.entity.CrossSchemePO; import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
...@@ -15,9 +15,12 @@ import java.util.Set; ...@@ -15,9 +15,12 @@ import java.util.Set;
@Repository @Repository
public interface BaseCrossSchemeMapper { public interface BaseCrossSchemeMapper {
List<BaseCrossSchemePO> listCrossSchemeInfo(@Param("crossId") String crossId,
@Param("schemeNo") String schemeNo,
@Param("id") Integer id);
void deleteByCrossId(@Param("crossId") String crossId); void deleteByCrossId(@Param("crossId") String crossId);
void insertBatch(@Param("entities") List<CrossSchemePO> entities); void insertBatch(@Param("entities") List<BaseCrossSchemePO> entities);
Integer selectIdByCrossIdAndSchemeNo(@Param("crossId") String crossId, @Param("schemeNo") String schemeNo); Integer selectIdByCrossIdAndSchemeNo(@Param("crossId") String crossId, @Param("schemeNo") String schemeNo);
...@@ -25,19 +28,19 @@ public interface BaseCrossSchemeMapper { ...@@ -25,19 +28,19 @@ public interface BaseCrossSchemeMapper {
@Param("schemeNo") String schemeNo, @Param("schemeNo") String schemeNo,
@Param("phaseId") Integer phaseId); @Param("phaseId") Integer phaseId);
List<CrossSchemePO> selectByCrossId(@Param("crossId") String crossId); List<BaseCrossSchemePO> selectByCrossId(@Param("crossId") String crossId);
Integer selectIdByCrossIdAndSchemeName(@Param("crossId") String crossId, Integer selectIdByCrossIdAndSchemeName(@Param("crossId") String crossId,
@Param("schemeName") String schemeName); @Param("schemeName") String schemeName);
CrossSchemePO selectByCrossIdAndSchemeName(@Param("crossId") String crossId, BaseCrossSchemePO selectByCrossIdAndSchemeName(@Param("crossId") String crossId,
@Param("schemeName") String schemeName); @Param("schemeName") String schemeName);
CrossSchemePO selectById(@Param("id") Integer id); BaseCrossSchemePO selectById(@Param("id") Integer id);
void insertOne(CrossSchemePO crossSchemePO); void insertOne(BaseCrossSchemePO baseCrossSchemePO);
void update(CrossSchemePO crossSchemePO); void update(BaseCrossSchemePO baseCrossSchemePO);
Set<Integer> selectIdsByCrossId(String crossId); Set<Integer> selectIdsByCrossId(String crossId);
...@@ -46,4 +49,7 @@ public interface BaseCrossSchemeMapper { ...@@ -46,4 +49,7 @@ public interface BaseCrossSchemeMapper {
void resetStatus(String crossId); void resetStatus(String crossId);
void updateStatus(Integer schemeId); void updateStatus(Integer schemeId);
BaseCrossSchemePO selectByCrossIdAndSchemeNo(@Param("crossId") String crossId,
@Param("schemeNo") Integer schemeNo);
} }
package net.wanji.web.mapper.scheme; package net.wanji.databus.dao.mapper;
import net.wanji.databus.dao.entity.CrossSectionPO; import net.wanji.databus.dao.entity.CrossSectionPO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
......
...@@ -6,13 +6,13 @@ import org.apache.ibatis.annotations.Param; ...@@ -6,13 +6,13 @@ import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
/** /**
* @author duanruiming * @author Kent HAN
* @date 2023/05/09 9:10 * @date 2022/11/15 14:57
*/ */
public interface CrossInfoMapper { public interface CrossInfoMapper {
CrossInfoPO selectByPrimaryKey(@Param("key") String key); CrossInfoPO selectByPrimaryKey(@Param("key") String key);
void insertBatch(@Param("entities") List<CrossInfoPO> CrossInfoPOList); void insertBatch(@Param("entities") List<CrossInfoPO> crossInfoPOList);
List<String> selectCrossCodesByIds(@Param("entities") List<String> crossIdList); List<String> selectCrossCodesByIds(@Param("entities") List<String> crossIdList);
...@@ -24,13 +24,13 @@ public interface CrossInfoMapper { ...@@ -24,13 +24,13 @@ public interface CrossInfoMapper {
List<CrossInfoPO> selectByOptionals(@Param("crossName") String crossName, List<CrossInfoPO> selectByOptionals(@Param("crossName") String crossName,
@Param("manufacturerId") Integer manufacturerId); @Param("manufacturerId") Integer manufacturerId);
void insertOne(CrossInfoPO CrossInfoPO); void insertOne(CrossInfoPO crossInfoPO);
void updateOne(CrossInfoPO CrossInfoPO); void updateOne(CrossInfoPO crossInfoPO);
void deleteBatch(@Param("ids") List<String> ids); void deleteBatch(@Param("ids") List<String> ids);
void updateOneByCodeAndManufacturerId(CrossInfoPO CrossInfoPO); void updateOneByCodeAndManufacturerId(CrossInfoPO crossInfoPO);
void deleteById(String id); void deleteById(String id);
......
...@@ -19,10 +19,4 @@ public interface CrossPhaseLightsMapper { ...@@ -19,10 +19,4 @@ public interface CrossPhaseLightsMapper {
void insertBatch(@Param("entities") List<CrossPhaseLightsPO> crossPhaseLightsPOList); void insertBatch(@Param("entities") List<CrossPhaseLightsPO> crossPhaseLightsPOList);
List<CrossPhaseLightsPO> selectByCrossId(String crossId); List<CrossPhaseLightsPO> selectByCrossId(String crossId);
List<CrossPhaseLightsPO> selectByEntity(@Param("entity") CrossPhaseLightsPO entity);
void updateLightsId(@Param("oldId") Integer oldId, @Param("newId") Integer newId);
} }
package net.wanji.databus.dao.mapper; package net.wanji.databus.dao.mapper;
import net.wanji.databus.dao.entity.CrossSchemePO; import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
...@@ -10,16 +10,16 @@ import java.util.List; ...@@ -10,16 +10,16 @@ import java.util.List;
* @date 2022/11/16 17:28 * @date 2022/11/16 17:28
*/ */
public interface CrossSchemeMapper { public interface CrossSchemeMapper {
void insertBatch(@Param("entities") List<CrossSchemePO> crossSchemePOList); void insertBatch(@Param("entities") List<BaseCrossSchemePO> baseCrossSchemePOList);
void insertOne(CrossSchemePO crossSchemePO); void insertOne(BaseCrossSchemePO baseCrossSchemePO);
void deleteOne(@Param("crossId") String crossId, @Param("patternNo") String patternNo); void deleteOne(@Param("crossId") String crossId, @Param("patternNo") String patternNo);
CrossSchemePO selectByCrossIdAndSchemeNo(@Param("crossId") String crossId, BaseCrossSchemePO selectByCrossIdAndSchemeNo(@Param("crossId") String crossId,
@Param("schemeNo") Integer schemeNo); @Param("schemeNo") Integer schemeNo);
List<CrossSchemePO> selectByCrossId(@Param("crossId") String crossId); List<BaseCrossSchemePO> selectByCrossId(@Param("crossId") String crossId);
void deleteByCrossId(String crossId); void deleteByCrossId(String crossId);
} }
package net.wanji.web.dto; package net.wanji.databus.dto;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
......
...@@ -4,7 +4,7 @@ import lombok.Data; ...@@ -4,7 +4,7 @@ import lombok.Data;
import net.wanji.databus.dao.entity.CrossLightsPO; import net.wanji.databus.dao.entity.CrossLightsPO;
import net.wanji.databus.dao.entity.CrossPhaseLightsPO; import net.wanji.databus.dao.entity.CrossPhaseLightsPO;
import net.wanji.databus.dao.entity.CrossPhasePO; import net.wanji.databus.dao.entity.CrossPhasePO;
import net.wanji.databus.dao.entity.CrossSchemePO; import net.wanji.databus.dao.entity.BaseCrossSchemePO;
import java.util.List; import java.util.List;
...@@ -14,7 +14,7 @@ import java.util.List; ...@@ -14,7 +14,7 @@ import java.util.List;
*/ */
@Data @Data
public class SchemePhaseLightsVO { public class SchemePhaseLightsVO {
private List<CrossSchemePO> crossSchemeList; private List<BaseCrossSchemePO> crossSchemeList;
private List<CrossPhasePO> crossPhaseList; private List<CrossPhasePO> crossPhaseList;
private List<CrossLightsPO> crossLightsList; private List<CrossLightsPO> crossLightsList;
private List<CrossPhaseLightsPO> crossPhaseLightsPOList; private List<CrossPhaseLightsPO> crossPhaseLightsPOList;
......
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.opt.dao.mapper.CrossDirInfoMapper"> <mapper namespace="net.wanji.databus.dao.mapper.BaseCrossDirInfoMapper">
<select id="selectInDirsByCrossId" resultType="java.lang.Integer"> <select id="selectInDirsByCrossId" resultType="java.lang.Integer">
SELECT dir_type SELECT dir_type
...@@ -8,14 +8,14 @@ ...@@ -8,14 +8,14 @@
WHERE cross_id = #{crossId} and in_out_type = 1 WHERE cross_id = #{crossId} and in_out_type = 1
</select> </select>
<select id="selectByCrossIdAndDirType" resultType="net.wanji.opt.po.base.CrossDirInfoPO"> <select id="selectByCrossIdAndDirType" resultType="net.wanji.databus.dao.entity.BaseCrossDirInfoPO">
select select
id,dir_type,in_out_type,cross_id,length,is_pedestrian,gmt_create,gmt_modified id,dir_type,in_out_type,cross_id,length,is_pedestrian,gmt_create,gmt_modified
from t_base_cross_dir_info from t_base_cross_dir_info
where cross_id = #{crossId} and dir_type = #{key} and in_out_type = 1 where cross_id = #{crossId} and dir_type = #{key} and in_out_type = 1
</select> </select>
<select id="selectByCrossId" resultType="net.wanji.opt.po.base.CrossDirInfoPO"> <select id="selectByCrossId" resultType="net.wanji.databus.dao.entity.BaseCrossDirInfoPO">
select select
id,dir_type,in_out_type,cross_id,length,is_pedestrian,gmt_create,gmt_modified id,dir_type,in_out_type,cross_id,length,is_pedestrian,gmt_create,gmt_modified
from t_base_cross_dir_info from t_base_cross_dir_info
......
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.databus.dao.mapper.CrossLaneLightsMapper"> <mapper namespace="net.wanji.databus.dao.mapper.BaseCrossLaneLightsMapper">
<!-- 通用查询映射结果 --> <!-- 通用查询映射结果 -->
<resultMap type="net.wanji.databus.po.CrossLaneLightsPO" id="BaseResultMap"> <resultMap type="net.wanji.databus.po.CrossLaneLightsPO" id="BaseResultMap">
...@@ -12,6 +12,24 @@ ...@@ -12,6 +12,24 @@
<result property="gmtModified" column="gmt_modified"/> <result property="gmtModified" column="gmt_modified"/>
</resultMap> </resultMap>
<!-- 查询灯组车道列表信息 -->
<select id="listLightLane" parameterType="String" resultMap="BaseResultMap">
select
id
,lights_id
,lane_id
,cross_id
from
t_base_cross_lane_lights
where 1=1
<if test="crossId != null and crossId != '' ">
and cross_id = #{crossId}
</if>
<if test="lightsId != null and lightsId != '' ">
and lights_id = #{lightsId}
</if>
</select>
<insert id="insertBatch" keyProperty="id" useGeneratedKeys="true"> <insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
insert into t_base_cross_lane_lights(lights_id,lane_id,cross_id) insert into t_base_cross_lane_lights(lights_id,lane_id,cross_id)
values values
......
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.web.mapper.scheme.BaseCrossPhaseMapper"> <mapper namespace="net.wanji.databus.dao.mapper.BaseCrossPhaseMapper">
<!-- 通用查询映射结果 --> <!-- 通用查询映射结果 -->
<resultMap type="net.wanji.databus.dao.entity.CrossPhasePO" id="BaseResultMap"> <resultMap type="net.wanji.databus.dao.entity.CrossPhasePO" id="BaseResultMap">
......
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.web.mapper.scheme.BaseCrossPlanMapper"> <mapper namespace="net.wanji.databus.dao.mapper.BaseCrossPlanMapper">
<!-- 通用查询映射结果 --> <!-- 通用查询映射结果 -->
<resultMap type="net.wanji.databus.dao.entity.CrossPlanPO" id="BaseResultMap"> <resultMap type="net.wanji.databus.dao.entity.CrossPlanPO" id="BaseResultMap">
...@@ -31,10 +31,10 @@ ...@@ -31,10 +31,10 @@
</select> </select>
<!-- 查询dailyPlanList --> <!-- 查询dailyPlanList -->
<resultMap id="dailyPlanList" type="net.wanji.web.dto.RunningPlanDTO$DailyPlanListElement"> <resultMap id="dailyPlanList" type="net.wanji.databus.dto.RunningPlanDTO$DailyPlanListElement">
<id column="planNo" property="planNo"/> <id column="planNo" property="planNo"/>
<result column="name" property="name"/> <result column="name" property="name"/>
<collection property="timeList" ofType="net.wanji.web.dto.RunningPlanDTO$TimeListElement"> <collection property="timeList" ofType="net.wanji.databus.dto.RunningPlanDTO$TimeListElement">
<result column="startTime" property="startTime"/> <result column="startTime" property="startTime"/>
<result column="endTime" property="endTime"/> <result column="endTime" property="endTime"/>
<result column="schemeName" property="schemeName"/> <result column="schemeName" property="schemeName"/>
......
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.web.mapper.scheme.BaseCrossSchedulesMapper"> <mapper namespace="net.wanji.databus.dao.mapper.BaseCrossSchedulesMapper">
<!-- 通用查询映射结果 --> <!-- 通用查询映射结果 -->
<resultMap type="net.wanji.web.po.scheme.CrossSchedulesPO" id="BaseResultMap"> <resultMap type="net.wanji.databus.dao.entity.BaseCrossSchedulesPO" id="BaseResultMap">
<result property="id" column="id"/> <result property="id" column="id"/>
<result property="scheduleNo" column="schedule_no"/> <result property="scheduleNo" column="schedule_no"/>
<result property="name" column="name"/> <result property="name" column="name"/>
...@@ -42,19 +42,71 @@ ...@@ -42,19 +42,71 @@
where cross_id = #{crossId} where cross_id = #{crossId}
</select> </select>
<select id="selectByCrossIdAndScheduleNo" resultType="net.wanji.web.po.scheme.CrossSchedulesPO"> <select id="selectByCrossIdAndScheduleNo" resultType="net.wanji.databus.dao.entity.BaseCrossSchedulesPO">
select select
id,schedule_no,name,status,cross_id,gmt_create,gmt_modified id,schedule_no,name,status,cross_id,gmt_create,gmt_modified
from t_base_cross_schedules from t_base_cross_schedules
where cross_id = #{crossId} and schedule_no = #{scheduleNo} where cross_id = #{crossId} and schedule_no = #{scheduleNo}
</select> </select>
<select id="selectById" resultType="net.wanji.web.po.scheme.CrossSchedulesPO"> <select id="selectById" resultType="net.wanji.databus.dao.entity.BaseCrossSchedulesPO">
select select
id,schedule_no,name,status,cross_id,gmt_create,gmt_modified id,schedule_no,name,status,cross_id,gmt_create,gmt_modified
from t_base_cross_schedules from t_base_cross_schedules
where id = #{scheduleId} where id = #{scheduleId}
</select> </select>
<!-- 查询调度基础信息列表 -->
<select id="listCrossSchedulesInfo" parameterType="String" resultMap="BaseResultMap">
select
id
,plan_no
,name
,cross_id
from
t_base_cross_plan
where 1=1
<if test="crossId != null and crossId != ''">
and cross_id = #{crossId}
</if>
</select>
<resultMap type="net.wanji.databus.dao.entity.BaseCrossSchedulesPlanPO" id="CrossSchedulesPlanPO">
<result property="schedulesId" column="schedulesId"/>
<result property="schedulesName" column="schedulesName"/>
<result property="status" column="status"/>
<result property="planId" column="plan_id"/>
<result property="planNo" column="plan_no"/>
<result property="crossId" column="cross_id"/>
<result property="week" column="week"/>
<result property="specialDate" column="special_date"/>
</resultMap>
<!-- 查询调度计划信息列表 -->
<select id="listSchedulesPlan" parameterType="String" resultMap="CrossSchedulesPlanPO">
SELECT
s.id schedulesId
,s.`name` schedulesName
,s.`status`
,s.cross_id
,p.id plan_id
,p.plan_no
,sp.`week`
,sp.special_date
FROM
t_base_cross_schedules s
,t_base_cross_schedules_plan sp
,t_base_cross_plan p
WHERE
s.id = sp.schedules_id
AND p.id = sp.plan_id
<if test="crossId != null and crossId != ''">
and s.cross_id = #{crossId}
</if>
<if test="status != null and status != ''">
and s.status = #{status}
</if>
</select>
</mapper> </mapper>
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.opt.dao.mapper.CrossSchemeMapper"> <mapper namespace="net.wanji.databus.dao.mapper.BaseCrossSchemeMapper">
<!-- 通用查询映射结果 --> <!-- 通用查询映射结果 -->
<resultMap type="net.wanji.opt.po.base.CrossSchemePO" id="BaseResultMap"> <resultMap type="net.wanji.databus.dao.entity.BaseCrossSchemePO" id="BaseResultMap">
<result property="id" column="id" /> <result property="id" column="id" />
<result property="schemeNo" column="scheme_no"/> <result property="schemeNo" column="scheme_no"/>
<result property="name" column="name"/> <result property="name" column="name"/>
...@@ -18,6 +18,30 @@ ...@@ -18,6 +18,30 @@
<result property="gmtModified" column="gmt_modified"/> <result property="gmtModified" column="gmt_modified"/>
</resultMap> </resultMap>
<!-- 查询方案基础信息列表 -->
<select id="listCrossSchemeInfo" parameterType="String" resultMap="BaseResultMap">
select
id,
scheme_no,
name,
cross_id,
cycle,
coord_phase,
offset
from
t_base_cross_scheme
where 1=1
<if test="crossId != null and crossId != ''">
and cross_id = #{crossId}
</if>
<if test="schemeNo != null and schemeNo != ''">
and scheme_no = #{schemeNo}
</if>
<if test="id != null and id != ''">
and id = #{id}
</if>
</select>
<insert id="insertBatch" keyProperty="id" useGeneratedKeys="true"> <insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
insert into t_base_cross_scheme(scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status) insert into t_base_cross_scheme(scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status)
values values
...@@ -87,29 +111,6 @@ ...@@ -87,29 +111,6 @@
select id from t_base_cross_scheme select id from t_base_cross_scheme
where cross_id = #{crossId} and scheme_no = #{schemeNo} where cross_id = #{crossId} and scheme_no = #{schemeNo}
</select> </select>
<!-- 查询方案基础信息列表 -->
<select id="listCrossSchemeInfo" parameterType="String" resultMap="BaseResultMap">
select
id,
scheme_no,
name,
cross_id,
cycle,
coord_phase,
offset
from
t_base_cross_scheme
where 1=1
<if test="crossId != null and crossId != ''">
and cross_id = #{crossId}
</if>
<if test="schemeNo != null and schemeNo != ''">
and scheme_no = #{schemeNo}
</if>
<if test="id != null and id != ''">
and id = #{id}
</if>
</select>
<select id="selectByCrossId" resultMap="BaseResultMap"> <select id="selectByCrossId" resultMap="BaseResultMap">
select select
...@@ -130,7 +131,7 @@ ...@@ -130,7 +131,7 @@
where cross_id = #{crossId} and name = #{schemeName} where cross_id = #{crossId} and name = #{schemeName}
</select> </select>
<select id="selectById" resultType="net.wanji.opt.po.base.CrossSchemePO"> <select id="selectById" resultType="net.wanji.databus.dao.entity.BaseCrossSchemePO">
select select
id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status,gmt_create,gmt_modified id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status,gmt_create,gmt_modified
from t_base_cross_scheme from t_base_cross_scheme
...@@ -142,13 +143,6 @@ ...@@ -142,13 +143,6 @@
WHERE cross_id = #{crossId} WHERE cross_id = #{crossId}
</select> </select>
<select id="selectByCrossIdAndSchemeNo" resultType="net.wanji.opt.po.base.CrossSchemePO">
select
id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status,gmt_create,gmt_modified
from t_base_cross_scheme
where cross_id = #{crossId} and scheme_no = #{schemeNo}
</select>
<delete id="deleteByIds"> <delete id="deleteByIds">
DELETE FROM t_base_cross_scheme DELETE FROM t_base_cross_scheme
WHERE id IN WHERE id IN
...@@ -157,5 +151,11 @@ ...@@ -157,5 +151,11 @@
</foreach> </foreach>
</delete> </delete>
<select id="selectByCrossIdAndSchemeNo" resultType="net.wanji.databus.dao.entity.BaseCrossSchemePO">
select
id,scheme_no,name,cross_id,cycle,coord_phase,offset,source,is_deleted,status,gmt_create,gmt_modified
from t_base_cross_scheme
where cross_id = #{crossId} and scheme_no = #{schemeNo}
</select>
</mapper> </mapper>
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.web.mapper.scheme.BaseCrossSectionMapper"> <mapper namespace="net.wanji.databus.dao.mapper.BaseCrossSectionMapper">
<!-- 通用查询映射结果 --> <!-- 通用查询映射结果 -->
<resultMap type="net.wanji.databus.dao.entity.CrossSectionPO" id="BaseResultMap"> <resultMap type="net.wanji.databus.dao.entity.CrossSectionPO" id="BaseResultMap">
......
...@@ -26,9 +26,8 @@ ...@@ -26,9 +26,8 @@
</insert> </insert>
<insert id="insertOne"> <insert id="insertOne">
insert into t_cross_info(id, name, code, manufacturer_id, ip, port, location, version, model, install_time) insert into t_cross_info(id, name,code,manufacturer_id,ip,port,location,version,model,install_time)
values (#{id}, #{name}, #{code}, #{manufacturerId}, #{ip}, #{port}, #{location}, #{version}, #{model}, values (#{id},#{name},#{code},#{manufacturerId},#{ip},#{port},#{location},#{version},#{model},#{installTime})
#{installTime})
</insert> </insert>
<update id="updateOne"> <update id="updateOne">
...@@ -108,24 +107,13 @@ ...@@ -108,24 +107,13 @@
</delete> </delete>
<delete id="deleteById"> <delete id="deleteById">
delete delete from t_cross_info
from t_cross_info
where id = #{id} where id = #{id}
</delete> </delete>
<select id="selectByPrimaryKey" resultMap="BaseResultMap"> <select id="selectByPrimaryKey" resultMap="BaseResultMap">
select id, select
name, id,name,code,manufacturer_id,ip,port,location,version,model,install_time,gmt_create,gmt_modified
code,
manufacturer_id,
ip,
port,
location,
version,
model,
install_time,
gmt_create,
gmt_modified
from t_cross_info from t_cross_info
where id = #{key} where id = #{key}
</select> </select>
...@@ -142,57 +130,24 @@ ...@@ -142,57 +130,24 @@
<select id="selectIdByCodeAndManufacturerId" resultType="java.lang.String"> <select id="selectIdByCodeAndManufacturerId" resultType="java.lang.String">
select id select id
from t_cross_info from t_cross_info
where code = #{crossCode} where code = #{crossCode} and manufacturer_id = #{manufacturerId}
and manufacturer_id = #{manufacturerId}
</select> </select>
<select id="selectByCode" resultMap="BaseResultMap"> <select id="selectByCode" resultMap="BaseResultMap">
select id, select
name, id,name,code,manufacturer_id,ip,port,location,version,model,install_time,gmt_create,gmt_modified
code,
manufacturer_id,
ip,
port,
location,
version,
model,
install_time,
gmt_create,
gmt_modified
from t_cross_info from t_cross_info
where code = #{code} where code = #{code}
</select> </select>
<select id="selectByManufacturerId" resultMap="BaseResultMap"> <select id="selectByManufacturerId" resultMap="BaseResultMap">
select id, select id,name,code,manufacturer_id,ip,port,location,version,model,install_time,gmt_create,gmt_modified
name,
code,
manufacturer_id,
ip,
port,
location,
version,
model,
install_time,
gmt_create,
gmt_modified
from t_cross_info from t_cross_info
where manufacturer_id = #{manufacturerId} where manufacturer_id = #{manufacturerId}
</select> </select>
<select id="selectAll" resultMap="BaseResultMap"> <select id="selectAll" resultMap="BaseResultMap">
select id, select id,name,code,manufacturer_id,ip,port,location,version,model,install_time,gmt_create,gmt_modified
name,
code,
manufacturer_id,
ip,
port,
location,
version,
model,
install_time,
gmt_create,
gmt_modified
from t_cross_info from t_cross_info
</select> </select>
......
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.databus.dao.mapper.CrossPhaseMapper"> <mapper namespace="net.wanji.opt.dao.mapper.BaseCrossPhaseMapper">
<!-- 通用查询映射结果 -->
<resultMap type="net.wanji.databus.dao.entity.CrossPhasePO" id="BaseResultMap"> <resultMap type="net.wanji.databus.dao.entity.CrossPhasePO" id="BaseResultMap">
<result property="id" column="id"/> <result property="id" column="id"/>
<result property="phaseNo" column="phase_no"/> <result property="phaseNo" column="phase_no"/>
<result property="name" column="name"/> <result property="name" column="name"/>
<result property="sort" column="sort"/> <result property="sort" column="sort"/>
<result property="crossId" column="cross_id"/> <result property="crossId" column="cross_id"/>
<result property="planId" column="plan_id"/> <result property="schemeId" column="plan_id"/>
<result property="ringNo" column="ring_no"/> <result property="ringNo" column="ring_no"/>
<result property="groupNo" column="group_no"/>
<!--<result property="type" column="type"/>-->
<result property="controlMode" column="control_mode"/> <result property="controlMode" column="control_mode"/>
<result property="phaseTime" column="phase_time"/> <result property="phaseTime" column="phase_time"/>
<result property="greenTime" column="green_time"/> <result property="greenTime" column="green_time"/>
...@@ -22,53 +25,33 @@ ...@@ -22,53 +25,33 @@
<result property="gmtModified" column="gmt_modified"/> <result property="gmtModified" column="gmt_modified"/>
</resultMap> </resultMap>
<insert id="insertOne" keyProperty="id" useGeneratedKeys="true"> <select id="listCrossPhase" resultMap="BaseResultMap">
insert into t_cross_phase(phase_no,name,sort,cross_id,plan_id,ring_no,control_mode,phase_time,green_time,green_flash_time,ped_flash_time,yellow_time,red_time,min_green_time,max_green_time)
values (#{phaseNo},#{name},#{sort},#{crossId},#{planId},#{ringNo},#{controlMode},#{phaseTime},#{greenTime},#{greenFlashTime},#{pedFlashTime},#{yellowTime},#{redTime},#{minGreenTime},#{maxGreenTime})
</insert>
<insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
insert into t_cross_phase(phase_no,name,sort,cross_id,plan_id,ring_no,control_mode,phase_time,green_time,
green_flash_time,ped_flash_time,yellow_time,red_time,min_green_time,max_green_time)
values
<foreach collection="entities" item="entity" separator=",">
(#{entity.phaseNo},#{entity.name},#{entity.sort},#{entity.crossId},#{entity.planId},#{entity.ringNo},
#{entity.controlMode},#{entity.phaseTime},#{entity.greenTime},#{entity.greenFlashTime},#{entity.pedFlashTime},
#{entity.yellowTime},#{entity.redTime},#{entity.minGreenTime},#{entity.maxGreenTime})
</foreach>
</insert>
<delete id="deleteBatch">
delete from t_cross_phase
where cross_id = #{crossId} and plan_id = #{schemeId}
</delete>
<delete id="deleteByCrossId">
delete from t_cross_phase
where cross_id = #{crossId}
</delete>
<sql id="baseColumn">
id,phase_no,name,sort,cross_id,plan_id,ring_no,control_mode,phase_time,green_time,
green_flash_time,ped_flash_time,yellow_time,red_time,min_green_time,max_green_time
</sql>
<select id="selectByCrossIdAndPlanId" resultMap="BaseResultMap">
select select
<include refid="baseColumn"/> id
from t_cross_phase where cross_id = #{crossId} and plan_id = #{planId} ,phase_no
,name
,sort
,cross_id
,plan_id
,ring_no
,group_no
,control_mode
,phase_time
,green_time
,green_flash_time
,ped_flash_time
,yellow_time
,red_time
,min_green_time
,max_green_time
from
t_base_cross_phase
where 1=1
<if test="crossId != null and crossId != ''">
and cross_id = #{crossId}
</if>
<if test="schemeId != null and schemeId != ''">
and plan_id = #{schemeId}
</if>
</select> </select>
<select id="selectIdsByPhaseNo" resultType="java.lang.Integer">
select id from t_cross_phase
where cross_id = #{crossId} and phase_no = #{phaseNo}
</select>
<select id="selectByCrossId" resultMap="BaseResultMap">
select
id,phase_no,name,sort,cross_id,plan_id,ring_no,control_mode,phase_time,green_time,green_flash_time,ped_flash_time,yellow_time,red_time,min_green_time,max_green_time,gmt_create,gmt_modified
from t_cross_phase
where cross_id = #{crossId}
</select>
</mapper> </mapper>
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.databus.dao.mapper.CrossPlanMapper"> <mapper namespace="net.wanji.opt.dao.mapper.BaseCrossPlanMapper">
<!-- 通用查询映射结果 -->
<resultMap type="net.wanji.databus.dao.entity.CrossPlanPO" id="BaseResultMap"> <resultMap type="net.wanji.databus.dao.entity.CrossPlanPO" id="BaseResultMap">
<result property="id" column="id"/> <result property="id" column="id"/>
<result property="planNo" column="plan_no"/> <result property="planNo" column="plan_no"/>
<result property="name" column="name"/> <result property="name" column="name"/>
<result property="crossId" column="cross_id"/> <result property="crossId" column="cross_id"/>
<result property="gmtCreate" column="gmt_create"/>
<result property="gmtModified" column="gmt_modified"/>
</resultMap> </resultMap>
<!--新增数据--> <!-- 查询计划基础信息列表 -->
<insert id="insertOne" keyProperty="id" useGeneratedKeys="true"> <select id="listCrossPlanInfo" parameterType="String" resultMap="BaseResultMap">
insert into t_cross_plan(plan_no,name,cross_id)
values (#{planNo},#{name},#{crossId})
</insert>
<insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
insert into t_cross_plan(plan_no,name,cross_id)
values
<foreach collection="entities" item="entity" separator=",">
(#{entity.planNo},#{entity.name},#{entity.crossId})
</foreach>
</insert>
<delete id="deleteOne">
delete from t_cross_plan
where cross_id = #{crossId} and plan_no = #{planNo}
</delete>
<select id="selectIdByNo" resultType="java.lang.Integer">
select id
from t_cross_plan
where cross_id = #{crossId} and plan_no = #{planNo}
</select>
<select id="selectByCrossId" resultMap="BaseResultMap">
select select
id,plan_no,name,cross_id,gmt_create,gmt_modified id
from t_cross_plan ,plan_no
where cross_id = #{crossId} ,name
,cross_id
from
t_base_cross_plan
where 1=1
<if test="crossId != null and crossId != ''">
and cross_id = #{crossId}
</if>
</select> </select>
<select id="selectByCrossIdAndPlanNo" resultMap="BaseResultMap">
select
id,plan_no,name,cross_id,gmt_create,gmt_modified
from t_cross_plan
where cross_id = #{crossId} and plan_no = #{planNo}
</select>
<select id="selectById" resultType="net.wanji.databus.dao.entity.CrossPlanPO">
select
id,plan_no,name,cross_id,gmt_create,gmt_modified
from t_cross_plan
where plan_no = #{planId}
</select>
</mapper> </mapper>
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.databus.dao.mapper.CrossSchemeMapper"> <mapper namespace="net.wanji.databus.dao.mapper.CrossSchemeMapper">
<resultMap type="net.wanji.databus.dao.entity.CrossSchemePO" id="BaseResultMap"> <resultMap type="net.wanji.databus.dao.entity.BaseCrossSchemePO" id="BaseResultMap">
<result property="id" column="id"/> <result property="id" column="id"/>
<result property="schemeNo" column="scheme_no"/> <result property="schemeNo" column="scheme_no"/>
<result property="name" column="name"/> <result property="name" column="name"/>
......
...@@ -73,5 +73,4 @@ ...@@ -73,5 +73,4 @@
and plan_id = #{planId} and plan_id = #{planId}
</select> </select>
</mapper> </mapper>
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="net.wanji.databus.dao.mapper.SignalStatusLogMapper"> <mapper namespace="net.wanji.utc.mapper.SignalStatusLogMapper">
<resultMap type="net.wanji.databus.po.SignalStatusLogPO" id="BaseResultMap"> <resultMap type="net.wanji.databus.po.SignalStatusLogPO" id="BaseResultMap">
<result property="id" column="id" /> <result property="id" column="id" />
<result property="signalId" column="signal_id"/> <result property="signalId" column="signal_id"/>
......
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