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
1ad795a7
Commit
1ad795a7
authored
Jun 09, 2023
by
hanbing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[update] 信号优化首页,子区信息-路口监测
parent
9927b379
Changes
15
Show whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
261 additions
and
95 deletions
+261
-95
SituationDetectionController.java
...et/wanji/web/controller/SituationDetectionController.java
+0
-15
GreenwaveCrossPO.java
...vice/src/main/java/net/wanji/web/po/GreenwaveCrossPO.java
+0
-17
SituationDetectionService.java
...java/net/wanji/web/service/SituationDetectionService.java
+0
-2
SituationDetectionServiceImpl.java
...wanji/web/service/impl/SituationDetectionServiceImpl.java
+49
-24
GreenwaveCrossMapper.xml
...ervice/src/main/resources/mapper/GreenwaveCrossMapper.xml
+0
-21
GreenwaveIdBO.java
...service/src/main/java/net/wanji/opt/bo/GreenwaveIdBO.java
+16
-0
TrendController.java
...c/main/java/net/wanji/opt/controller/TrendController.java
+14
-6
TrendService.java
...ice/src/main/java/net/wanji/opt/service/TrendService.java
+4
-5
TrendServiceImpl.java
...ain/java/net/wanji/opt/service/impl/TrendServiceImpl.java
+66
-5
GreenWaveCrossMonitorVO.java
...c/main/java/net/wanji/opt/vo/GreenWaveCrossMonitorVO.java
+26
-0
GreenwaveCrossPO.java
...n/java/net/wanji/databus/dao/entity/GreenwaveCrossPO.java
+50
-0
CrossDirDataRealtimeMapper.java
.../wanji/databus/dao/mapper/CrossDirDataRealtimeMapper.java
+2
-0
GreenwaveCrossMapper.java
...va/net/wanji/databus/dao/mapper/GreenwaveCrossMapper.java
+15
-0
CrossDirDataRealtimeMapper.xml
.../src/main/resources/mapper/CrossDirDataRealtimeMapper.xml
+6
-0
GreenwaveCrossMapper.xml
...atabus/src/main/resources/mapper/GreenwaveCrossMapper.xml
+13
-0
No files found.
signal-control-service/src/main/java/net/wanji/web/controller/SituationDetectionController.java
View file @
1ad795a7
...
...
@@ -147,21 +147,6 @@ public class SituationDetectionController extends BaseController {
return
jsonViewObject
.
success
(
allDeviceStatusMap
);
}
@AspectLog
(
description
=
"绿波监测-关联路口"
,
operationType
=
BaseEnum
.
OperationTypeEnum
.
QUERY
)
@ApiOperation
(
value
=
"绿波监测-关联路口"
,
notes
=
"绿波监测-关联路口"
,
response
=
JsonViewObject
.
class
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
@PostMapping
(
value
=
"/greenwaveCross"
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
public
JsonViewObject
greenwaveCross
(
@RequestBody
GreenwaveCrossInVO
greenwaveCrossInVO
)
{
String
adCode
=
greenwaveCrossInVO
.
getAdCode
();
String
currentTime
=
greenwaveCrossInVO
.
getCurrentTime
();
Integer
id
=
greenwaveCrossInVO
.
getId
();
List
<
GreenwaveCrossOutVO
>
greenwaveCrossOutVOList
=
situationDetectionService
.
greenwaveCross
(
adCode
,
currentTime
,
id
);
JsonViewObject
jsonViewObject
=
JsonViewObject
.
newInstance
();
return
jsonViewObject
.
success
(
greenwaveCrossOutVOList
);
}
@AspectLog
(
description
=
"路口设备状态信息"
,
operationType
=
BaseEnum
.
OperationTypeEnum
.
QUERY
)
@ApiOperation
(
value
=
"路口设备状态信息"
,
notes
=
"路口设备状态信息"
,
response
=
JsonViewObject
.
class
,
produces
=
MediaType
.
APPLICATION_JSON
)
...
...
signal-control-service/src/main/java/net/wanji/web/po/GreenwaveCrossPO.java
deleted
100644 → 0
View file @
9927b379
package
net
.
wanji
.
web
.
po
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @author Kent HAN
* @date 2022/10/31 11:04
*/
@Data
public
class
GreenwaveCrossPO
{
@ApiModelProperty
(
name
=
"路口名称"
,
notes
=
""
)
private
String
name
;
@ApiModelProperty
(
name
=
"位置信息POINT(经度,维度)"
,
notes
=
""
)
private
String
location
;
}
signal-control-service/src/main/java/net/wanji/web/service/SituationDetectionService.java
View file @
1ad795a7
...
...
@@ -30,8 +30,6 @@ public interface SituationDetectionService {
Map
<
String
,
Map
<
String
,
Integer
>>
allDeviceStatus
(
String
adCode
);
List
<
GreenwaveCrossOutVO
>
greenwaveCross
(
String
adCode
,
String
currentTime
,
Integer
id
);
List
<
CrossDeviceStatusInfoOutVO
>
crossDeviceStatusInfo
();
BaseCrossInfoPO
selectCrossInfoById
(
String
signalId
);
...
...
signal-control-service/src/main/java/net/wanji/web/service/impl/SituationDetectionServiceImpl.java
View file @
1ad795a7
...
...
@@ -12,9 +12,14 @@ import net.wanji.common.utils.tool.BeanListUtils;
import
net.wanji.common.utils.tool.BeanMapUtils
;
import
net.wanji.common.utils.tool.CrossUtil
;
import
net.wanji.databus.dao.mapper.BaseCrossInfoMapper
;
import
net.wanji.databus.dao.mapper.GreenwaveCrossMapper
;
import
net.wanji.databus.po.BaseCrossInfoPO
;
import
net.wanji.databus.po.TBaseCrossInfo
;
import
net.wanji.databus.vo.*
;
import
net.wanji.databus.vo.CrossDeviceStatusInfoOutVO
;
import
net.wanji.databus.vo.CrossInfoOutVo
;
import
net.wanji.databus.vo.CrossInfoPageVO
;
import
net.wanji.databus.vo.ManufacturerInfoOutVO
;
import
net.wanji.databus.vo.ManufacturerVO
;
import
net.wanji.feign.service.UtcFeignClients
;
import
net.wanji.web.common.enums.ControlHistEnum
;
import
net.wanji.web.common.enums.CrossAlarmEnum
;
...
...
@@ -28,17 +33,56 @@ import net.wanji.web.entity.TBaseAreaCross;
import
net.wanji.web.entity.TBaseAreaInfo
;
import
net.wanji.web.entity.TCrossControlHist
;
import
net.wanji.web.entity.TDeviceStatusInfo
;
import
net.wanji.web.mapper.*
;
import
net.wanji.web.po.*
;
import
net.wanji.web.mapper.AllDeviceStatusMapper
;
import
net.wanji.web.mapper.ControlHistMapper
;
import
net.wanji.web.mapper.CrossAlarmMapper
;
import
net.wanji.web.mapper.EventAlarmMapper
;
import
net.wanji.web.mapper.GreenwaveRealtimeMapper
;
import
net.wanji.web.mapper.OptRecordsMapper
;
import
net.wanji.web.mapper.TBaseAreaCrossMapper
;
import
net.wanji.web.mapper.TBaseAreaInfoMapper
;
import
net.wanji.web.mapper.TDeviceStatusLogMapper
;
import
net.wanji.web.mapper.VehicleTraceMapper
;
import
net.wanji.web.mapper.VideoDeviceInfoMapper
;
import
net.wanji.web.po.BaseAreaDataPO
;
import
net.wanji.web.po.ControlHistPO
;
import
net.wanji.web.po.CrossAlarmPO
;
import
net.wanji.web.po.EventAlarmPO
;
import
net.wanji.web.po.GreenwaveRealtimePO
;
import
net.wanji.web.po.VehicleTracePO
;
import
net.wanji.web.po.VideoDeviceInfoPO
;
import
net.wanji.web.service.SituationDetectionService
;
import
net.wanji.web.vo.situationDetection.*
;
import
net.wanji.web.vo.situationDetection.AreaListVO
;
import
net.wanji.web.vo.situationDetection.ControlHistOutVO
;
import
net.wanji.web.vo.situationDetection.CrossAlarmOutVO
;
import
net.wanji.web.vo.situationDetection.DeviceFaultCountVO
;
import
net.wanji.web.vo.situationDetection.EventAlarmOutVO
;
import
net.wanji.web.vo.situationDetection.GreenwaveRealtimeOutVO
;
import
net.wanji.web.vo.situationDetection.JurisdictionAreaTreeVO
;
import
net.wanji.web.vo.situationDetection.OptRecordsOutVO
;
import
net.wanji.web.vo.situationDetection.SignalFaultInfoVO
;
import
net.wanji.web.vo.situationDetection.SignalManufacturerCountInfoVO
;
import
net.wanji.web.vo.situationDetection.SignalOperationModeCountVO
;
import
net.wanji.web.vo.situationDetection.SignalOperationModeVO
;
import
net.wanji.web.vo.situationDetection.VehicleTraceOutVO
;
import
net.wanji.web.vo.situationDetection.VideoDeviceInfoOutVO
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.CollectionUtils
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Comparator
;
import
java.util.Date
;
import
java.util.HashMap
;
import
java.util.HashSet
;
import
java.util.LinkedHashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -377,25 +421,6 @@ public class SituationDetectionServiceImpl implements SituationDetectionService
return
res
;
}
@Override
public
List
<
GreenwaveCrossOutVO
>
greenwaveCross
(
String
adCode
,
String
currentTime
,
Integer
id
)
{
List
<
GreenwaveCrossOutVO
>
greenwaveCrossOutVOList
=
new
ArrayList
<>();
List
<
GreenwaveCrossPO
>
greenwaveCrossPOList
=
greenwaveCrossMapper
.
selectByGreenwaveId
(
adCode
,
currentTime
,
id
);
for
(
GreenwaveCrossPO
greenwaveCrossPO
:
greenwaveCrossPOList
)
{
GreenwaveCrossOutVO
greenwaveCrossOutVO
=
new
GreenwaveCrossOutVO
();
greenwaveCrossOutVO
.
setName
(
greenwaveCrossPO
.
getName
());
// 构造坐标
String
location
=
greenwaveCrossPO
.
getLocation
();
double
[]
lonLat
=
CrossUtil
.
getLonLat
(
location
);
greenwaveCrossOutVO
.
setLongitude
(
lonLat
[
0
]);
greenwaveCrossOutVO
.
setLatitude
(
lonLat
[
1
]);
greenwaveCrossOutVOList
.
add
(
greenwaveCrossOutVO
);
}
return
greenwaveCrossOutVOList
;
}
@Override
public
List
<
CrossDeviceStatusInfoOutVO
>
crossDeviceStatusInfo
()
{
List
<
CrossDeviceStatusInfoOutVO
>
results
=
tBaseBaseCrossInfoMapper
.
listCrossDeviceStatusInfo
();
...
...
signal-control-service/src/main/resources/mapper/GreenwaveCrossMapper.xml
deleted
100644 → 0
View file @
9927b379
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"net.wanji.web.mapper.GreenwaveCrossMapper"
>
<!-- 通用查询映射结果 -->
<resultMap
type=
"net.wanji.web.po.GreenwaveCrossPO"
id=
"BaseResultMap"
>
<result
property=
"name"
column=
"NAME"
/>
<result
property=
"location"
column=
"LOCATION"
/>
</resultMap>
<select
id=
"selectByGreenwaveId"
resultMap=
"BaseResultMap"
>
select t3.NAME as name, t3.LOCATION as location
from t_greenwave_cross as t1
join t_greenwave_realtime as t2
join t_base_cross_info as t3
on t1.green_id = t2.greenwave_id and t1.cross_id = t3.ID
where t1.green_id = #{id} and to_days(#{currentTime}) = to_days(t1.gmt_create)
</select>
</mapper>
signal-optimize-service/src/main/java/net/wanji/opt/bo/GreenwaveIdBO.java
0 → 100644
View file @
1ad795a7
package
net
.
wanji
.
opt
.
bo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @author Kent HAN
* @date 2023/6/9 13:52
*/
@Data
@ApiModel
(
value
=
"GreenwaveIdBO"
,
description
=
"绿波ID"
)
public
class
GreenwaveIdBO
{
@ApiModelProperty
(
value
=
"绿波ID"
)
private
Integer
greenwaveId
;
}
signal-optimize-service/src/main/java/net/wanji/opt/controller/TrendController.java
View file @
1ad795a7
...
...
@@ -6,16 +6,12 @@ import io.swagger.annotations.ApiResponse;
import
io.swagger.annotations.ApiResponses
;
import
net.wanji.common.dto.CrossIdDTO
;
import
net.wanji.common.framework.rest.JsonViewObject
;
import
net.wanji.opt.bo.GreenwaveIdBO
;
import
net.wanji.opt.dto.trend.AbnormalCrossListDTO
;
import
net.wanji.opt.dto.trend.EventAlarmDTO
;
import
net.wanji.opt.dto.trend.GreenwaveListDTO
;
import
net.wanji.opt.service.impl.TrendServiceImpl
;
import
net.wanji.opt.vo.AbnormalCrossDetailVO
;
import
net.wanji.opt.vo.AbnormalCrossVO
;
import
net.wanji.opt.vo.EventAlarmVO
;
import
net.wanji.opt.vo.GreenwaveListVO
;
import
net.wanji.opt.vo.GreenwaveStats
;
import
net.wanji.opt.vo.GreenwaveVO
;
import
net.wanji.opt.vo.*
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
...
...
@@ -44,6 +40,18 @@ public class TrendController {
this
.
trendService
=
trendService
;
}
@ApiOperation
(
value
=
"子区信息-路口监测"
,
notes
=
"子区信息-路口监测"
,
response
=
JsonViewObject
.
class
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
@PostMapping
(
value
=
"/greenwaveCrossMonitor"
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
GreenWaveCrossMonitorVO
.
class
),
})
public
JsonViewObject
greenwaveCrossMonitor
(
@RequestBody
GreenwaveIdBO
greenwaveIdBO
)
{
List
<
GreenWaveCrossMonitorVO
>
res
=
trendService
.
greenwaveCrossMonitor
(
greenwaveIdBO
);
return
JsonViewObject
.
newInstance
().
success
(
res
);
}
@ApiOperation
(
value
=
"问题子区列表"
,
notes
=
"问题子区列表"
,
response
=
JsonViewObject
.
class
,
produces
=
MediaType
.
APPLICATION_JSON
,
consumes
=
MediaType
.
APPLICATION_JSON
)
@PostMapping
(
value
=
"/greenwaveList"
,
...
...
signal-optimize-service/src/main/java/net/wanji/opt/service/TrendService.java
View file @
1ad795a7
package
net
.
wanji
.
opt
.
service
;
import
net.wanji.common.dto.CrossIdDTO
;
import
net.wanji.opt.bo.GreenwaveIdBO
;
import
net.wanji.opt.dto.trend.AbnormalCrossListDTO
;
import
net.wanji.opt.dto.trend.GreenwaveListDTO
;
import
net.wanji.opt.vo.AbnormalCrossDetailVO
;
import
net.wanji.opt.vo.AbnormalCrossVO
;
import
net.wanji.opt.vo.EventAlarmVO
;
import
net.wanji.opt.vo.GreenwaveListVO
;
import
net.wanji.opt.vo.GreenwaveStats
;
import
net.wanji.opt.vo.*
;
import
java.text.ParseException
;
import
java.util.Date
;
...
...
@@ -28,4 +25,6 @@ public interface TrendService {
AbnormalCrossDetailVO
abnormalCrossDetail
(
CrossIdDTO
crossIdDTO
);
List
<
EventAlarmVO
>
eventAlarm
(
Date
todayTime
)
throws
ParseException
;
List
<
GreenWaveCrossMonitorVO
>
greenwaveCrossMonitor
(
GreenwaveIdBO
greenwaveIdBO
);
}
signal-optimize-service/src/main/java/net/wanji/opt/service/impl/TrendServiceImpl.java
View file @
1ad795a7
...
...
@@ -9,14 +9,23 @@ import net.wanji.common.enums.CrossStatusEnum;
import
net.wanji.common.enums.EventAlarmEnum
;
import
net.wanji.common.enums.EventAlarmSourceEnum
;
import
net.wanji.common.utils.tool.CrossUtil
;
import
net.wanji.databus.dao.entity.GreenwaveCrossPO
;
import
net.wanji.databus.dao.entity.RidInfoEntity
;
import
net.wanji.databus.dao.mapper.*
;
import
net.wanji.databus.dao.mapper.BaseCrossDirInfoMapper
;
import
net.wanji.databus.dao.mapper.BaseCrossInfoMapper
;
import
net.wanji.databus.dao.mapper.CrossDataRealtimeMapper
;
import
net.wanji.databus.dao.mapper.CrossDirDataHistMapper
;
import
net.wanji.databus.dao.mapper.CrossDirDataRealtimeMapper
;
import
net.wanji.databus.dao.mapper.CrossTurnDataRealtimeMapper
;
import
net.wanji.databus.dao.mapper.GreenwaveCrossMapper
;
import
net.wanji.databus.dao.mapper.RidInfoMapper
;
import
net.wanji.databus.po.BaseCrossInfoPO
;
import
net.wanji.databus.po.CrossDataRealtimePO
;
import
net.wanji.databus.po.CrossDirDataHistPO
;
import
net.wanji.databus.po.BaseCrossInfoPO
;
import
net.wanji.databus.po.CrossTurnDataRealtimePO
;
import
net.wanji.databus.po.TBaseCrossInfo
;
import
net.wanji.databus.vo.AbnormalCrossListVO
;
import
net.wanji.opt.bo.GreenwaveIdBO
;
import
net.wanji.opt.dao.mapper.CrossSchemeOptLogMapper
;
import
net.wanji.opt.dao.mapper.trend.EventAlarmMapper
;
import
net.wanji.opt.dao.mapper.trend.GreenwaveInfoMapper
;
...
...
@@ -25,12 +34,24 @@ import net.wanji.opt.dto.trend.GreenwaveListDTO;
import
net.wanji.opt.po.base.CrossSchemeOptLogPO
;
import
net.wanji.opt.po.trend.EventAlarmPO
;
import
net.wanji.opt.service.TrendService
;
import
net.wanji.opt.vo.*
;
import
net.wanji.opt.vo.AbnormalCrossDetailVO
;
import
net.wanji.opt.vo.AbnormalCrossStats
;
import
net.wanji.opt.vo.AbnormalCrossVO
;
import
net.wanji.opt.vo.EventAlarmVO
;
import
net.wanji.opt.vo.GreenWaveCrossMonitorVO
;
import
net.wanji.opt.vo.GreenwaveListVO
;
import
net.wanji.opt.vo.GreenwaveStats
;
import
org.springframework.stereotype.Service
;
import
net.wanji.databus.po.CrossDirDataRealtimePO
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.*
;
import
java.util.ArrayList
;
import
java.util.Comparator
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -48,6 +69,8 @@ public class TrendServiceImpl implements TrendService {
private
final
RidInfoMapper
ridInfoMapper
;
private
final
BaseCrossDirInfoMapper
baseCrossDirInfoMapper
;
private
final
CrossSchemeOptLogMapper
crossSchemeOptLogMapper
;
private
final
GreenwaveCrossMapper
greenwaveCrossMapper
;
private
final
CrossDirDataRealtimeMapper
crossDirDataRealtimeMapper
;
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyy-MM-dd HH:mm:ss"
);
...
...
@@ -56,7 +79,7 @@ public class TrendServiceImpl implements TrendService {
CrossTurnDataRealtimeMapper
crossTurnDataRealtimeMapper
,
CrossDirDataHistMapper
crossDirDataHistMapper
,
EventAlarmMapper
eventAlarmMapper
,
RidInfoMapper
ridInfoMapper
,
BaseCrossDirInfoMapper
baseCrossDirInfoMapper
,
CrossSchemeOptLogMapper
crossSchemeOptLogMapper
)
{
CrossSchemeOptLogMapper
crossSchemeOptLogMapper
,
GreenwaveCrossMapper
greenwaveCrossMapper
,
CrossDirDataRealtimeMapper
crossDirDataRealtimeMapper
)
{
this
.
greenwaveInfoMapper
=
greenwaveInfoMapper
;
this
.
baseCrossInfoMapper
=
baseCrossInfoMapper
;
this
.
crossDataRealtimeMapper
=
crossDataRealtimeMapper
;
...
...
@@ -66,6 +89,8 @@ public class TrendServiceImpl implements TrendService {
this
.
ridInfoMapper
=
ridInfoMapper
;
this
.
baseCrossDirInfoMapper
=
baseCrossDirInfoMapper
;
this
.
crossSchemeOptLogMapper
=
crossSchemeOptLogMapper
;
this
.
greenwaveCrossMapper
=
greenwaveCrossMapper
;
this
.
crossDirDataRealtimeMapper
=
crossDirDataRealtimeMapper
;
}
@Override
...
...
@@ -292,6 +317,42 @@ public class TrendServiceImpl implements TrendService {
return
eventAlarmOutVOList
;
}
@Override
public
List
<
GreenWaveCrossMonitorVO
>
greenwaveCrossMonitor
(
GreenwaveIdBO
greenwaveIdBO
)
{
Integer
greenwaveId
=
greenwaveIdBO
.
getGreenwaveId
();
List
<
GreenwaveCrossPO
>
greenwaveCrossPOList
=
greenwaveCrossMapper
.
selectByGreenwaveId
(
greenwaveId
);
List
<
GreenWaveCrossMonitorVO
>
res
=
buildRes
(
greenwaveCrossPOList
);
return
res
;
}
private
List
<
GreenWaveCrossMonitorVO
>
buildRes
(
List
<
GreenwaveCrossPO
>
greenwaveCrossPOList
)
{
List
<
GreenWaveCrossMonitorVO
>
res
=
new
ArrayList
<>();
for
(
GreenwaveCrossPO
greenwaveCrossPO
:
greenwaveCrossPOList
)
{
GreenWaveCrossMonitorVO
greenWaveCrossMonitorVO
=
new
GreenWaveCrossMonitorVO
();
String
crossId
=
greenwaveCrossPO
.
getCrossId
();
CrossDataRealtimePO
crossDataRealtimePO
=
crossDataRealtimeMapper
.
selectByCrossId
(
crossId
);
BaseCrossInfoPO
baseCrossInfoPO
=
baseCrossInfoMapper
.
selectById
(
crossId
);
if
(
crossDataRealtimePO
!=
null
&&
baseCrossInfoPO
!=
null
)
{
greenWaveCrossMonitorVO
.
setCrossId
(
crossId
);
greenWaveCrossMonitorVO
.
setCrossName
(
baseCrossInfoPO
.
getName
());
greenWaveCrossMonitorVO
.
setFlow
(
crossDataRealtimePO
.
getFlow
());
List
<
CrossDirDataRealtimePO
>
crossDirDataRealtimePOList
=
crossDirDataRealtimeMapper
.
selectBycrossId
(
crossId
);
Integer
capacity
=
0
;
for
(
CrossDirDataRealtimePO
crossDirDataRealtimePO
:
crossDirDataRealtimePOList
)
{
capacity
+=
crossDirDataRealtimePO
.
getCapacity
();
}
greenWaveCrossMonitorVO
.
setCapacity
(
capacity
);
greenWaveCrossMonitorVO
.
setCongestionIndex
(
crossDataRealtimePO
.
getCongestionIndex
());
res
.
add
(
greenWaveCrossMonitorVO
);
}
}
return
res
;
}
private
List
<
AbnormalCrossDetailVO
.
DirDataElement
>
buildDirData
(
String
crossId
)
{
List
<
AbnormalCrossDetailVO
.
DirDataElement
>
dirData
=
new
ArrayList
<>();
// 获取当前时间之前40分钟的10位时间戳
...
...
signal-optimize-service/src/main/java/net/wanji/opt/vo/GreenWaveCrossMonitorVO.java
0 → 100644
View file @
1ad795a7
package
net
.
wanji
.
opt
.
vo
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @author Kent HAN
* @date 2023/2/9 8:38
*/
@Data
@NoArgsConstructor
@ApiModel
(
value
=
"GreenWaveCrossMonitorVO"
,
description
=
"子区信息-路口监测返回值"
)
public
class
GreenWaveCrossMonitorVO
{
@ApiModelProperty
(
value
=
"路口ID"
)
private
String
crossId
;
@ApiModelProperty
(
value
=
"路口名称"
)
private
String
crossName
;
@ApiModelProperty
(
value
=
"流量"
)
private
Integer
flow
;
@ApiModelProperty
(
value
=
"通行能力"
)
private
Integer
capacity
;
@ApiModelProperty
(
value
=
"拥堵指数"
)
private
Double
congestionIndex
;
}
wj-databus/src/main/java/net/wanji/databus/dao/entity/GreenwaveCrossPO.java
0 → 100644
View file @
1ad795a7
package
net
.
wanji
.
databus
.
dao
.
entity
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Date
;
/**
* @author Kent HAN
* @date 2022/10/31 11:04
*/
@Data
public
class
GreenwaveCrossPO
{
/** id */
@ApiModelProperty
(
value
=
"id"
,
notes
=
""
)
private
Integer
id
;
/** 绿波ID */
@ApiModelProperty
(
value
=
"绿波ID"
,
notes
=
""
)
private
Integer
greenId
;
/** 路口ID */
@ApiModelProperty
(
value
=
"路口ID"
,
notes
=
""
)
private
String
crossId
;
/** 进口方向:1:北 2:东北 3:东 4:东南 5:南 6:西南 7:西 8:西北 */
@ApiModelProperty
(
value
=
"进口方向:1:北 2:东北 3:东 4:东南 5:南 6:西南 7:西 8:西北"
,
notes
=
""
)
private
Integer
inDir
;
/** 驶出方向:1北;2东北;3东;4东南;5南;6西南;7西;8西北 */
@ApiModelProperty
(
name
=
"驶出方向:1北;2东北;3东;4东南;5南;6西南;7西;8西北"
,
notes
=
""
)
private
Integer
outDir
;
/** 相位差(秒) */
@ApiModelProperty
(
value
=
"相位差(秒)"
,
notes
=
""
)
private
Integer
offset
;
/** 路口顺序号 */
@ApiModelProperty
(
value
=
"路口顺序号"
,
notes
=
""
)
private
Integer
sort
;
/** 时段ID */
@ApiModelProperty
(
value
=
"时段ID"
,
notes
=
""
)
private
Integer
sectionId
;
/** 到下个路口距离(米) */
@ApiModelProperty
(
value
=
"到下个路口距离(米)"
,
notes
=
""
)
private
Double
nextCrossLen
;
/** 是否关键路口:0否;1是 */
@ApiModelProperty
(
value
=
"是否关键路口:0否;1是"
,
notes
=
""
)
private
Integer
isKeyRoute
;
/** 创建时间 */
@ApiModelProperty
(
value
=
"创建时间"
,
notes
=
""
)
private
Date
gmtCreate
;
/** 修改时间 */
@ApiModelProperty
(
value
=
"修改时间"
,
notes
=
""
)
private
Date
gmtModified
;
}
wj-databus/src/main/java/net/wanji/databus/dao/mapper/CrossDirDataRealtimeMapper.java
View file @
1ad795a7
...
...
@@ -22,4 +22,6 @@ public interface CrossDirDataRealtimeMapper extends BaseMapper<CrossDirDataRealt
List
<
CrossDirDataRealtimePO
>
selectByCrossIdAndInOutType
(
String
crossId
,
Integer
inOutType
);
Integer
selectStatus
(
String
secondId
,
Integer
inDir
,
int
inOutType
);
List
<
CrossDirDataRealtimePO
>
selectBycrossId
(
String
crossId
);
}
signal-control-service/src/main/java/net/wanji/web
/mapper/GreenwaveCrossMapper.java
→
wj-databus/src/main/java/net/wanji/databus/dao
/mapper/GreenwaveCrossMapper.java
View file @
1ad795a7
package
net
.
wanji
.
web
.
mapper
;
package
net
.
wanji
.
databus
.
dao
.
mapper
;
import
com.baomidou.dynamic.datasource.annotation.DS
;
import
net.wanji.web.po.GreenwaveCrossPO
;
import
org.apache.ibatis.annotations.Param
;
import
net.wanji.databus.dao.entity.GreenwaveCrossPO
;
import
org.springframework.stereotype.Repository
;
import
java.util.List
;
...
...
@@ -12,9 +10,6 @@ import java.util.List;
* @date 2022/10/31 11:03
*/
@Repository
@DS
(
"webService"
)
public
interface
GreenwaveCrossMapper
{
List
<
GreenwaveCrossPO
>
selectByGreenwaveId
(
@Param
(
"adCode"
)
String
adCode
,
@Param
(
"currentTime"
)
String
currentTime
,
@Param
(
"id"
)
Integer
id
);
List
<
GreenwaveCrossPO
>
selectByGreenwaveId
(
Integer
id
);
}
wj-databus/src/main/resources/mapper/CrossDirDataRealtimeMapper.xml
View file @
1ad795a7
...
...
@@ -66,4 +66,10 @@
where dir_type = #{inDir} and in_out_type = #{inOutType} and cross_id = #{secondId}
</select>
<select
id=
"selectBycrossId"
resultType=
"net.wanji.databus.po.CrossDirDataRealtimePO"
>
select
<include
refid=
"Base_Column_List"
/>
from t_cross_dir_data_realtime
where cross_id = #{crossId}
</select>
</mapper>
\ No newline at end of file
wj-databus/src/main/resources/mapper/GreenwaveCrossMapper.xml
0 → 100644
View file @
1ad795a7
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"net.wanji.databus.dao.mapper.GreenwaveCrossMapper"
>
<select
id=
"selectByGreenwaveId"
resultType=
"net.wanji.databus.dao.entity.GreenwaveCrossPO"
>
select
id,green_id,cross_id,in_dir,out_dir,offset,sort,section_id,next_cross_len,is_key_route,gmt_create,gmt_modified
from t_greenwave_cross
where green_id = #{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