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
7a00fac6
Commit
7a00fac6
authored
Jan 07, 2025
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[add] 绿波时序图历史查询
parent
5dd0d883
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
56 additions
and
0 deletions
+56
-0
StrategyGreenBeltController.java
...opt/synthesis/controller/StrategyGreenBeltController.java
+12
-0
StrategyGreenBeltService.java
...wanji/opt/synthesis/service/StrategyGreenBeltService.java
+1
-0
StrategyGreenBeltServiceImpl.java
.../synthesis/service/impl/StrategyGreenBeltServiceImpl.java
+43
-0
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/synthesis/controller/StrategyGreenBeltController.java
View file @
7a00fac6
...
...
@@ -43,6 +43,18 @@ public class StrategyGreenBeltController {
return
JsonViewObject
.
newInstance
().
success
(
greenBeltChartVO
);
}
@ApiOperation
(
value
=
"绿波时序图历史查询"
,
notes
=
"绿波时序图历史查询"
,
response
=
JsonViewObject
.
class
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
@GetMapping
(
value
=
"/greenBeltChartHist"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
GreenBeltInfoVO
.
class
),
})
public
JsonViewObject
greenBeltChartHist
(
Integer
greenId
,
String
dateStr
)
throws
Exception
{
GreenBeltChartVO
greenBeltChartVO
=
strategyGreenBeltService
.
selectChartHist
(
greenId
,
dateStr
);
return
JsonViewObject
.
newInstance
().
success
(
greenBeltChartVO
);
}
@ApiOperation
(
value
=
"绿波时序图当天下发时间"
,
notes
=
"绿波时序图当天下发时间"
,
response
=
JsonViewObject
.
class
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
@GetMapping
(
value
=
"/greenBeltChartControlTime"
)
...
...
signal-optimize-service/src/main/java/net/wanji/opt/synthesis/service/StrategyGreenBeltService.java
View file @
7a00fac6
...
...
@@ -13,6 +13,7 @@ import java.util.List;
public
interface
StrategyGreenBeltService
{
GreenBeltChartVO
selectChart
(
Integer
greenId
,
String
dateStr
);
GreenBeltChartVO
selectChartHist
(
Integer
greenId
,
String
dateStr
);
List
<
GreenBeltStopTimesQueueLengthVO
>
greenBeltStopTimeQueueLength
(
Integer
greenId
);
GreenBeltAreaIndexVO
greenBeltAreaIndex
(
Integer
greenId
);
List
<
String
>
greenBeltChartControlTime
(
Integer
greenId
);
...
...
signal-optimize-service/src/main/java/net/wanji/opt/synthesis/service/impl/StrategyGreenBeltServiceImpl.java
View file @
7a00fac6
...
...
@@ -180,6 +180,49 @@ public class StrategyGreenBeltServiceImpl implements StrategyGreenBeltService {
return
null
;
}
@Override
public
GreenBeltChartVO
selectChartHist
(
Integer
greenId
,
String
dateStr
)
{
try
{
ObjectMapper
mapper
=
JacksonUtils
.
getInstance
();
LambdaQueryWrapper
<
StrategyGreenOptHistEntity
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
// 查询历史时序图
if
(
StringUtils
.
isNotBlank
(
dateStr
))
{
queryWrapper
.
eq
(
StrategyGreenOptHistEntity:
:
getGreenId
,
greenId
);
queryWrapper
.
eq
(
StrategyGreenOptHistEntity:
:
getControlMethod
,
1
);
queryWrapper
.
eq
(
StrategyGreenOptHistEntity:
:
getControlTime
,
dateStr
);
}
else
{
queryWrapper
.
eq
(
StrategyGreenOptHistEntity:
:
getGreenId
,
greenId
);
queryWrapper
.
eq
(
StrategyGreenOptHistEntity:
:
getControlMethod
,
1
);
queryWrapper
.
orderByDesc
(
StrategyGreenOptHistEntity:
:
getControlTime
);
//queryWrapper.last("LIMIT 2");
queryWrapper
.
last
(
"limit 2"
);
}
List
<
StrategyGreenOptHistEntity
>
entities
=
strategyGreenOptHistMapper
.
selectList
(
queryWrapper
);
if
(!
CollectionUtils
.
isEmpty
(
entities
))
{
Map
<
String
,
List
<
StrategyGreenOptHistEntity
>>
controlTimeMap
=
entities
.
stream
().
collect
(
Collectors
.
groupingBy
(
StrategyGreenOptHistEntity:
:
getControlTime
));
// 判断下发是否是正向还是反向 相同时间两条,双向绿波
GreenBeltInfoVO
greenBeltInfoVO
=
new
GreenBeltInfoVO
();
List
<
GreenBeltInfoVO
.
DirGreenDetail
>
dirGreenDetails
=
new
ArrayList
<>();
// 相同时间,双向绿波
if
(
controlTimeMap
.
size
()
==
1
)
{
setBeltInfo
(
mapper
,
entities
,
greenBeltInfoVO
,
dirGreenDetails
);
}
else
{
entities
.
remove
(
entities
.
size
()
-
1
);
setBeltInfo
(
mapper
,
entities
,
greenBeltInfoVO
,
dirGreenDetails
);
}
greenBeltInfoVO
.
setDirGreenDetails
(
dirGreenDetails
);
GreenBeltChartVO
greenBeltChartVO
=
calGreenChart
(
greenBeltInfoVO
);
return
greenBeltChartVO
;
}
}
catch
(
Exception
e
)
{
log
.
error
(
"数据转化异常"
,
e
);
throw
new
RuntimeException
(
e
);
}
return
null
;
}
private
static
void
setBeltInfo
(
ObjectMapper
mapper
,
List
<
StrategyGreenOptHistEntity
>
entities
,
GreenBeltInfoVO
greenBeltInfoVO
,
List
<
GreenBeltInfoVO
.
DirGreenDetail
>
dirGreenDetails
)
throws
JsonProcessingException
{
for
(
StrategyGreenOptHistEntity
entity
:
entities
)
{
greenBeltInfoVO
.
setGreenId
(
entity
.
getGreenId
());
...
...
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