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
3d9fdd71
Commit
3d9fdd71
authored
Apr 21, 2025
by
zhouleilei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
渠化配置/灯组设置、车道配置列表 新增roadName值
parent
8f3c9f20
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
140 additions
and
1 deletion
+140
-1
DirListElement.java
...rvice/src/main/java/net/wanji/web/dto/DirListElement.java
+2
-0
BaseRidInfoMapper.java
...ain/java/net/wanji/web/mapper/base/BaseRidInfoMapper.java
+19
-0
BaseRidInfo.java
...vice/src/main/java/net/wanji/web/po/base/BaseRidInfo.java
+107
-0
CrossConfigServiceImpl.java
...wanji/web/service/scheme/impl/CrossConfigServiceImpl.java
+12
-1
No files found.
signal-control-service/src/main/java/net/wanji/web/dto/DirListElement.java
View file @
3d9fdd71
...
@@ -9,6 +9,8 @@ import java.util.List;
...
@@ -9,6 +9,8 @@ import java.util.List;
@NoArgsConstructor
@NoArgsConstructor
@Data
@Data
public
class
DirListElement
{
public
class
DirListElement
{
@ApiModelProperty
(
value
=
"路段名称"
,
required
=
true
)
private
String
roadName
;
@ApiModelProperty
(
value
=
"车道进口方向:1北;2东北;3东;4东南;5南;6西南;7西;8西北"
,
required
=
true
)
@ApiModelProperty
(
value
=
"车道进口方向:1北;2东北;3东;4东南;5南;6西南;7西;8西北"
,
required
=
true
)
private
Integer
dir
;
private
Integer
dir
;
@ApiModelProperty
(
value
=
"交通状态:1畅通;2缓行;3拥堵;4严重拥堵;5未知"
,
required
=
true
)
@ApiModelProperty
(
value
=
"交通状态:1畅通;2缓行;3拥堵;4严重拥堵;5未知"
,
required
=
true
)
...
...
signal-control-service/src/main/java/net/wanji/web/mapper/base/BaseRidInfoMapper.java
0 → 100644
View file @
3d9fdd71
package
net
.
wanji
.
web
.
mapper
.
base
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
net.wanji.web.po.base.BaseRidInfo
;
/**
* <p>
* 路段基础信息
* </p>
*
* @Author fengyi
* @Date 2024-11-14
*/
public
interface
BaseRidInfoMapper
extends
BaseMapper
<
BaseRidInfo
>
{
}
signal-control-service/src/main/java/net/wanji/web/po/base/BaseRidInfo.java
0 → 100644
View file @
3d9fdd71
package
net
.
wanji
.
web
.
po
.
base
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Date
;
/**
* <p>
* 路段基础信息
* </p>
*
* @Author fengyi
* @Date 2024-11-14
*/
@Data
@ApiModel
(
value
=
"BaseRidInfo对象"
,
description
=
"路段基础信息"
)
@TableName
(
"t_base_rid_info"
)
public
class
BaseRidInfo
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"路段名称"
)
private
String
name
;
@ApiModelProperty
(
value
=
"道路编号"
)
private
String
roadId
;
@ApiModelProperty
(
value
=
"道路名称"
)
private
String
roadName
;
@ApiModelProperty
(
value
=
"道路方向编号"
)
private
String
roadDirId
;
@ApiModelProperty
(
value
=
"开始路口编号"
)
private
String
startCrossId
;
@ApiModelProperty
(
value
=
"结束路口编号"
)
private
String
endCrossId
;
@ApiModelProperty
(
value
=
"驶出方向:1北;2东北;3东;4东南;5南;6西南;7西;8西北"
)
private
Integer
outDir
;
@ApiModelProperty
(
value
=
"驶入方向:1北;2东北;3东;4东南;5南;6西南;7西;8西北"
)
private
Integer
inDir
;
@ApiModelProperty
(
value
=
"驶出角度,正北顺时针0~359"
)
private
Double
startAngle
;
@ApiModelProperty
(
value
=
"驶入角度,正北顺时针0~359"
)
private
Double
endAngle
;
@ApiModelProperty
(
value
=
"行驶方向:0上行;1下行"
)
private
Integer
direction
;
@ApiModelProperty
(
value
=
"顺序号:路段在道路方向的顺序号"
)
private
Integer
sort
;
@ApiModelProperty
(
value
=
"路段走向:1 南向北;2 西向东;3 北向南;4 东向西;5 内环;6 外环;99 其他(参见路段走向字典)"
)
private
Integer
trend
;
@ApiModelProperty
(
value
=
"道路等级: 41000 高速公路; 42000 国道; 43000 城市快速路; 44000 城市主干道; 45000 城市次干道; 47000 城市普通道路; 51000 省道; 52000 县道; 53000 乡道; 54000 县乡村内部道路; 49 小路(参见道路等级字典)"
)
private
Integer
level
;
@ApiModelProperty
(
value
=
"行政区划代码,跨区数据会以逗号分开"
)
private
String
areaCode
;
@ApiModelProperty
(
value
=
"路段长度(米)"
)
private
Double
length
;
@ApiModelProperty
(
value
=
"路段宽度(米)"
)
private
Double
width
;
@ApiModelProperty
(
value
=
"是否单行线:0否;1是;99其他"
)
private
Integer
isOneway
;
@ApiModelProperty
(
value
=
"路段类型:1路段;3匝道;4隧道;5桥梁;6高架;99其他"
)
private
Integer
type
;
@ApiModelProperty
(
value
=
"主辅标志:1主路;2辅路;99其他 (参见主辅标志字典)"
)
private
Integer
mainFlag
;
@ApiModelProperty
(
value
=
"空间对象"
)
private
String
wkt
;
@ApiModelProperty
(
value
=
"信控路段编号"
)
private
String
scId
;
@ApiModelProperty
(
value
=
"信控路段名称"
)
private
String
scName
;
@ApiModelProperty
(
value
=
"信控路段序号"
)
private
Integer
scSort
;
@ApiModelProperty
(
value
=
"创建时间"
)
private
Date
gmtCreate
;
@ApiModelProperty
(
value
=
"修改时间"
)
private
Date
gmtModified
;
}
signal-control-service/src/main/java/net/wanji/web/service/scheme/impl/CrossConfigServiceImpl.java
View file @
3d9fdd71
package
net
.
wanji
.
web
.
service
.
scheme
.
impl
;
package
net
.
wanji
.
web
.
service
.
scheme
.
impl
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
net.wanji.common.enums.LightsAddressEnum
;
import
net.wanji.common.enums.LightsAddressEnum
;
import
net.wanji.databus.bo.CrossIdBO
;
import
net.wanji.databus.bo.CrossIdBO
;
import
net.wanji.databus.dao.mapper.BaseCrossLaneLightsMapper
;
import
net.wanji.databus.dao.mapper.BaseCrossLaneLightsMapper
;
...
@@ -16,8 +17,10 @@ import net.wanji.web.dto.DirListElement;
...
@@ -16,8 +17,10 @@ import net.wanji.web.dto.DirListElement;
import
net.wanji.web.dto.LaneListElement
;
import
net.wanji.web.dto.LaneListElement
;
import
net.wanji.web.dto.LedConfigListElement
;
import
net.wanji.web.dto.LedConfigListElement
;
import
net.wanji.web.dto.SaveLaneInfoDTO
;
import
net.wanji.web.dto.SaveLaneInfoDTO
;
import
net.wanji.web.mapper.base.BaseRidInfoMapper
;
import
net.wanji.web.mapper.scheme.CrossDirInfoMapper
;
import
net.wanji.web.mapper.scheme.CrossDirInfoMapper
;
import
net.wanji.web.mapper.scheme.LaneSegmentMapper
;
import
net.wanji.web.mapper.scheme.LaneSegmentMapper
;
import
net.wanji.web.po.base.BaseRidInfo
;
import
net.wanji.web.po.scheme.CrossDirInfoPO
;
import
net.wanji.web.po.scheme.CrossDirInfoPO
;
import
net.wanji.web.service.scheme.CrossConfigService
;
import
net.wanji.web.service.scheme.CrossConfigService
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -39,6 +42,7 @@ public class CrossConfigServiceImpl implements CrossConfigService {
...
@@ -39,6 +42,7 @@ public class CrossConfigServiceImpl implements CrossConfigService {
private
final
BaseCrossLaneLightsMapper
baseCrossLaneLightsMapper
;
private
final
BaseCrossLaneLightsMapper
baseCrossLaneLightsMapper
;
private
final
LaneSegmentMapper
laneSegmentMapper
;
private
final
LaneSegmentMapper
laneSegmentMapper
;
private
final
BaseCrossLightsMapper
baseCrossLightsMapper
;
private
final
BaseCrossLightsMapper
baseCrossLightsMapper
;
private
final
BaseRidInfoMapper
baseRidInfoMapper
;
// 机动车灯数据库类型与前端类型对应关系
// 机动车灯数据库类型与前端类型对应关系
private
static
final
Map
<
Integer
,
Integer
>
MOTOR_VEH_MAP
=
new
HashMap
<>(
5
);
private
static
final
Map
<
Integer
,
Integer
>
MOTOR_VEH_MAP
=
new
HashMap
<>(
5
);
...
@@ -64,13 +68,15 @@ public class CrossConfigServiceImpl implements CrossConfigService {
...
@@ -64,13 +68,15 @@ public class CrossConfigServiceImpl implements CrossConfigService {
public
CrossConfigServiceImpl
(
CrossDirInfoMapper
crossDirInfoMapper
,
LaneInfoMapper
laneInfoMapper
,
public
CrossConfigServiceImpl
(
CrossDirInfoMapper
crossDirInfoMapper
,
LaneInfoMapper
laneInfoMapper
,
BaseCrossLaneLightsMapper
baseCrossLaneLightsMapper
,
LaneSegmentMapper
laneSegmentMapper
,
BaseCrossLaneLightsMapper
baseCrossLaneLightsMapper
,
LaneSegmentMapper
laneSegmentMapper
,
BaseCrossLightsMapper
baseCrossLightsMapper
,
BaseCrossLightsMapper
baseCrossLightsMapper
,
BaseCrossPhaseLightsMapper
baseCrossPhaseLightsMapper
)
{
BaseCrossPhaseLightsMapper
baseCrossPhaseLightsMapper
,
BaseRidInfoMapper
baseRidInfoMapper
)
{
this
.
crossDirInfoMapper
=
crossDirInfoMapper
;
this
.
crossDirInfoMapper
=
crossDirInfoMapper
;
this
.
laneInfoMapper
=
laneInfoMapper
;
this
.
laneInfoMapper
=
laneInfoMapper
;
this
.
baseCrossLaneLightsMapper
=
baseCrossLaneLightsMapper
;
this
.
baseCrossLaneLightsMapper
=
baseCrossLaneLightsMapper
;
this
.
laneSegmentMapper
=
laneSegmentMapper
;
this
.
laneSegmentMapper
=
laneSegmentMapper
;
this
.
baseCrossLightsMapper
=
baseCrossLightsMapper
;
this
.
baseCrossLightsMapper
=
baseCrossLightsMapper
;
this
.
baseCrossPhaseLightsMapper
=
baseCrossPhaseLightsMapper
;
this
.
baseCrossPhaseLightsMapper
=
baseCrossPhaseLightsMapper
;
this
.
baseRidInfoMapper
=
baseRidInfoMapper
;
}
}
@Override
@Override
...
@@ -368,10 +374,15 @@ public class CrossConfigServiceImpl implements CrossConfigService {
...
@@ -368,10 +374,15 @@ public class CrossConfigServiceImpl implements CrossConfigService {
List
<
LaneInfoPO
>
laneInfoPOList
=
laneInfoMapper
.
selectBycrossId
(
crossId
);
List
<
LaneInfoPO
>
laneInfoPOList
=
laneInfoMapper
.
selectBycrossId
(
crossId
);
Map
<
Integer
,
List
<
LaneInfoPO
>>
collect
=
laneInfoPOList
.
stream
()
Map
<
Integer
,
List
<
LaneInfoPO
>>
collect
=
laneInfoPOList
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
LaneInfoPO:
:
getDir
));
.
collect
(
Collectors
.
groupingBy
(
LaneInfoPO:
:
getDir
));
QueryWrapper
<
BaseRidInfo
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"end_cross_id"
,
crossId
);
List
<
BaseRidInfo
>
ridList
=
baseRidInfoMapper
.
selectList
(
queryWrapper
);
Map
<
Integer
,
String
>
roadNameMap
=
ridList
.
stream
().
collect
(
Collectors
.
toMap
(
o
->
o
.
getInDir
(),
o
->
o
.
getName
()));
for
(
Map
.
Entry
<
Integer
,
List
<
LaneInfoPO
>>
entry
:
collect
.
entrySet
())
{
for
(
Map
.
Entry
<
Integer
,
List
<
LaneInfoPO
>>
entry
:
collect
.
entrySet
())
{
Integer
key
=
entry
.
getKey
();
Integer
key
=
entry
.
getKey
();
DirListElement
dirListElement
=
new
DirListElement
();
DirListElement
dirListElement
=
new
DirListElement
();
dirListElement
.
setDir
(
key
);
dirListElement
.
setDir
(
key
);
dirListElement
.
setRoadName
(
roadNameMap
.
get
(
key
));
// 获取是否有行人道
// 获取是否有行人道
CrossDirInfoPO
crossDirInfoPO
=
crossDirInfoMapper
.
selectByCrossIdAndDirType
(
crossId
,
key
);
CrossDirInfoPO
crossDirInfoPO
=
crossDirInfoMapper
.
selectByCrossIdAndDirType
(
crossId
,
key
);
Integer
isPedestrian
=
0
;
Integer
isPedestrian
=
0
;
...
...
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