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
cf32f8d8
Commit
cf32f8d8
authored
Feb 07, 2023
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[add] 态势检测-路口列表手动控制
parent
287fc781
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
47 additions
and
5 deletions
+47
-5
SituationDetectionController.java
...et/wanji/web/controller/SituationDetectionController.java
+9
-0
ControlHistMapper.java
...src/main/java/net/wanji/web/mapper/ControlHistMapper.java
+2
-0
SituationDetectionService.java
...java/net/wanji/web/service/SituationDetectionService.java
+3
-0
SituationDetectionServiceImpl.java
...wanji/web/service/impl/SituationDetectionServiceImpl.java
+16
-0
ControlHistMapper.xml
...l-service/src/main/resources/mapper/ControlHistMapper.xml
+17
-5
No files found.
signal-control-service/src/main/java/net/wanji/web/controller/SituationDetectionController.java
View file @
cf32f8d8
...
...
@@ -3,6 +3,7 @@ package net.wanji.web.controller;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
net.wanji.feign.pojo.result.JsonViewObject
;
import
net.wanji.web.entity.TCrossControlHist
;
import
net.wanji.web.entity.TDeviceStatusLog
;
import
net.wanji.web.po.AreaTreePO
;
import
net.wanji.web.service.SituationDetectionService
;
...
...
@@ -202,4 +203,12 @@ public class SituationDetectionController extends BaseController {
return
jsonViewObject
.
success
(
result
);
}
@ApiOperation
(
value
=
"路口列表-手动控制"
,
notes
=
"路口列表-手动控制"
)
@GetMapping
(
"/listSignalControlInfos"
)
public
JsonViewObject
listSignalControlInfos
()
{
Map
<
String
,
List
<
TCrossControlHist
>>
result
=
situationDetectionService
.
listSignalControlList
();
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
return
jsonViewObject
.
success
(
result
);
}
}
signal-control-service/src/main/java/net/wanji/web/mapper/ControlHistMapper.java
View file @
cf32f8d8
...
...
@@ -20,4 +20,6 @@ public interface ControlHistMapper {
int
insertOne
(
@Param
(
"crossId"
)
String
crossId
,
@Param
(
"type"
)
Integer
type
,
@Param
(
"operationUser"
)
String
operationUser
);
TCrossControlHist
selectRecentOne
(
@Param
(
"crossId"
)
String
crossId
);
List
<
TCrossControlHist
>
selectRecentList
();
}
signal-control-service/src/main/java/net/wanji/web/service/SituationDetectionService.java
View file @
cf32f8d8
package
net
.
wanji
.
web
.
service
;
import
net.wanji.web.entity.TBaseCrossInfo
;
import
net.wanji.web.entity.TCrossControlHist
;
import
net.wanji.web.entity.TDeviceStatusLog
;
import
net.wanji.web.po.AreaTreePO
;
import
net.wanji.web.vo.situationDetection.*
;
...
...
@@ -44,4 +45,6 @@ public interface SituationDetectionService {
List
<
TDeviceStatusLog
>
listSignalFaultInfos
();
DeviceFaultCountVO
countSignalFaultInfos
();
Map
<
String
,
List
<
TCrossControlHist
>>
listSignalControlList
();
}
signal-control-service/src/main/java/net/wanji/web/service/impl/SituationDetectionServiceImpl.java
View file @
cf32f8d8
...
...
@@ -480,6 +480,22 @@ public class SituationDetectionServiceImpl implements SituationDetectionService
countVO
.
setAllCount
(
tDeviceStatusInfos
.
size
());
return
countVO
;
}
@Override
public
Map
<
String
,
List
<
TCrossControlHist
>>
listSignalControlList
()
{
Map
<
String
,
List
<
TCrossControlHist
>>
resultMap
=
new
HashMap
<>();
List
<
TCrossControlHist
>
tCrossControlHists
=
controlHistMapper
.
selectRecentList
();
List
<
TCrossControlHist
>
centerOptList
=
tCrossControlHists
.
stream
().
filter
(
tCrossControlHist
->
tCrossControlHist
.
getType
()
==
5
).
collect
(
Collectors
.
toList
());
resultMap
.
put
(
"1"
,
centerOptList
);
// 中心优化
List
<
TCrossControlHist
>
manualControlList
=
tCrossControlHists
.
stream
().
filter
(
item
->
item
.
getType
()
<
5
&&
item
.
getType
()
>
1
).
collect
(
Collectors
.
toList
());
resultMap
.
put
(
"2"
,
manualControlList
);
// 手动控制
List
<
TCrossControlHist
>
edgeOptList
=
tCrossControlHists
.
stream
().
filter
(
tCrossControlHist
->
tCrossControlHist
.
getType
()
==
6
).
collect
(
Collectors
.
toList
());
resultMap
.
put
(
"3"
,
edgeOptList
);
// 边缘优化
List
<
TCrossControlHist
>
specialServiceList
=
tCrossControlHists
.
stream
().
filter
(
tCrossControlHist
->
tCrossControlHist
.
getType
()
==
7
).
collect
(
Collectors
.
toList
());
resultMap
.
put
(
"4"
,
specialServiceList
);
// 特勤控制
return
resultMap
;
}
}
class
CrossAlarmComparator
implements
Comparator
<
CrossAlarmOutVO
>
{
...
...
signal-control-service/src/main/resources/mapper/ControlHistMapper.xml
View file @
cf32f8d8
...
...
@@ -24,11 +24,12 @@
</sql>
<select
id=
"selectByCrossId"
resultMap=
"BaseResultMap"
>
select
concat(hour(start_time), ':', floor(minute(start_time)/30)*
30) as controlTime,
type
as controlType,
count(*)
as typeCount
select
concat(hour(start_time), ':', floor(minute(start_time)/30) *
30) as controlTime,
type
as controlType,
count(*)
as typeCount
from t_cross_control_hist
where cross_id = #{crossId} and to_days(#{todayDate}) = to_days(start_time)
where cross_id = #{crossId}
and to_days(#{todayDate}) = to_days(start_time)
group by controlTime, controlType
order by controlTime
</select>
...
...
@@ -40,7 +41,7 @@
<select
id=
"selectRecentOne"
resultType=
"net.wanji.web.entity.TCrossControlHist"
>
select
<include
refid=
"Base_Column_List"
/>
<include
refid=
"Base_Column_List"
/>
from t_cross_control_hist
<where>
<if
test=
"crossId != null and crossId !=''"
>
...
...
@@ -49,4 +50,15 @@
and start_time = (select max(start_time) from t_cross_control_hist)
</where>
</select>
<select
id=
"selectRecentList"
resultMap=
"tCrossControlHist"
>
select
<include
refid=
"Base_Column_List"
/>
from t_cross_control_hist
where start_time in (select max(start_time)
from t_cross_control_hist
where cross_id in (select id as cross_id
from t_base_cross_info)
group by cross_id);
</select>
</mapper>
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