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
jinan
traffic-signal-platform
Commits
d47d214a
Commit
d47d214a
authored
Mar 29, 2025
by
黄伟铭
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
综合查询增加分页,增加结束时间
parent
87419fef
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
41 additions
and
8 deletions
+41
-8
ComprehensiveQueryController.java
...erv2/comprehensivequery/ComprehensiveQueryController.java
+9
-5
CrossLaneDataHistPoExtend.java
...java/net/wanji/opt/po/base/CrossLaneDataHistPoExtend.java
+5
-0
ComprehensiveQueryService.java
...rvicev2/comprehensivequery/ComprehensiveQueryService.java
+3
-1
ComprehensiveQueryServiceImpl.java
...omprehensivequery/impl/ComprehensiveQueryServiceImpl.java
+17
-2
ComprehensiveQueryMapper.xml
...es/mapper/comprehensivequery/ComprehensiveQueryMapper.xml
+7
-0
No files found.
signal-optimize-service/src/main/java/net/wanji/opt/controllerv2/comprehensivequery/ComprehensiveQueryController.java
View file @
d47d214a
package
net
.
wanji
.
opt
.
controllerv2
.
comprehensivequery
;
package
net
.
wanji
.
opt
.
controllerv2
.
comprehensivequery
;
import
com.alibaba.fastjson.JSONObject
;
import
com.github.pagehelper.PageInfo
;
import
io.swagger.annotations.*
;
import
io.swagger.annotations.*
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
net.wanji.common.framework.rest.JsonViewObject
;
import
net.wanji.common.framework.rest.JsonViewObject
;
...
@@ -55,18 +57,20 @@ public class ComprehensiveQueryController {
...
@@ -55,18 +57,20 @@ public class ComprehensiveQueryController {
@ApiImplicitParam
(
name
=
"endTime"
,
value
=
"日期 格式:yyyy-MM-dd h:i:s"
,
required
=
true
,
dataType
=
"String"
,
paramType
=
"query"
),
@ApiImplicitParam
(
name
=
"endTime"
,
value
=
"日期 格式:yyyy-MM-dd h:i:s"
,
required
=
true
,
dataType
=
"String"
,
paramType
=
"query"
),
@ApiImplicitParam
(
name
=
"objectType"
,
value
=
"范围 0:路口级指标 1:方向级指标 2:转向级指标"
,
required
=
true
,
dataType
=
"String"
,
paramType
=
"query"
),
@ApiImplicitParam
(
name
=
"objectType"
,
value
=
"范围 0:路口级指标 1:方向级指标 2:转向级指标"
,
required
=
true
,
dataType
=
"String"
,
paramType
=
"query"
),
@ApiImplicitParam
(
name
=
"groupType"
,
value
=
"时间粒度 0--5分钟 1--15分钟 2--30分钟 3--60分钟"
,
required
=
true
,
dataType
=
"String"
,
paramType
=
"query"
),
@ApiImplicitParam
(
name
=
"groupType"
,
value
=
"时间粒度 0--5分钟 1--15分钟 2--30分钟 3--60分钟"
,
required
=
true
,
dataType
=
"String"
,
paramType
=
"query"
),
@ApiImplicitParam
(
name
=
"pageNum"
,
value
=
"分页页码"
,
required
=
true
,
dataType
=
"Integer"
,
paramType
=
"query"
),
@ApiImplicitParam
(
name
=
"pageSize"
,
value
=
"分页数据条数"
,
required
=
true
,
dataType
=
"Integer"
,
paramType
=
"query"
),
})
})
@ApiResponses
({
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
String
.
class
),
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
String
.
class
),
})
})
public
JsonViewObject
getComprehensiveQuery
(
String
crossId
,
String
startTime
,
String
endTime
,
String
objectType
,
String
groupType
)
{
public
JsonViewObject
getComprehensiveQuery
(
String
crossId
,
String
startTime
,
String
endTime
,
String
objectType
,
String
groupType
,
Integer
pageNum
,
Integer
pageSize
)
{
List
<
CrossLaneDataHistPoExtendName
>
list
=
new
ArrayList
<>();
try
{
try
{
list
=
comprehensiveQueryService
.
getCrossStatusDistribution
(
crossId
,
startTime
,
endTime
,
objectType
,
groupType
);
JSONObject
list
=
comprehensiveQueryService
.
getCrossStatusDistribution
(
crossId
,
startTime
,
endTime
,
objectType
,
groupType
,
pageNum
,
pageSize
);
return
JsonViewObject
.
newInstance
().
success
(
list
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
log
.
error
(
"综合查询-综合查询数据-查询失败:{}"
,
e
);
log
.
error
(
"综合查询-综合查询数据-查询失败:{}"
,
e
);
JsonViewObject
.
newInstance
().
success
(
list
);
return
JsonViewObject
.
newInstance
().
success
(
""
);
}
}
return
JsonViewObject
.
newInstance
().
success
(
list
);
}
}
}
}
signal-optimize-service/src/main/java/net/wanji/opt/po/base/CrossLaneDataHistPoExtend.java
View file @
d47d214a
...
@@ -74,4 +74,9 @@ public class CrossLaneDataHistPoExtend {
...
@@ -74,4 +74,9 @@ public class CrossLaneDataHistPoExtend {
@ApiModelProperty
(
value
=
"空间占有率"
,
notes
=
""
)
@ApiModelProperty
(
value
=
"空间占有率"
,
notes
=
""
)
double
vehicleLengthRatioMean
;
double
vehicleLengthRatioMean
;
@ApiModelProperty
(
value
=
"结束时间:yyyy-MM-dd HH:mm:ss"
,
notes
=
""
)
@JSONField
(
format
=
"yyyy-MM-dd HH:mm:ss"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
public
Date
endTime
;
}
}
signal-optimize-service/src/main/java/net/wanji/opt/servicev2/comprehensivequery/ComprehensiveQueryService.java
View file @
d47d214a
package
net
.
wanji
.
opt
.
servicev2
.
comprehensivequery
;
package
net
.
wanji
.
opt
.
servicev2
.
comprehensivequery
;
import
com.alibaba.fastjson.JSONObject
;
import
com.github.pagehelper.PageInfo
;
import
net.wanji.opt.entity.comprehensivequery.CrossLaneDataHistPoExtendName
;
import
net.wanji.opt.entity.comprehensivequery.CrossLaneDataHistPoExtendName
;
import
net.wanji.opt.entity.comprehensivequery.GreenTreeEntity
;
import
net.wanji.opt.entity.comprehensivequery.GreenTreeEntity
;
...
@@ -8,5 +10,5 @@ import java.util.Map;
...
@@ -8,5 +10,5 @@ import java.util.Map;
public
interface
ComprehensiveQueryService
{
public
interface
ComprehensiveQueryService
{
List
<
GreenTreeEntity
>
getGreenAndCross
();
List
<
GreenTreeEntity
>
getGreenAndCross
();
List
<
CrossLaneDataHistPoExtendName
>
getCrossStatusDistribution
(
String
crossId
,
String
startTime
,
String
endTime
,
String
objectType
,
String
groupTyp
e
);
JSONObject
getCrossStatusDistribution
(
String
crossId
,
String
startTime
,
String
endTime
,
String
objectType
,
String
groupType
,
Integer
pageNum
,
Integer
pageSiz
e
);
}
}
signal-optimize-service/src/main/java/net/wanji/opt/servicev2/comprehensivequery/impl/ComprehensiveQueryServiceImpl.java
View file @
d47d214a
package
net
.
wanji
.
opt
.
servicev2
.
comprehensivequery
.
impl
;
package
net
.
wanji
.
opt
.
servicev2
.
comprehensivequery
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
import
net.wanji.common.enums.BaseEnum
;
import
net.wanji.common.enums.BaseEnum
;
import
net.wanji.opt.dao.mapper.comprehensivequery.ComprehensiveQueryMapper
;
import
net.wanji.opt.dao.mapper.comprehensivequery.ComprehensiveQueryMapper
;
import
net.wanji.opt.entity.comprehensivequery.CrossEntity
;
import
net.wanji.opt.entity.comprehensivequery.CrossEntity
;
...
@@ -8,7 +11,9 @@ import net.wanji.opt.entity.comprehensivequery.CrossLaneDataHistPoExtendName;
...
@@ -8,7 +11,9 @@ import net.wanji.opt.entity.comprehensivequery.CrossLaneDataHistPoExtendName;
import
net.wanji.opt.entity.comprehensivequery.GreenAndCrossEntity
;
import
net.wanji.opt.entity.comprehensivequery.GreenAndCrossEntity
;
import
net.wanji.opt.entity.comprehensivequery.GreenTreeEntity
;
import
net.wanji.opt.entity.comprehensivequery.GreenTreeEntity
;
import
net.wanji.opt.po.base.CrossLaneDataHistPoExtend
;
import
net.wanji.opt.po.base.CrossLaneDataHistPoExtend
;
import
net.wanji.opt.po.strategy.StrategyPO
;
import
net.wanji.opt.servicev2.comprehensivequery.ComprehensiveQueryService
;
import
net.wanji.opt.servicev2.comprehensivequery.ComprehensiveQueryService
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -84,7 +89,7 @@ public class ComprehensiveQueryServiceImpl implements ComprehensiveQueryService
...
@@ -84,7 +89,7 @@ public class ComprehensiveQueryServiceImpl implements ComprehensiveQueryService
}
}
@Override
@Override
public
List
<
CrossLaneDataHistPoExtendName
>
getCrossStatusDistribution
(
String
crossId
,
String
startTime
,
String
endTime
,
String
objectType
,
String
groupTyp
e
)
{
public
JSONObject
getCrossStatusDistribution
(
String
crossId
,
String
startTime
,
String
endTime
,
String
objectType
,
String
groupType
,
Integer
pageNum
,
Integer
pageSiz
e
)
{
List
<
CrossLaneDataHistPoExtendName
>
resultList
=
new
ArrayList
<>();
List
<
CrossLaneDataHistPoExtendName
>
resultList
=
new
ArrayList
<>();
List
<
GreenAndCrossEntity
>
CrossList
=
comprehensiveQueryMapper
.
getCross
();
List
<
GreenAndCrossEntity
>
CrossList
=
comprehensiveQueryMapper
.
getCross
();
String
[]
crossIdArray
=
crossId
.
split
(
","
);
String
[]
crossIdArray
=
crossId
.
split
(
","
);
...
@@ -117,6 +122,7 @@ public class ComprehensiveQueryServiceImpl implements ComprehensiveQueryService
...
@@ -117,6 +122,7 @@ public class ComprehensiveQueryServiceImpl implements ComprehensiveQueryService
temp
.
setDelayTime
(
c
.
getDelayTime
());
temp
.
setDelayTime
(
c
.
getDelayTime
());
temp
.
setTrafficIndex
(
c
.
getTrafficIndex
());
temp
.
setTrafficIndex
(
c
.
getTrafficIndex
());
temp
.
setCrossName
(
crossName
);
temp
.
setCrossName
(
crossName
);
temp
.
setEndTime
(
c
.
getEndTime
());
if
(
c
.
getDirType
()
!=
null
&&
c
.
getDirType
()
>
0
){
if
(
c
.
getDirType
()
!=
null
&&
c
.
getDirType
()
>
0
){
temp
.
setDirTypeName
(
BaseEnum
.
SignalDirectionEnum
.
getNameByCode
(
c
.
getDirType
()));
temp
.
setDirTypeName
(
BaseEnum
.
SignalDirectionEnum
.
getNameByCode
(
c
.
getDirType
()));
}
}
...
@@ -128,7 +134,16 @@ public class ComprehensiveQueryServiceImpl implements ComprehensiveQueryService
...
@@ -128,7 +134,16 @@ public class ComprehensiveQueryServiceImpl implements ComprehensiveQueryService
resultList
.
add
(
temp
);
resultList
.
add
(
temp
);
}
}
}
}
return
resultList
;
List
<
CrossLaneDataHistPoExtendName
>
collect
=
new
ArrayList
<>();
if
(
CollectionUtils
.
isNotEmpty
(
resultList
)){
collect
=
resultList
.
stream
().
skip
((
pageNum
-
1
)
*
pageSize
).
limit
(
pageSize
).
collect
(
Collectors
.
toList
());
}
JSONObject
result
=
new
JSONObject
();
result
.
put
(
"fullDataList"
,
resultList
);
result
.
put
(
"pageList"
,
collect
);
result
.
put
(
"totalPage"
,
Math
.
ceil
((
double
)
resultList
.
size
()
/
pageSize
));
result
.
put
(
"totalSize"
,
resultList
.
size
());
return
result
;
}
}
}
}
signal-optimize-service/src/main/resources/mapper/comprehensivequery/ComprehensiveQueryMapper.xml
View file @
d47d214a
...
@@ -26,6 +26,13 @@
...
@@ -26,6 +26,13 @@
<select
id=
"findCrossObjectIndex"
<select
id=
"findCrossObjectIndex"
resultType=
"net.wanji.opt.po.base.CrossLaneDataHistPoExtend"
>
resultType=
"net.wanji.opt.po.base.CrossLaneDataHistPoExtend"
>
SELECT MIN(ifnull(t.unit_time,#{startDate})) start_time,
SELECT MIN(ifnull(t.unit_time,#{startDate})) start_time,
(case
when #{groupType}=0 then DATE_FORMAT(DATE_ADD(t.unit_time,INTERVAL 5 MINUTE),'%Y-%m-%d %H:%i:00')
when #{groupType}=1 then DATE_FORMAT(DATE_ADD(t.unit_time,INTERVAL 15 MINUTE),'%Y-%m-%d %H:%i:00')
when #{groupType}=2 then DATE_FORMAT(DATE_ADD(t.unit_time,INTERVAL 30 MINUTE),'%Y-%m-%d %H:%i:00')
when #{groupType}=3 then DATE_FORMAT(DATE_ADD(t.unit_time,INTERVAL 60 MINUTE),'%Y-%m-%d %H:00:00')
end
) end_time,
cross_id ,
cross_id ,
lane_no ,
lane_no ,
dir_type ,
dir_type ,
...
...
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