Commit 194bd99d authored by hanbing's avatar hanbing

Merge remote-tracking branch 'origin/master'

parents 0ed9f9ec 2df5e8bb
......@@ -83,8 +83,8 @@ public class PlanSendServiceImpl implements PlanSendService {
* @param crossId
* @return
*/
public JsonViewObject phaseLaneSend(String crossId) {
PhaseTimingSendVO phaseTimingSendVO = buiPhaseTimingSendVO(crossId);
public JsonViewObject phaseLaneSend(String crossId, Integer schemeId) {
PhaseTimingSendVO phaseTimingSendVO = buiPhaseTimingSendVO(crossId, schemeId);
JsonViewObject jsonViewObject = feignProxyService.phaseTimingSend(phaseTimingSendVO);
return jsonViewObject;
}
......@@ -95,12 +95,13 @@ public class PlanSendServiceImpl implements PlanSendService {
* @param crossId
* @return
*/
private PhaseTimingSendVO buiPhaseTimingSendVO(String crossId) {
private PhaseTimingSendVO buiPhaseTimingSendVO(String crossId, Integer schemeId) {
PhaseTimingSendVO phaseTimingSendVO = new PhaseTimingSendVO();
phaseTimingSendVO.setCrossCode(crossId);
List<PhaseTimingSendVO.Phase> phaseList = new ArrayList<>();
CrossPhasePO crossPhasePO = new CrossPhasePO();
crossPhasePO.setCrossId(crossId);
crossPhasePO.setPlanId(schemeId);
List<CrossPhasePO> crossPhasePOS = crossPhaseMapper.listCrossPhasePO(crossPhasePO);
CrossPhaseLightsPO crossPhaseLightsPO = new CrossPhaseLightsPO();
crossPhaseLightsPO.setCrossId(crossId);
......@@ -163,8 +164,6 @@ public class PlanSendServiceImpl implements PlanSendService {
if (Objects.isNull(planSendResult) || planSendResult.getCode() != 200) {
return jsonViewObject.fail("信号机方案下发-日计划下发UTC服务调用异常");
}
// 下发车道相位
phaseLaneSend(crossId);
// 更新时间表状态为已执行
crossSchedulesMapper.resetStatus(crossId);
......@@ -200,6 +199,9 @@ public class PlanSendServiceImpl implements PlanSendService {
schemeIdDTO.setCrossId(crossId);
schemeIdDTO.setSchemeId(schemeId);
schemeSend(schemeIdDTO);
// 下发车道相位
phaseLaneSend(crossId, schemeId);
}
PlanSendVO planSendVO = new PlanSendVO();
......@@ -221,13 +223,18 @@ public class PlanSendServiceImpl implements PlanSendService {
Integer schemeId = schemeIdDTO.getSchemeId();
List<SchemeSendVO.Pattern> patternList = buildPatternList(crossId, schemeId);
schemeSendVO.setPatternList(patternList);
// 下发车道相位
phaseLaneSend(crossId, schemeId);
// 发送请求
JsonViewObject jsonViewObject = utcFeignClients.schemeSend(schemeSendVO);
if (Objects.isNull(jsonViewObject) || jsonViewObject.getCode() != 200) {
return jsonViewObject.fail("信号机方案下发-基础方案下发UTC服务调用异常");
}
// 下发车道相位
phaseLaneSend(crossId);
// 更新方案表状态为已执行
crossSchemeMapper.resetStatus(crossId);
crossSchemeMapper.updateStatus(schemeId);
......
......@@ -53,12 +53,10 @@
<select id="selectRecentList" resultMap="tCrossControlHist">
select
<include refid="Base_Column_List"/>
from t_cross_control_hist
where start_time in (select max(start_time)
from t_cross_control_hist
where cross_id in (select id as cross_id
from t_base_cross_info)
group by cross_id);
<include refid="Base_Column_List"></include>
from t_cross_control_hist t1 left join
(select cross_id crossId, max(start_time) startTime from t_cross_control_hist group by cross_id) t2
on t1.cross_id = t2.crossId
where t1.start_time = t2.startTime
</select>
</mapper>
......@@ -36,7 +36,10 @@
from t_base_cross_phase
<where>
<if test="entity.crossId != null and entity.crossId !=''">
cross_id = #{entity.crossId}
and cross_id = #{entity.crossId}
</if>
<if test="entity.planId != null and entity.planId !=''">
and plan_id = #{entity.planId}
</if>
</where>
</select>
......
......@@ -7,10 +7,10 @@ import java.util.Objects;
* @date 2023/04/03 16:26
*/
public enum CrossLightsDirEnum {
ONE(1, 1),// 由南向北
TWO(3, 4), // 由西向东
THREE(5, 2),// 由北向南
FOUR(7, 3);// 由东向西
ONE(5, 1),// 灯组放行方向(车道方向) 由南向北
TWO(7, 4), // 由西向东
THREE(1, 2),// 由北向南
FOUR(3, 3);// 由东向西
private final Integer lightsCode;
private final Integer hkLightsCode;
......
......@@ -38,7 +38,7 @@ public class SignalStatusTask {
private HkLightsStatusService hkLightsStatusService;
private static Map<String, List<LightsStatusVO>> lightStatusCache = new HashMap<>();
private static Map<String, Integer> runModeTimeMap = new HashMap();
private static final Map<String, Integer> runModeTimeMap = new ConcurrentHashMap<>();
// 运行状态、告警,5分钟一次
@Scheduled(fixedRate = 1 * 60 * 1000)
......
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