Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
T
traffic-signal-platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
signal
traffic-signal-platform
Commits
50531727
Commit
50531727
authored
Apr 10, 2023
by
hanbing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[update] 优化方案管理行人灯相位
parent
4a60f7d1
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
37 additions
and
16 deletions
+37
-16
SchemeConfigServiceImpl.java
...anji/web/service/scheme/impl/SchemeConfigServiceImpl.java
+28
-15
LaneIdsVO.java
...vice/src/main/java/net/wanji/web/vo/scheme/LaneIdsVO.java
+9
-1
No files found.
signal-control-service/src/main/java/net/wanji/web/service/scheme/impl/SchemeConfigServiceImpl.java
View file @
50531727
...
@@ -3,35 +3,39 @@ package net.wanji.web.service.scheme.impl;
...
@@ -3,35 +3,39 @@ package net.wanji.web.service.scheme.impl;
import
cn.hutool.core.collection.CollectionUtil
;
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.databus.dao.mapper.CrossLaneLightsMapper
;
import
net.wanji.databus.dao.mapper.CrossLightsMapper
;
import
net.wanji.databus.dao.mapper.LaneInfoMapper
;
import
net.wanji.databus.po.CrossLaneLightsPO
;
import
net.wanji.databus.po.CrossLightsPO
;
import
net.wanji.databus.po.LaneInfoPO
;
import
net.wanji.web.common.constant.ControlModeConst
;
import
net.wanji.web.common.constant.ControlModeConst
;
import
net.wanji.web.common.exception.NoLanesException
;
import
net.wanji.web.common.exception.PhaseNoNotUniqueException
;
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.*
;
import
net.wanji.web.po.scheme.*
;
import
net.wanji.web.mapper.scheme.CrossAccompanyPhaseMapper
;
import
net.wanji.web.mapper.scheme.CrossAccompanyPhaseMapper
;
import
net.wanji.databus.dao.mapper.CrossLaneLightsMapper
;
import
net.wanji.databus.dao.mapper.CrossLightsMapper
;
import
net.wanji.web.mapper.scheme.CrossPhaseLightsMapper
;
import
net.wanji.web.mapper.scheme.CrossPhaseLightsMapper
;
import
net.wanji.web.mapper.scheme.CrossPhaseMapper
;
import
net.wanji.web.mapper.scheme.CrossPhaseMapper
;
import
net.wanji.web.mapper.scheme.CrossSchemeMapper
;
import
net.wanji.web.mapper.scheme.CrossSchemeMapper
;
import
net.wanji.databus.dao.mapper.LaneInfoMapper
;
import
net.wanji.web.po.scheme.CrossAccompanyPhasePO
;
import
net.wanji.web.po.scheme.CrossAccompanyPhasePO
;
import
net.wanji.databus.po.CrossLaneLightsPO
;
import
net.wanji.databus.po.CrossLightsPO
;
import
net.wanji.web.po.scheme.CrossPhaseLightsPO
;
import
net.wanji.web.po.scheme.CrossPhaseLightsPO
;
import
net.wanji.web.po.scheme.CrossPhasePO
;
import
net.wanji.web.po.scheme.CrossPhasePO
;
import
net.wanji.web.po.scheme.CrossSchemePO
;
import
net.wanji.web.po.scheme.CrossSchemePO
;
import
net.wanji.databus.po.LaneInfoPO
;
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
;
import
net.wanji.web.vo.scheme.LightIdVO
;
import
net.wanji.web.vo.scheme.LightIdVO
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.*
;
import
java.util.ArrayList
;
import
java.util.Comparator
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
/**
/**
...
@@ -84,20 +88,29 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
...
@@ -84,20 +88,29 @@ public class SchemeConfigServiceImpl implements SchemeConfigService {
@Override
@Override
public
LaneIdsVO
getLanesByLight
(
LightIdDTO
lightIdDTO
)
{
public
LaneIdsVO
getLanesByLight
(
LightIdDTO
lightIdDTO
)
{
Integer
lightId
=
lightIdDTO
.
getLightId
();
String
crossId
=
lightIdDTO
.
getCrossId
();
String
crossId
=
lightIdDTO
.
getCrossId
();
LaneIdsVO
laneIdsVO
=
new
LaneIdsVO
();
LaneIdsVO
laneIdsVO
=
new
LaneIdsVO
();
laneIdsVO
.
setCrossId
(
crossId
);
laneIdsVO
.
setCrossId
(
crossId
);
laneIdsVO
.
setLanes
(
new
ArrayList
<>());
Integer
lightId
=
lightIdDTO
.
getLightId
();
// 获取方向
CrossLightsPO
crossLightsPO
=
crossLightsMapper
.
selectById
(
lightId
);
Integer
dir
=
crossLightsPO
.
getDir
();
laneIdsVO
.
setDir
(
dir
);
// 行人灯类型
Integer
type
=
crossLightsPO
.
getType
();
laneIdsVO
.
setPedType
(
type
);
// 构建车道信息
List
<
CrossLaneLightsPO
>
crossLaneLightsPOList
=
crossLaneLightsMapper
.
selectLanesByLightId
(
crossId
,
lightId
);
List
<
CrossLaneLightsPO
>
crossLaneLightsPOList
=
crossLaneLightsMapper
.
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
());
if
(
CollectionUtil
.
isEmpty
(
laneIds
))
{
if
(
CollectionUtil
.
isNotEmpty
(
laneIds
))
{
throw
new
NoLanesException
(
"灯组没有对应的车道信息,请先完成灯组配置"
);
List
<
LaneInfoPO
>
laneInfoPOList
=
laneInfoMapper
.
selectByLaneIds
(
laneIds
);
laneIdsVO
.
setLanes
(
laneInfoPOList
);
}
}
List
<
LaneInfoPO
>
laneInfoPOList
=
laneInfoMapper
.
selectByLaneIds
(
laneIds
);
laneIdsVO
.
setLanes
(
laneInfoPOList
);
return
laneIdsVO
;
return
laneIdsVO
;
}
}
...
...
signal-control-service/src/main/java/net/wanji/web/vo/scheme/LaneIdsVO.java
View file @
50531727
...
@@ -14,8 +14,16 @@ import java.util.List;
...
@@ -14,8 +14,16 @@ import java.util.List;
@Data
@Data
@ApiModel
(
value
=
"LaneIdsVO"
,
description
=
"根据灯组查询车道信息返回值"
)
@ApiModel
(
value
=
"LaneIdsVO"
,
description
=
"根据灯组查询车道信息返回值"
)
public
class
LaneIdsVO
{
public
class
LaneIdsVO
{
@ApiModelProperty
(
value
=
"路口ID"
,
required
=
true
)
@ApiModelProperty
(
value
=
"路口ID"
,
required
=
true
)
private
String
crossId
;
private
String
crossId
;
@ApiModelProperty
(
value
=
"车道列表"
,
required
=
true
)
@ApiModelProperty
(
value
=
"方向:1北;2东北;3东;4东南;5南;6西南;7西;8西北"
)
private
Integer
dir
;
@ApiModelProperty
(
value
=
"行人灯类型:20行人灯;21行人进口灯;22行人出口灯"
)
private
Integer
pedType
;
@ApiModelProperty
(
value
=
"车道列表"
)
private
List
<
LaneInfoPO
>
lanes
;
private
List
<
LaneInfoPO
>
lanes
;
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment