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
684eef49
Commit
684eef49
authored
Feb 25, 2023
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[update] 实时监控异常优化
parent
44545b62
Changes
5
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
103 additions
and
67 deletions
+103
-67
CrossTurnDataRealtimeDTO.java
...main/java/net/wanji/opt/dto/CrossTurnDataRealtimeDTO.java
+4
-1
CrossDataRealtimePO.java
...main/java/net/wanji/opt/po/trend/CrossDataRealtimePO.java
+9
-0
CrossOptimizeService.java
...main/java/net/wanji/opt/service/CrossOptimizeService.java
+2
-2
CrossOptimizeServiceImpl.java
.../net/wanji/opt/service/impl/CrossOptimizeServiceImpl.java
+82
-57
CrossMonitorTask.java
...ce/src/main/java/net/wanji/opt/task/CrossMonitorTask.java
+6
-7
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/dto/CrossTurnDataRealtimeDTO.java
View file @
684eef49
...
...
@@ -81,7 +81,10 @@ public class CrossTurnDataRealtimeDTO {
currentVehheadTime
=
2.8
;
}
// 排队车辆
Double
queuedVehicles
=
entity
.
getQueueLength
()
/
currentVehheadDist
;
Double
queuedVehicles
=
null
;
if
(
Objects
.
nonNull
(
entity
.
getQueueLength
()))
{
queuedVehicles
=
entity
.
getQueueLength
()
/
currentVehheadDist
;
}
// 通行时长
Double
calPassTime
=
queuedVehicles
*
currentVehheadTime
;
return
calPassTime
;
...
...
signal-optimize-service/src/main/java/net/wanji/opt/po/trend/CrossDataRealtimePO.java
View file @
684eef49
...
...
@@ -2,8 +2,11 @@ package net.wanji.opt.po.trend;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
net.wanji.opt.dto.CrossDirInfoDTO
;
import
net.wanji.opt.dto.CrossTurnInfoDTO
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author hfx
...
...
@@ -87,4 +90,10 @@ public class CrossDataRealtimePO {
/** 修改时间 */
@ApiModelProperty
(
value
=
"修改时间"
,
notes
=
""
)
private
Date
gmtModified
;
@ApiModelProperty
(
name
=
"路口方向列表"
,
notes
=
""
)
List
<
CrossDirInfoDTO
>
dirList
;
@ApiModelProperty
(
name
=
"路口转向列表"
,
notes
=
""
)
List
<
CrossTurnInfoDTO
>
turnList
;
}
signal-optimize-service/src/main/java/net/wanji/opt/service/CrossOptimizeService.java
View file @
684eef49
package
net
.
wanji
.
opt
.
service
;
import
net.wanji.opt.
dto.CrossDataRealtimeDT
O
;
import
net.wanji.opt.
po.trend.CrossDataRealtimeP
O
;
import
java.util.List
;
...
...
@@ -16,7 +16,7 @@ public interface CrossOptimizeService {
* 路口实时优化
* @return
*/
String
realtimeOptimize
(
List
<
CrossDataRealtime
DT
O
>
abnormalCrossList
);
String
realtimeOptimize
(
List
<
CrossDataRealtime
P
O
>
abnormalCrossList
);
/**
* 路口方案优化
...
...
signal-optimize-service/src/main/java/net/wanji/opt/service/impl/CrossOptimizeServiceImpl.java
View file @
684eef49
This diff is collapsed.
Click to expand it.
signal-optimize-service/src/main/java/net/wanji/opt/task/CrossMonitorTask.java
View file @
684eef49
...
...
@@ -4,7 +4,6 @@ import lombok.extern.slf4j.Slf4j;
import
net.wanji.common.enums.CrossStatusEnum
;
import
net.wanji.common.framework.Constants
;
import
net.wanji.opt.dao.mapper.trend.CrossDataRealtimeMapper
;
import
net.wanji.opt.dto.CrossDataRealtimeDTO
;
import
net.wanji.opt.po.trend.CrossDataRealtimePO
;
import
net.wanji.opt.service.CrossOptimizeService
;
import
org.springframework.beans.BeanUtils
;
...
...
@@ -46,7 +45,7 @@ public class CrossMonitorTask {
// }
// 获取所有信控路口异常数据(失衡/拥堵/溢出/死锁)
List
<
CrossDataRealtime
DT
O
>
abnormalCrossList
=
listAbnormalCross
(
crossDataRealtimePOList
);
List
<
CrossDataRealtime
P
O
>
abnormalCrossList
=
listAbnormalCross
(
crossDataRealtimePOList
);
log
.
info
(
"加载异常路口:{}条"
,
abnormalCrossList
.
size
());
// if(abnormalCrossList.isEmpty()) {
// return ;
...
...
@@ -62,15 +61,15 @@ public class CrossMonitorTask {
*
* @return
*/
public
List
<
CrossDataRealtime
DT
O
>
listAbnormalCross
(
List
<
CrossDataRealtimePO
>
crossDataRealtimePOList
)
{
public
List
<
CrossDataRealtime
P
O
>
listAbnormalCross
(
List
<
CrossDataRealtimePO
>
crossDataRealtimePOList
)
{
List
<
CrossDataRealtime
DT
O
>
dtoList
=
new
ArrayList
<>();
CrossDataRealtime
DT
O
dto
=
null
;
List
<
CrossDataRealtime
P
O
>
dtoList
=
new
ArrayList
<>();
CrossDataRealtime
P
O
dto
=
null
;
int
status
=
0
;
for
(
CrossDataRealtimePO
po
:
crossDataRealtimePOList
)
{
// 获取失衡、拥堵、溢出路口数据
if
(
Constants
.
SystemParam
.
NO
.
equals
(
po
.
getIsSpillover
())
||
Constants
.
SystemParam
.
NO
.
equals
(
po
.
getIsCongestion
())
||
Constants
.
SystemParam
.
NO
.
equals
(
po
.
getIsUnbalance
()))
{
if
(
Constants
.
SystemParam
.
NO
.
equals
(
po
.
getIsSpillover
())
&&
Constants
.
SystemParam
.
NO
.
equals
(
po
.
getIsCongestion
())
&&
Constants
.
SystemParam
.
NO
.
equals
(
po
.
getIsUnbalance
()))
{
continue
;
}
...
...
@@ -81,7 +80,7 @@ public class CrossMonitorTask {
}
else
if
(
Constants
.
SystemParam
.
YES
.
equals
(
po
.
getIsUnbalance
()))
{
// 失衡
status
=
CrossStatusEnum
.
UNBALANCE
.
getCode
();
}
dto
=
new
CrossDataRealtime
DT
O
();
dto
=
new
CrossDataRealtime
P
O
();
BeanUtils
.
copyProperties
(
po
,
dto
);
dto
.
setCrossId
(
po
.
getCrossId
());
dto
.
setStatus
(
status
);
...
...
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