Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
W
wj-datacenter-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
wj-datacenter-platform
Commits
c67fb008
Commit
c67fb008
authored
Dec 13, 2024
by
duanruiming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[update] 事件表添加修改时间,修改逻辑
parent
11d91c24
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
139 additions
and
83 deletions
+139
-83
EventInfoMapper.java
...ain/java/net/wanji/datacenter/mapper/EventInfoMapper.java
+8
-0
EventInfoPO.java
...c/main/java/net/wanji/datacenter/pojo/po/EventInfoPO.java
+7
-0
EventDataServiceImpl.java
...va/net/wanji/datacenter/service/EventDataServiceImpl.java
+58
-34
GreenBeltInfoServiceImpl.java
...nji/datacenter/service/impl/GreenBeltInfoServiceImpl.java
+49
-49
EventInfoMapper.xml
...ter-service/src/main/resources/mapper/EventInfoMapper.xml
+17
-0
No files found.
wj-datacenter-service/src/main/java/net/wanji/datacenter/mapper/EventInfoMapper.java
View file @
c67fb008
...
...
@@ -16,4 +16,12 @@ import java.util.List;
public
interface
EventInfoMapper
{
List
<
EventInfoPO
>
selectHistEvent
();
void
insertOne
(
EventInfoPO
eventInfoPO
);
void
updateOne
(
EventInfoPO
eventInfoPO
);
/**
* 通过事件唯一ID查询
* @param eventSerialNumber
* @return
*/
EventInfoPO
selectByEventSerialNumber
(
String
eventSerialNumber
);
}
wj-datacenter-service/src/main/java/net/wanji/datacenter/pojo/po/EventInfoPO.java
View file @
c67fb008
...
...
@@ -91,6 +91,11 @@ public class EventInfoPO {
*/
@ApiModelProperty
(
name
=
"入库时间"
,
notes
=
""
)
private
Date
ruksj
;
/**
* 修改时间
*/
@ApiModelProperty
(
name
=
"入库时间"
,
notes
=
""
)
private
Date
modifyTime
;
/**
* 车道id
*/
...
...
@@ -147,4 +152,6 @@ public class EventInfoPO {
private
Integer
greenId
;
@ApiModelProperty
(
name
=
"事件方向,溢出方向"
,
notes
=
""
)
private
Integer
dir
;
@ApiModelProperty
(
name
=
"告警状态 0其他 1分析中 2优化中 3优化完"
,
notes
=
""
)
private
Integer
alarmStatus
;
}
wj-datacenter-service/src/main/java/net/wanji/datacenter/service/EventDataServiceImpl.java
View file @
c67fb008
...
...
@@ -3,16 +3,19 @@ package net.wanji.datacenter.service;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.common.utils.tool.JacksonUtils
;
import
net.wanji.common.utils.tool.StringUtils
;
import
net.wanji.datacenter.constant.EventAbnormalEnum
;
import
net.wanji.datacenter.mapper.EventInfoMapper
;
import
net.wanji.datacenter.pojo.dto.EventDataDTO
;
import
net.wanji.datacenter.pojo.po.EventInfoPO
;
import
org.jetbrains.annotations.NotNull
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.annotation.Resource
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.Objects
;
/**
* @author duanruiming
...
...
@@ -31,45 +34,66 @@ public class EventDataServiceImpl implements EventDataService {
try
{
ObjectMapper
mapper
=
JacksonUtils
.
getInstance
();
EventDataDTO
eventDataDTO
=
mapper
.
readValue
(
originData
,
EventDataDTO
.
class
);
EventInfoPO
eventInfoPO
=
new
EventInfoPO
();
String
eventTypeName
=
eventDataDTO
.
getEventType
();
if
(
EventAbnormalEnum
.
PHASE_EMPTY
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
PHASE_EMPTY
.
getType
());
}
if
(
EventAbnormalEnum
.
CROSS_UNBALANCE
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
CROSS_UNBALANCE
.
getType
());
}
if
(
EventAbnormalEnum
.
CROSS_OVERFLOW
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
CROSS_OVERFLOW
.
getType
());
}
if
(
EventAbnormalEnum
.
GREEN_SLOW
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
GREEN_SLOW
.
getType
());
String
eventId
=
eventDataDTO
.
getEventId
();
// 如果同一时间id更新结束时间和告警状态
if
(
StringUtils
.
isNotBlank
(
eventId
))
{
EventInfoPO
eventInfoPO4DB
=
eventInfoMapper
.
selectByEventSerialNumber
(
eventId
);
if
(
Objects
.
nonNull
(
eventInfoPO4DB
))
{
eventInfoPO4DB
.
setModifyTime
(
new
Date
());
eventInfoPO4DB
.
setEndTime
(
eventDataDTO
.
getEventEndTime
());
eventInfoPO4DB
.
setAlarmStatus
(
1
);
eventInfoMapper
.
updateOne
(
eventInfoPO4DB
);
}
}
if
(
EventAbnormalEnum
.
GREEN_CONGEST
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
GREEN_CONGEST
.
getType
());
}
if
(
EventAbnormalEnum
.
CROSS_CONGEST
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
CROSS_CONGEST
.
getType
());
}
Date
eventStartTime
=
eventDataDTO
.
getEventStartTime
();
eventInfoPO
.
setStartTime
(
eventStartTime
);
eventInfoPO
.
setEndTime
(
eventDataDTO
.
getEventEndTime
());
eventInfoPO
.
setEventSerialNumber
(
eventDataDTO
.
getEventId
());
eventInfoPO
.
setCrossId
(
eventDataDTO
.
getCrossId
());
eventInfoPO
.
setGreenId
(
eventDataDTO
.
getGreenId
());
SimpleDateFormat
format
=
new
SimpleDateFormat
(
"yyyyMMdd"
);
String
dateStr
=
format
.
format
(
eventStartTime
);
eventInfoPO
.
setDt
(
Integer
.
valueOf
(
dateStr
));
eventInfoPO
.
setLat
(
eventInfoPO
.
getLat
());
eventInfoPO
.
setLng
(
eventInfoPO
.
getLng
());
eventInfoPO
.
setCategory
(
eventDataDTO
.
getEventLevel
());
eventInfoPO
.
setPlaceDesc
(
eventDataDTO
.
getEventType
());
eventInfoPO
.
setDir
(
Integer
.
valueOf
(
eventDataDTO
.
getDirection
())
+
1
);
EventInfoPO
eventInfoPO
=
getEventInfoPO
(
eventDataDTO
);
eventInfoMapper
.
insertOne
(
eventInfoPO
);
}
catch
(
Exception
e
)
{
log
.
error
(
"事件保存异常:"
,
e
);
throw
new
RuntimeException
(
e
);
}
}
@NotNull
private
static
EventInfoPO
getEventInfoPO
(
EventDataDTO
eventDataDTO
)
{
EventInfoPO
eventInfoPO
=
new
EventInfoPO
();
String
eventTypeName
=
eventDataDTO
.
getEventType
();
setEventType
(
eventInfoPO
,
eventTypeName
);
Date
eventStartTime
=
eventDataDTO
.
getEventStartTime
();
eventInfoPO
.
setStartTime
(
eventStartTime
);
eventInfoPO
.
setEndTime
(
eventDataDTO
.
getEventEndTime
());
eventInfoPO
.
setEventSerialNumber
(
eventDataDTO
.
getEventId
());
eventInfoPO
.
setCrossId
(
eventDataDTO
.
getCrossId
());
eventInfoPO
.
setGreenId
(
eventDataDTO
.
getGreenId
());
SimpleDateFormat
format
=
new
SimpleDateFormat
(
"yyyyMMdd"
);
String
dateStr
=
format
.
format
(
eventStartTime
);
eventInfoPO
.
setDt
(
Integer
.
valueOf
(
dateStr
));
eventInfoPO
.
setLat
(
eventInfoPO
.
getLat
());
eventInfoPO
.
setLng
(
eventInfoPO
.
getLng
());
eventInfoPO
.
setCategory
(
eventDataDTO
.
getEventLevel
());
eventInfoPO
.
setPlaceDesc
(
eventDataDTO
.
getEventType
());
eventInfoPO
.
setDir
(
Integer
.
valueOf
(
eventDataDTO
.
getDirection
())
+
1
);
eventInfoPO
.
setRuksj
(
new
Date
());
return
eventInfoPO
;
}
private
static
void
setEventType
(
EventInfoPO
eventInfoPO
,
String
eventTypeName
)
{
if
(
EventAbnormalEnum
.
PHASE_EMPTY
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
PHASE_EMPTY
.
getType
());
}
if
(
EventAbnormalEnum
.
CROSS_UNBALANCE
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
CROSS_UNBALANCE
.
getType
());
}
if
(
EventAbnormalEnum
.
CROSS_OVERFLOW
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
CROSS_OVERFLOW
.
getType
());
}
if
(
EventAbnormalEnum
.
GREEN_SLOW
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
GREEN_SLOW
.
getType
());
}
if
(
EventAbnormalEnum
.
GREEN_CONGEST
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
GREEN_CONGEST
.
getType
());
}
if
(
EventAbnormalEnum
.
CROSS_CONGEST
.
getDesc
().
contains
(
eventTypeName
))
{
eventInfoPO
.
setType
(
EventAbnormalEnum
.
CROSS_CONGEST
.
getType
());
}
}
}
wj-datacenter-service/src/main/java/net/wanji/datacenter/service/impl/GreenBeltInfoServiceImpl.java
View file @
c67fb008
...
...
@@ -377,22 +377,22 @@ public class GreenBeltInfoServiceImpl implements GreenBeltInfoService {
public
static
String
greenBeltInfoData
=
"{\n"
+
" \"backward_direction\": \"e2w\",\n"
+
" \"belt_start_backward\": {\n"
+
" \"13MQV0B5KE0\":
47
.0,\n"
+
" \"13MRN0B5MV0\":
47
.0,\n"
+
" \"13MSS0B5NT0\":
8
.0,\n"
+
" \"13MVM0B5OV0\":
18
.0,\n"
+
" \"13MQV0B5KE0\":
13
.0,\n"
+
" \"13MRN0B5MV0\":
39
.0,\n"
+
" \"13MSS0B5NT0\":
0
.0,\n"
+
" \"13MVM0B5OV0\":
5
.0,\n"
+
" \"13N0C0B5P30\": 0.0\n"
+
" },\n"
+
" \"belt_start_forward\": {\n"
+
" \"13MQV0B5KE0\": 0.0,\n"
+
" \"13MRN0B5MV0\":
9
.0,\n"
+
" \"13MSS0B5NT0\":
50
.0,\n"
+
" \"13MVM0B5OV0\":
38
.0,\n"
+
" \"13N0C0B5P30\": 5
5
.0\n"
+
" \"13MRN0B5MV0\":
10
.0,\n"
+
" \"13MSS0B5NT0\":
46
.0,\n"
+
" \"13MVM0B5OV0\":
20
.0,\n"
+
" \"13N0C0B5P30\": 5
1
.0\n"
+
" },\n"
+
" \"control_duration\": 1800,\n"
+
" \"control_method\": 1,\n"
+
" \"control_time\": \"2024-12-
07T16:28
:00\",\n"
+
" \"control_time\": \"2024-12-
12T11:00
:00\",\n"
+
" \"cycle\": {\n"
+
" \"13MQV0B5KE0\": 140.0,\n"
+
" \"13MRN0B5MV0\": 140.0,\n"
+
...
...
@@ -402,53 +402,53 @@ public class GreenBeltInfoServiceImpl implements GreenBeltInfoService {
" },\n"
+
" \"distance_backward\": {\n"
+
" \"13MQV0B5KE0\": -1.0,\n"
+
" \"13MRN0B5MV0\": 9
37.5
,\n"
+
" \"13MSS0B5NT0\": 57
4.3035714285714
,\n"
+
" \"13MVM0B5OV0\": 8
10.5222222222224
,\n"
+
" \"13N0C0B5P30\":
195.0
\n"
+
" \"13MRN0B5MV0\": 9
47.2222222222222
,\n"
+
" \"13MSS0B5NT0\": 57
5.9686507936507
,\n"
+
" \"13MVM0B5OV0\": 8
07.5999999999999
,\n"
+
" \"13N0C0B5P30\":
200.71428571428572
\n"
+
" },\n"
+
" \"distance_forward\": {\n"
+
" \"13MQV0B5KE0\": 9
37.5
,\n"
+
" \"13MRN0B5MV0\": 5
80.6444444444445
,\n"
+
" \"13MSS0B5NT0\": 806.
1309523809523
,\n"
+
" \"13MVM0B5OV0\": 20
0.35714285714286
,\n"
+
" \"13MQV0B5KE0\": 9
47.2222222222222
,\n"
+
" \"13MRN0B5MV0\": 5
68.1777777777778
,\n"
+
" \"13MSS0B5NT0\": 806.
7321428571428
,\n"
+
" \"13MVM0B5OV0\": 20
2.85714285714283
,\n"
+
" \"13N0C0B5P30\": -1.0\n"
+
" },\n"
+
" \"dynamic\": 1,\n"
+
" \"forward_direction\": \"w2e\",\n"
+
" \"green_width_backward\": 62.0,\n"
+
" \"green_width_forward\": 6
3
.0,\n"
+
" \"green_width_forward\": 6
2
.0,\n"
+
" \"greenbelt_direction\": 2,\n"
+
" \"greenbelt_id\": \"3\",\n"
+
" \"greenbelt_length\": 2518.0,\n"
+
" \"greenbelt_type\": 1,\n"
+
" \"key_cross\": \"13MRN0B5MV0\",\n"
+
" \"max_cycle\": 140,\n"
+
" \"max_speed_backward\":
49
.0,\n"
+
" \"max_speed_forward\": 5
7
.0,\n"
+
" \"min_speed_backward\":
39
.0,\n"
+
" \"min_speed_forward\": 4
7
.0,\n"
+
" \"max_speed_backward\":
57
.0,\n"
+
" \"max_speed_forward\": 5
9
.0,\n"
+
" \"min_speed_backward\":
47
.0,\n"
+
" \"min_speed_forward\": 4
9
.0,\n"
+
" \"model_select\": 1,\n"
+
" \"offset\": {\n"
+
" \"13MQV0B5KE0\":
79
.0,\n"
+
" \"13MRN0B5MV0\":
4
.0,\n"
+
" \"13MSS0B5NT0\":
138
.0,\n"
+
" \"13MVM0B5OV0\":
60
.0,\n"
+
" \"13N0C0B5P30\":
60
.0\n"
+
" \"13MQV0B5KE0\":
117
.0,\n"
+
" \"13MRN0B5MV0\":
29
.0,\n"
+
" \"13MSS0B5NT0\":
27
.0,\n"
+
" \"13MVM0B5OV0\":
108
.0,\n"
+
" \"13N0C0B5P30\":
95
.0\n"
+
" },\n"
+
" \"phase_end_backward\": {\n"
+
" \"13MQV0B5KE0\": 11
7
.0,\n"
+
" \"13MRN0B5MV0\": 10
9
.0,\n"
+
" \"13MQV0B5KE0\": 11
4
.0,\n"
+
" \"13MRN0B5MV0\": 10
1
.0,\n"
+
" \"13MSS0B5NT0\": 114.0,\n"
+
" \"13MVM0B5OV0\": 10
8
.0,\n"
+
" \"13N0C0B5P30\": 7
5
.0\n"
+
" \"13MVM0B5OV0\": 10
6
.0,\n"
+
" \"13N0C0B5P30\": 7
0
.0\n"
+
" },\n"
+
" \"phase_end_forward\": {\n"
+
" \"13MQV0B5KE0\": 9
6
.0,\n"
+
" \"13MRN0B5MV0\": 10
9
.0,\n"
+
" \"13MQV0B5KE0\": 9
2
.0,\n"
+
" \"13MRN0B5MV0\": 10
1
.0,\n"
+
" \"13MSS0B5NT0\": 114.0,\n"
+
" \"13MVM0B5OV0\": 10
8
.0,\n"
+
" \"13N0C0B5P30\": 11
8
.0\n"
+
" \"13MVM0B5OV0\": 10
6
.0,\n"
+
" \"13N0C0B5P30\": 11
3
.0\n"
+
" },\n"
+
" \"phase_start_backward\": {\n"
+
" \"13MQV0B5KE0\": 0.0,\n"
+
...
...
@@ -466,30 +466,30 @@ public class GreenBeltInfoServiceImpl implements GreenBeltInfoService {
" },\n"
+
" \"speed_backward\": {\n"
+
" \"13MQV0B5KE0\": -1.0,\n"
+
" \"13MRN0B5MV0\":
4
5.0,\n"
+
" \"13MSS0B5NT0\":
45.94428571428572
,\n"
+
" \"13MVM0B5OV0\":
42.910000000000004
,\n"
+
" \"13N0C0B5P30\":
39.0
\n"
+
" \"13MRN0B5MV0\":
5
5.0,\n"
+
" \"13MSS0B5NT0\":
50.57285714285714
,\n"
+
" \"13MVM0B5OV0\":
53.839999999999996
,\n"
+
" \"13N0C0B5P30\":
40.142857142857146
\n"
+
" },\n"
+
" \"speed_forward\": {\n"
+
" \"13MQV0B5KE0\":
4
5.0,\n"
+
" \"13MRN0B5MV0\": 6
1.48
0000000000004,\n"
+
" \"13MSS0B5NT0\": 5
8.04142857142857
,\n"
+
" \"13MVM0B5OV0\": 4
2.42857142857143
,\n"
+
" \"13MQV0B5KE0\":
5
5.0,\n"
+
" \"13MRN0B5MV0\": 6
0.16
0000000000004,\n"
+
" \"13MSS0B5NT0\": 5
2.80428571428571
,\n"
+
" \"13MVM0B5OV0\": 4
0.57142857142857
,\n"
+
" \"13N0C0B5P30\": -1.0\n"
+
" },\n"
+
" \"travel_time_backward\": {\n"
+
" \"13MQV0B5KE0\": -1.0,\n"
+
" \"13MRN0B5MV0\":
75
.0,\n"
+
" \"13MSS0B5NT0\": 4
5
.0,\n"
+
" \"13MVM0B5OV0\":
68
.0,\n"
+
" \"13MRN0B5MV0\":
62
.0,\n"
+
" \"13MSS0B5NT0\": 4
1
.0,\n"
+
" \"13MVM0B5OV0\":
54
.0,\n"
+
" \"13N0C0B5P30\": 18.0\n"
+
" },\n"
+
" \"travel_time_forward\": {\n"
+
" \"13MQV0B5KE0\":
75
.0,\n"
+
" \"13MQV0B5KE0\":
62
.0,\n"
+
" \"13MRN0B5MV0\": 34.0,\n"
+
" \"13MSS0B5NT0\": 5
0
.0,\n"
+
" \"13MVM0B5OV0\": 1
7
.0,\n"
+
" \"13MSS0B5NT0\": 5
5
.0,\n"
+
" \"13MVM0B5OV0\": 1
8
.0,\n"
+
" \"13N0C0B5P30\": -1.0\n"
+
" }\n"
+
"}"
;
...
...
wj-datacenter-service/src/main/resources/mapper/EventInfoMapper.xml
View file @
c67fb008
...
...
@@ -38,6 +38,8 @@
<result
column=
"dt"
property=
"dt"
/>
<result
column=
"green_id"
property=
"greenId"
/>
<result
column=
"dir"
property=
"dir"
/>
<result
column=
"alarm_status"
property=
"alarmStatus"
/>
<result
column=
"modify_time"
property=
"modifyTime"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
...
...
@@ -52,6 +54,21 @@
WHERE ruksj >= NOW() - INTERVAL 30 MINUTE
</select>
<update
id=
"updateOne"
parameterType=
"net.wanji.datacenter.pojo.po.EventInfoPO"
>
update t_event_info
set alarm_status = #{entity.alarmStatus}
set end_time = #{entity.endTime}
set alarm_status = #{entity.alarmStatus}
set modify_time = #{entity.modifyTime}
where event_serial_number = #{entity.eventSerialNumber}
</update>
<select
id=
"selectHistEvent"
parameterType=
"java.lang.String"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_event_info
WHERE event_serial_number = #{eventSerialNumber}
</select>
<!-- 新增表t_event_info信息 -->
<insert
id=
"insertOne"
>
...
...
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