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
8634f16b
Commit
8634f16b
authored
Apr 16, 2025
by
duwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mock数据去掉
parent
376b569d
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
76 additions
and
72 deletions
+76
-72
TrendController.java
...c/main/java/net/wanji/opt/controller/TrendController.java
+68
-68
RunningEvaluateServiceImpl.java
...et/wanji/opt/service/impl/RunningEvaluateServiceImpl.java
+8
-4
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/controller/TrendController.java
View file @
8634f16b
...
@@ -296,24 +296,24 @@ public class TrendController {
...
@@ -296,24 +296,24 @@ public class TrendController {
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
TableQueryVO
.
CycleDataElement
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
TableQueryVO
.
CycleDataElement
.
class
),
})
})
public
JsonViewObject
laneTrafficIndex
(
@RequestBody
LanePeriodVO
crossIdDateTimeVO
)
throws
Exception
{
public
JsonViewObject
laneTrafficIndex
(
@RequestBody
LanePeriodVO
crossIdDateTimeVO
)
throws
Exception
{
Date
start
=
crossIdDateTimeVO
.
getStart
();
//
Date start = crossIdDateTimeVO.getStart();
if
(
isMock
==
true
){
//
if(isMock == true){
crossIdDateTimeVO
.
setCrossId
(
"12Q5V099C30"
);
//
crossIdDateTimeVO.setCrossId("12Q5V099C30");
String
time
=
DateUtil
.
format
(
start
,
"HH:mm:ss"
);
//
String time = DateUtil.format(start, "HH:mm:ss");
crossIdDateTimeVO
.
setStart
(
DateUtil
.
parse
(
"2025-04-10 "
+
time
,
"yyyy-MM-dd HH:mm:ss"
));
//
crossIdDateTimeVO.setStart(DateUtil.parse("2025-04-10 " + time, "yyyy-MM-dd HH:mm:ss"));
crossIdDateTimeVO
.
setEnd
(
DateUtil
.
parse
(
"2025-04-10 18:00:00"
,
"yyyy-MM-dd HH:mm:ss"
));
//
crossIdDateTimeVO.setEnd(DateUtil.parse("2025-04-10 18:00:00", "yyyy-MM-dd HH:mm:ss"));
}
//
}
List
<
TableQueryVO
.
CycleDataElement
>
result
=
trendService
.
laneTrafficIndex
(
crossIdDateTimeVO
);
List
<
TableQueryVO
.
CycleDataElement
>
result
=
trendService
.
laneTrafficIndex
(
crossIdDateTimeVO
);
if
(
isMock
==
true
){
//
if(isMock == true){
//提取yyyy-MM-dd
//
//提取yyyy-MM-dd
String
date
=
DateUtil
.
format
(
start
,
"yyyy-MM-dd"
);
//
String date = DateUtil.format(start, "yyyy-MM-dd");
result
.
forEach
(
item
->
{
//
result.forEach(item -> {
//提取HH:mm:ss
//
//提取HH:mm:ss
String
time
=
DateUtil
.
format
(
item
.
getTime
(),
"HH:mm:ss"
);
//
String time = DateUtil.format(item.getTime(), "HH:mm:ss");
time
=
date
+
" "
+
time
;
//
time = date + " " + time;
item
.
setTime
(
DateUtil
.
parse
(
time
,
"yyyy-MM-dd HH:mm:ss"
));
//
item.setTime(DateUtil.parse(time, "yyyy-MM-dd HH:mm:ss"));
});
//
});
}
//
}
return
JsonViewObject
.
newInstance
().
success
(
result
);
return
JsonViewObject
.
newInstance
().
success
(
result
);
}
}
...
@@ -331,13 +331,13 @@ public class TrendController {
...
@@ -331,13 +331,13 @@ public class TrendController {
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
AnalysisRidTurnIndicators
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
AnalysisRidTurnIndicators
.
class
),
})
})
public
JsonViewObject
lanePeriodTurnData
(
@RequestBody
LanePeriodTurnVO
lanePeriodTurnVO
)
throws
Exception
{
public
JsonViewObject
lanePeriodTurnData
(
@RequestBody
LanePeriodTurnVO
lanePeriodTurnVO
)
throws
Exception
{
Date
start
=
lanePeriodTurnVO
.
getStart
();
//
Date start = lanePeriodTurnVO.getStart();
if
(
isMock
==
true
){
//
if(isMock == true){
lanePeriodTurnVO
.
setCrossId
(
"12Q5V099C30"
);
//
lanePeriodTurnVO.setCrossId("12Q5V099C30");
String
time
=
DateUtil
.
format
(
start
,
"HH:mm:ss"
);
//
String time = DateUtil.format(start, "HH:mm:ss");
lanePeriodTurnVO
.
setStart
(
DateUtil
.
parse
(
"2025-04-09 "
+
time
,
"yyyy-MM-dd HH:mm:ss"
));
//
lanePeriodTurnVO.setStart(DateUtil.parse("2025-04-09 " + time, "yyyy-MM-dd HH:mm:ss"));
lanePeriodTurnVO
.
setEnd
(
DateUtil
.
parse
(
"2025-04-12 00:00:00"
,
"yyyy-MM-dd HH:mm:ss"
));
//
lanePeriodTurnVO.setEnd(DateUtil.parse("2025-04-12 00:00:00", "yyyy-MM-dd HH:mm:ss"));
}
//
}
String
turns
=
lanePeriodTurnVO
.
getTurns
();
String
turns
=
lanePeriodTurnVO
.
getTurns
();
if
(
turns
!=
null
){
if
(
turns
!=
null
){
StringBuilder
inDir
=
new
StringBuilder
();
StringBuilder
inDir
=
new
StringBuilder
();
...
@@ -359,16 +359,16 @@ public class TrendController {
...
@@ -359,16 +359,16 @@ public class TrendController {
lanePeriodTurnVO
.
setTurnType
(
turnType
.
toString
());
lanePeriodTurnVO
.
setTurnType
(
turnType
.
toString
());
}
}
List
<
CrossingTurnQueryVO
.
CycleDataElement
>
result
=
trendService
.
lanePeriodTurnData
(
lanePeriodTurnVO
);
List
<
CrossingTurnQueryVO
.
CycleDataElement
>
result
=
trendService
.
lanePeriodTurnData
(
lanePeriodTurnVO
);
if
(
isMock
==
true
){
//
if(isMock == true){
//提取yyyy-MM-dd
//
//提取yyyy-MM-dd
String
date
=
DateUtil
.
format
(
start
,
"yyyy-MM-dd"
);
//
String date = DateUtil.format(start, "yyyy-MM-dd");
result
.
forEach
(
item
->
{
//
result.forEach(item -> {
//提取HH:mm:ss
//
//提取HH:mm:ss
String
time
=
DateUtil
.
format
(
item
.
getTime
(),
"HH:mm:ss"
);
//
String time = DateUtil.format(item.getTime(), "HH:mm:ss");
time
=
date
+
" "
+
time
;
//
time = date + " " + time;
item
.
setTime
(
DateUtil
.
parse
(
time
,
"yyyy-MM-dd HH:mm:ss"
));
//
item.setTime(DateUtil.parse(time, "yyyy-MM-dd HH:mm:ss"));
});
//
});
}
//
}
return
JsonViewObject
.
newInstance
().
success
(
result
);
return
JsonViewObject
.
newInstance
().
success
(
result
);
}
}
...
@@ -396,24 +396,24 @@ public class TrendController {
...
@@ -396,24 +396,24 @@ public class TrendController {
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
AnalysisRidTurnIndicators
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
AnalysisRidTurnIndicators
.
class
),
})
})
public
JsonViewObject
periodDirectionData
(
@RequestBody
PeriodDirectionVO
periodDirectionVO
)
throws
Exception
{
public
JsonViewObject
periodDirectionData
(
@RequestBody
PeriodDirectionVO
periodDirectionVO
)
throws
Exception
{
Date
start
=
periodDirectionVO
.
getStart
();
//
Date start = periodDirectionVO.getStart();
if
(
isMock
==
true
){
//
if(isMock == true){
periodDirectionVO
.
setCrossId
(
"12Q5V099C30"
);
//
periodDirectionVO.setCrossId("12Q5V099C30");
String
time
=
DateUtil
.
format
(
start
,
"HH:mm:ss"
);
//
String time = DateUtil.format(start, "HH:mm:ss");
periodDirectionVO
.
setStart
(
DateUtil
.
parse
(
"2025-04-15 "
+
time
,
"yyyy-MM-dd HH:mm:ss"
));
//
periodDirectionVO.setStart(DateUtil.parse("2025-04-15 " + time, "yyyy-MM-dd HH:mm:ss"));
periodDirectionVO
.
setEnd
(
DateUtil
.
parse
(
"2025-04-17 00:00:00"
,
"yyyy-MM-dd HH:mm:ss"
));
//
periodDirectionVO.setEnd(DateUtil.parse("2025-04-17 00:00:00", "yyyy-MM-dd HH:mm:ss"));
}
//
}
List
<
CrossingDirectionQueryVO
.
CycleDataElement
>
result
=
trendService
.
periodDirectionData
(
periodDirectionVO
);
List
<
CrossingDirectionQueryVO
.
CycleDataElement
>
result
=
trendService
.
periodDirectionData
(
periodDirectionVO
);
if
(
isMock
==
true
){
//
if(isMock == true){
//提取yyyy-MM-dd
//
//提取yyyy-MM-dd
String
date
=
DateUtil
.
format
(
start
,
"yyyy-MM-dd"
);
//
String date = DateUtil.format(start, "yyyy-MM-dd");
result
.
forEach
(
item
->
{
//
result.forEach(item -> {
//提取HH:mm:ss
//
//提取HH:mm:ss
String
time
=
DateUtil
.
format
(
item
.
getTime
(),
"HH:mm:ss"
);
//
String time = DateUtil.format(item.getTime(), "HH:mm:ss");
time
=
date
+
" "
+
time
;
//
time = date + " " + time;
item
.
setTime
(
DateUtil
.
parse
(
time
,
"yyyy-MM-dd HH:mm:ss"
));
//
item.setTime(DateUtil.parse(time, "yyyy-MM-dd HH:mm:ss"));
});
//
});
}
//
}
return
JsonViewObject
.
newInstance
().
success
(
result
);
return
JsonViewObject
.
newInstance
().
success
(
result
);
}
}
...
@@ -438,24 +438,24 @@ public class TrendController {
...
@@ -438,24 +438,24 @@ public class TrendController {
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
AnalysisRidTurnIndicators
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
AnalysisRidTurnIndicators
.
class
),
})
})
public
JsonViewObject
periodDirectionData
(
@RequestBody
PeriodCrossingVO
periodCrossingVO
)
throws
Exception
{
public
JsonViewObject
periodDirectionData
(
@RequestBody
PeriodCrossingVO
periodCrossingVO
)
throws
Exception
{
Date
start
=
periodCrossingVO
.
getStart
();
//
Date start = periodCrossingVO.getStart();
if
(
isMock
==
true
){
//
if(isMock == true){
periodCrossingVO
.
setCrossId
(
"12Q5V099C30"
);
//
periodCrossingVO.setCrossId("12Q5V099C30");
String
time
=
DateUtil
.
format
(
start
,
"HH:mm:ss"
);
//
String time = DateUtil.format(start, "HH:mm:ss");
periodCrossingVO
.
setStart
(
DateUtil
.
parse
(
"2025-04-09 "
+
time
,
"yyyy-MM-dd HH:mm:ss"
));
//
periodCrossingVO.setStart(DateUtil.parse("2025-04-09 " + time, "yyyy-MM-dd HH:mm:ss"));
periodCrossingVO
.
setEnd
(
DateUtil
.
parse
(
"2025-04-12 00:00:00"
,
"yyyy-MM-dd HH:mm:ss"
));
//
periodCrossingVO.setEnd(DateUtil.parse("2025-04-12 00:00:00", "yyyy-MM-dd HH:mm:ss"));
}
//
}
List
<
CrossingQueryVO
.
CycleDataElement
>
result
=
trendService
.
periodCrossingData
(
periodCrossingVO
);
List
<
CrossingQueryVO
.
CycleDataElement
>
result
=
trendService
.
periodCrossingData
(
periodCrossingVO
);
if
(
isMock
==
true
){
//
if(isMock == true){
//提取yyyy-MM-dd
//
//提取yyyy-MM-dd
String
date
=
DateUtil
.
format
(
start
,
"yyyy-MM-dd"
);
//
String date = DateUtil.format(start, "yyyy-MM-dd");
result
.
forEach
(
item
->
{
//
result.forEach(item -> {
//提取HH:mm:ss
//
//提取HH:mm:ss
String
time
=
DateUtil
.
format
(
item
.
getTime
(),
"HH:mm:ss"
);
//
String time = DateUtil.format(item.getTime(), "HH:mm:ss");
time
=
date
+
" "
+
time
;
//
time = date + " " + time;
item
.
setTime
(
DateUtil
.
parse
(
time
,
"yyyy-MM-dd HH:mm:ss"
));
//
item.setTime(DateUtil.parse(time, "yyyy-MM-dd HH:mm:ss"));
});
//
});
}
//
}
return
JsonViewObject
.
newInstance
().
success
(
result
);
return
JsonViewObject
.
newInstance
().
success
(
result
);
}
}
...
...
signal-optimize-service/src/main/java/net/wanji/opt/service/impl/RunningEvaluateServiceImpl.java
View file @
8634f16b
...
@@ -3,6 +3,7 @@ package net.wanji.opt.service.impl;
...
@@ -3,6 +3,7 @@ package net.wanji.opt.service.impl;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.date.DateTime
;
import
cn.hutool.core.date.DateTime
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.core.util.NumberUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
...
@@ -314,7 +315,7 @@ public class RunningEvaluateServiceImpl implements RunningEvaluateService {
...
@@ -314,7 +315,7 @@ public class RunningEvaluateServiceImpl implements RunningEvaluateService {
//4. 过滤有问题的记录
//4. 过滤有问题的记录
List
<
MetricHistDTO
>
filteredList
=
crossDTOList
.
stream
()
List
<
MetricHistDTO
>
filteredList
=
crossDTOList
.
stream
()
.
filter
(
metricHistDTO
->
metricHistDTO
.
getStatus
()
!=
null
&&
metricHistDTO
.
getStatus
().
equals
(
status
)
)
.
filter
(
metricHistDTO
->
metricHistDTO
.
getStatus
()
!=
null
&&
metricHistDTO
.
getStatus
().
intValue
()==
status
)
.
collect
(
Collectors
.
toList
());
.
collect
(
Collectors
.
toList
());
//5. 整合数据(按状态、时间区间重叠合并,并计算持续时间)
//5. 整合数据(按状态、时间区间重叠合并,并计算持续时间)
...
@@ -795,9 +796,12 @@ public class RunningEvaluateServiceImpl implements RunningEvaluateService {
...
@@ -795,9 +796,12 @@ public class RunningEvaluateServiceImpl implements RunningEvaluateService {
filteredGrouped
.
forEach
((
key
,
list
)
->
{
filteredGrouped
.
forEach
((
key
,
list
)
->
{
RunningEvaluateHeatMapVO
runningEvaluateHeatMapVO
=
new
RunningEvaluateHeatMapVO
();
RunningEvaluateHeatMapVO
runningEvaluateHeatMapVO
=
new
RunningEvaluateHeatMapVO
();
if
(
ObjectUtil
.
isNotEmpty
(
key
))
{
if
(
ObjectUtil
.
isNotEmpty
(
key
))
{
runningEvaluateHeatMapVO
.
setDir
(
Integer
.
parseInt
(
key
));
//判断是否数字
runningEvaluateHeatMapVO
.
setCounts
(
list
.
size
());
if
(
NumberUtil
.
isNumber
(
key
))
{
res
.
add
(
runningEvaluateHeatMapVO
);
runningEvaluateHeatMapVO
.
setDir
(
Integer
.
parseInt
(
key
));
runningEvaluateHeatMapVO
.
setCounts
(
list
.
size
());
res
.
add
(
runningEvaluateHeatMapVO
);
}
}
}
});
});
...
...
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