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
jinan
traffic-signal-platform
Commits
65f777c8
Commit
65f777c8
authored
May 08, 2025
by
zhoushiguang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
方案评价-趋势图 起点、终点指标时间轴落到0点问题排除
parent
f8665050
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
29 additions
and
14 deletions
+29
-14
GreenwaveHistProviderImpl.java
...net/wanji/opt/service/impl/GreenwaveHistProviderImpl.java
+29
-14
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/service/impl/GreenwaveHistProviderImpl.java
View file @
65f777c8
...
...
@@ -422,15 +422,30 @@ public class GreenwaveHistProviderImpl extends BaseDubboInterfaceImpl<GreenwaveH
}
//存放时段
List
<
String
>
sortedSet
=
EsDateIndexUtil
.
getTimeGranularityAxisAll
(
groupType
,
startTime
,
endTime
);
if
(
sortedSet
.
size
()
>
2
)
{
//方案评价-趋势图起点时间轴落到0点问题排除
params
.
put
(
"startDate"
,
sortedSet
.
get
(
0
));
}
//======================================================================================================//
//存放所有数据
List
<
Map
<
String
,
Object
>>
allList
=
new
ArrayList
<>();
long
st1
=
System
.
currentTimeMillis
();
List
<
CrossLaneDataHistPoExtend
>
list
=
greenwaveHistoryMapper
.
findCrossObjectIndex
(
params
);
long
et1
=
System
.
currentTimeMillis
();
log
.
info
(
"findCrossObjectIndex查耗时:{}ms,params:{}"
,
et1
-
st1
,
params
);
log
.
info
(
"findCrossObjectIndex查耗时:{}ms,params:{}"
,
et1
-
st1
,
params
);
list
=
list
.
stream
().
sorted
(
Comparator
.
comparing
(
o
->
o
.
getStartTime
())).
collect
(
Collectors
.
toList
());
try
{
//startTime、endTime传参非整5分情况导致的起终点落到0点情况
//最后一个时段
Date
date
=
DateUtil
.
parse
(
sortedSet
.
get
(
sortedSet
.
size
()
-
1
),
"yyyy-MM-dd HH:mm:ss"
);
//方案评价-趋势图 终点时间轴落到0点问题排除
if
(
date
.
after
(
list
.
get
(
list
.
size
()
-
1
).
getStartTime
()))
{
sortedSet
.
remove
(
sortedSet
.
size
()
-
1
);
}
}
catch
(
ParseException
e
)
{
e
.
printStackTrace
();
}
//按时间分组分组
Map
<
String
,
List
<
CrossLaneDataHistPoExtend
>>
groupByDir
=
list
.
stream
().
collect
(
Collectors
.
groupingBy
(
o
->
o
.
getCrossId
()
+
"_"
+
o
.
getLaneNo
()
+
"_"
+
o
.
getDirType
()
+
"_"
+
o
.
getTurnType
(),
TreeMap:
:
new
,
Collectors
.
toList
()));
...
...
@@ -482,7 +497,7 @@ public class GreenwaveHistProviderImpl extends BaseDubboInterfaceImpl<GreenwaveH
}
else
if
(
Objects
.
equals
(
3
,
objectType
))
{
value
=
value
.
stream
().
sorted
(
Comparator
.
comparing
(
o
->
o
.
getLaneNo
())).
collect
(
Collectors
.
toList
());
}
if
(
Objects
.
equals
(
3
,
objectType
)){
if
(
Objects
.
equals
(
3
,
objectType
))
{
//车道指标mock数据
this
.
mockData
(
value
);
}
...
...
@@ -517,7 +532,7 @@ public class GreenwaveHistProviderImpl extends BaseDubboInterfaceImpl<GreenwaveH
po
.
setTimeAxis
(
time
);
tmpList
.
add
(
po
);
}
if
(
Objects
.
equals
(
3
,
objectType
)){
if
(
Objects
.
equals
(
3
,
objectType
))
{
//车道指标mock数据
this
.
mockData
(
tmpList
);
}
...
...
@@ -530,13 +545,13 @@ public class GreenwaveHistProviderImpl extends BaseDubboInterfaceImpl<GreenwaveH
if
(
params
.
get
(
"dir"
)
!=
null
)
{
allList
=
allList
.
stream
().
filter
(
o
->
Objects
.
equals
(
params
.
get
(
"dir"
).
toString
(),
o
.
get
(
"dirType"
).
toString
())).
collect
(
Collectors
.
toList
());
}
List
<
String
>
timeList
=
this
.
getTimeAxisList
(
groupType
,
sortedSet
);
List
<
String
>
timeList
=
this
.
getTimeAxisList
(
groupType
,
sortedSet
);
BottomMenuBO
bo
=
new
BottomMenuBO
();
bo
.
setCrossId
(
crossId
);
bo
.
setScope
(
objectType
);
List
<
String
>
scopeListAll
=
mainlineEvaluateService
.
bottomMenu
(
bo
);
if
(
Objects
.
equals
(
4
,
objectType
))
{
List
<
String
>
scopeListAll
=
mainlineEvaluateService
.
bottomMenu
(
bo
);
if
(
Objects
.
equals
(
4
,
objectType
))
{
scopeListAll
=
scopeList
;
}
...
...
@@ -546,7 +561,7 @@ public class GreenwaveHistProviderImpl extends BaseDubboInterfaceImpl<GreenwaveH
jsonObject
.
put
(
"dataList"
,
allList
);
jsonObject
.
put
(
"scopeList"
,
scopeListAll
);
log
.
info
(
"findCrossObjectIndex总查耗时:{}ms,params:{}"
,
System
.
currentTimeMillis
()-
st1
,
params
);
log
.
info
(
"findCrossObjectIndex总查耗时:{}ms,params:{}"
,
System
.
currentTimeMillis
()
-
st1
,
params
);
return
jsonObject
;
}
...
...
@@ -566,13 +581,13 @@ public class GreenwaveHistProviderImpl extends BaseDubboInterfaceImpl<GreenwaveH
po
.
setSpeed
(
0
D
);
}
else
{
r
=
ArithOfBigDecmial
.
div
(
po
.
getFlow
(),
maxFlow
,
2
);
po
.
setDelayTime
((
int
)
ArithOfBigDecmial
.
round
(
5
+
r
*
20
,
0
));
po
.
setDelayTime
((
int
)
ArithOfBigDecmial
.
round
(
5
+
r
*
20
,
0
));
po
.
setSpeed
(
ArithOfBigDecmial
.
round
(
30
+
30
*
(
1
-
r
),
2
));
}
po
.
setSturation
(
ArithOfBigDecmial
.
round
(
r
*
100
,
2
));
po
.
setGreenLightEfficiency
(
ArithOfBigDecmial
.
round
(
r
*
0.8
*
100
,
2
));
po
.
setVehicleLengthRatioMean
(
ArithOfBigDecmial
.
round
(
r
*
0.9
*
100
,
2
));
if
(
po
.
getFlow
()
==
0
)
{
if
(
po
.
getFlow
()
==
0
)
{
po
.
setDelayTime
(
0
);
}
// DateTime dateTime = new DateTime(po.getStartTime());
...
...
@@ -765,7 +780,7 @@ public class GreenwaveHistProviderImpl extends BaseDubboInterfaceImpl<GreenwaveH
@Override
public
GreenHistIndexDTO
findGreenIndexByDateScope
(
Integer
greenId
,
String
startDate
,
String
endDate
)
{
List
<
GreenHistIndexDTO
>
list
=
greenwaveHistoryMapper
.
findGreenIndexByDateScope
(
greenId
,
startDate
,
endDate
);
List
<
GreenHistIndexDTO
>
list
=
greenwaveHistoryMapper
.
findGreenIndexByDateScope
(
greenId
,
startDate
,
endDate
);
if
(!
list
.
isEmpty
())
{
GreenHistIndexDTO
dto
=
list
.
get
(
0
);
String
flowAll
=
dto
.
getFlowAll
();
...
...
@@ -944,7 +959,7 @@ public class GreenwaveHistProviderImpl extends BaseDubboInterfaceImpl<GreenwaveH
tmp
.
setTurnType
(
value
.
get
(
0
).
getTurnType
());
tmp
.
setDirType
(
value
.
get
(
0
).
getDirType
());
tmp
.
setTimeAxis
(
timeSec
);
// String parseTime = startTime.substring(0, startTime.lastIndexOf(" ") + 1) + timeSec;
// String parseTime = startTime.substring(0, startTime.lastIndexOf(" ") + 1) + timeSec;
if
(
Objects
.
equals
(
"4"
,
groupType
))
{
tmp
.
setStartTime
(
DateTime
.
parse
(
timeSec
,
DateTimeFormat
.
forPattern
(
EsDateIndexUtil
.
YMD_FORMATTER
)).
toDate
());
}
else
{
...
...
@@ -970,7 +985,7 @@ public class GreenwaveHistProviderImpl extends BaseDubboInterfaceImpl<GreenwaveH
return
value
;
}
private
List
<
String
>
getTimeAxisList
(
String
groupType
,
List
<
String
>
timeList
)
{
private
List
<
String
>
getTimeAxisList
(
String
groupType
,
List
<
String
>
timeList
)
{
//存放时段
List
<
String
>
formatTimeList
=
new
ArrayList
<>();
if
(
Objects
.
equals
(
"4"
,
groupType
))
{
...
...
@@ -978,8 +993,8 @@ public class GreenwaveHistProviderImpl extends BaseDubboInterfaceImpl<GreenwaveH
formatTimeList
.
addAll
(
timeList
);
}
else
{
//小时分钟粒度
formatTimeList
.
addAll
(
timeList
.
stream
().
map
(
dt
->
dt
.
substring
(
dt
.
indexOf
(
" "
),
dt
.
lastIndexOf
(
":"
))).
collect
(
Collectors
.
toList
()));
formatTimeList
.
addAll
(
timeList
.
stream
().
map
(
dt
->
dt
.
substring
(
dt
.
indexOf
(
" "
),
dt
.
lastIndexOf
(
":"
))).
collect
(
Collectors
.
toList
()));
}
return
formatTimeList
;
return
formatTimeList
;
}
}
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