Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
map-parent
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
常超
map-parent
Commits
2955bf72
Commit
2955bf72
authored
Jul 11, 2022
by
yangyang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
弱轨迹统计计算提交(阿里云)
parent
6909778f
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
37 additions
and
22 deletions
+37
-22
service/publicapi/src/main/java/com/founder/publicapi/controller/SkDataOperation/SkTrailController.java
+37
-22
No files found.
service/publicapi/src/main/java/com/founder/publicapi/controller/SkDataOperation/SkTrailController.java
View file @
2955bf72
...
@@ -19,6 +19,7 @@ import com.founder.servicebase.logs.OperationType;
...
@@ -19,6 +19,7 @@ import com.founder.servicebase.logs.OperationType;
import
com.founder.publicapi.service.SkTrailService
;
import
com.founder.publicapi.service.SkTrailService
;
import
com.founder.servicebase.service.SkDictionaryService
;
import
com.founder.servicebase.service.SkDictionaryService
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.poi.ss.formula.functions.T
;
import
org.apache.poi.ss.formula.functions.T
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -244,7 +245,7 @@ public class SkTrailController extends ApiController implements ExcelControllerI
...
@@ -244,7 +245,7 @@ public class SkTrailController extends ApiController implements ExcelControllerI
ArrayList
<
Map
.
Entry
<
String
,
Object
>>
listMapCf
=
new
ArrayList
<>();
// 始发地点统计
ArrayList
<
Map
.
Entry
<
String
,
Object
>>
listMapCf
=
new
ArrayList
<>();
// 始发地点统计
ArrayList
<
Map
.
Entry
<
String
,
Object
>>
listMapMd
=
new
ArrayList
<>();
// 目的地点统计
ArrayList
<
Map
.
Entry
<
String
,
Object
>>
listMapMd
=
new
ArrayList
<>();
// 目的地点统计
if
(
records
.
size
()>
0
){
if
(
records
.
size
()>
0
)
if
(
records
.
size
()>
0
)
{
// 火车、飞机轨迹进行计算
// 火车、飞机轨迹进行计算
if
(
"hcgj"
.
equals
(
sktrailParam
.
getLikeField
())||
"jcgj"
.
equals
(
sktrailParam
.
getLikeField
())||
"jdgj"
.
equals
(
sktrailParam
.
getLikeField
())){
if
(
"hcgj"
.
equals
(
sktrailParam
.
getLikeField
())||
"jcgj"
.
equals
(
sktrailParam
.
getLikeField
())||
"jdgj"
.
equals
(
sktrailParam
.
getLikeField
())){
// 对拿回得所有数据进行分组 出发为一组/达到为一组
// 对拿回得所有数据进行分组 出发为一组/达到为一组
...
@@ -252,11 +253,15 @@ public class SkTrailController extends ApiController implements ExcelControllerI
...
@@ -252,11 +253,15 @@ public class SkTrailController extends ApiController implements ExcelControllerI
map
.
forEach
((
key
,
value
)->{
map
.
forEach
((
key
,
value
)->{
if
(
key
.
equals
(
"1"
)){
if
(
key
.
equals
(
"1"
)){
value
.
stream
().
forEach
(
h
->{
value
.
stream
().
forEach
(
h
->{
listCf
.
add
(
h
.
getAddress
());
if
(
StringUtils
.
isNotEmpty
(
h
.
getAddress
()))
{
listCf
.
add
(
h
.
getAddress
());
}
});
});
}
else
if
(
key
.
equals
(
"2"
)){
}
else
if
(
key
.
equals
(
"2"
)){
value
.
stream
().
forEach
(
h
->{
value
.
stream
().
forEach
(
h
->{
listDd
.
add
(
h
.
getAddress
());
if
(
StringUtils
.
isNotEmpty
(
h
.
getAddress
()))
{
listDd
.
add
(
h
.
getAddress
());
}
});
});
}
}
});
});
...
@@ -270,11 +275,11 @@ public class SkTrailController extends ApiController implements ExcelControllerI
...
@@ -270,11 +275,11 @@ public class SkTrailController extends ApiController implements ExcelControllerI
}
}
Map
<
String
,
Object
>
valueResult
=
new
LinkedHashMap
<>();
Map
<
String
,
Object
>
valueResult
=
new
LinkedHashMap
<>();
Map
<
String
,
Object
>
valueResult1
=
new
LinkedHashMap
<>();
Map
<
String
,
Object
>
valueResult1
=
new
LinkedHashMap
<>();
mapTjCf
.
entrySet
().
stream
().
sorted
(
Map
.
Entry
mapTjCf
.
entrySet
().
stream
().
sorted
(
Map
.
Entry
.<
String
,
Integer
>
.
comparingByValue
())
comparingByValue
().
reversed
())
.
forEachOrdered
(
b
->
valueResult
.
put
(
b
.
getKey
(),
b
.
getValue
()));
.
forEachOrdered
(
b
->
valueResult
.
put
(
b
.
getKey
(),
b
.
getValue
()));
listMapCf
=
new
ArrayList
<>(
valueResult
.
entrySet
());
listMapCf
=
new
ArrayList
<>(
valueResult
.
entrySet
());
listMapCf
=
(
ArrayList
<
Map
.
Entry
<
String
,
Object
>>)
listMapCf
.
stream
().
parallel
()
.
sorted
((
o1
,
o2
)
->
o2
.
getValue
().
toString
().
compareTo
(
o1
.
getValue
().
toString
()))
listMapCf
=
(
ArrayList
<
Map
.
Entry
<
String
,
Object
>>)
listMapCf
.
stream
().
parallel
()
.
limit
(
1
).
collect
(
Collectors
.
toList
());
.
limit
(
1
).
collect
(
Collectors
.
toList
());
listDdDistinct
=
listDd
.
stream
().
distinct
().
collect
(
Collectors
.
toList
());
listDdDistinct
=
listDd
.
stream
().
distinct
().
collect
(
Collectors
.
toList
());
...
@@ -285,25 +290,28 @@ public class SkTrailController extends ApiController implements ExcelControllerI
...
@@ -285,25 +290,28 @@ public class SkTrailController extends ApiController implements ExcelControllerI
listDdGl
=
listDd
.
stream
().
filter
(
s
->
s
.
equals
(
dd
)).
collect
(
Collectors
.
toList
());
listDdGl
=
listDd
.
stream
().
filter
(
s
->
s
.
equals
(
dd
)).
collect
(
Collectors
.
toList
());
mapTjDd
.
put
(
dd
,
listDdGl
.
size
());
mapTjDd
.
put
(
dd
,
listDdGl
.
size
());
}
}
mapTjDd
.
entrySet
().
stream
().
sorted
(
Map
.
Entry
mapTjDd
.
entrySet
().
stream
().
sorted
(
Map
.
Entry
.<
String
,
Integer
>
.
comparingByValue
())
comparingByValue
().
reversed
())
.
forEachOrdered
(
b
->
valueResult1
.
put
(
b
.
getKey
(),
b
.
getValue
()));
.
forEachOrdered
(
b
->
valueResult1
.
put
(
b
.
getKey
(),
b
.
getValue
()));
listMapMd
=
new
ArrayList
<>(
valueResult1
.
entrySet
());
listMapMd
=
new
ArrayList
<>(
valueResult1
.
entrySet
());
listMapMd
=
(
ArrayList
<
Map
.
Entry
<
String
,
Object
>>)
listMapMd
.
stream
().
parallel
()
.
sorted
((
o1
,
o2
)
->
o2
.
getValue
().
toString
().
compareTo
(
o1
.
getValue
().
toString
()))
listMapMd
=
(
ArrayList
<
Map
.
Entry
<
String
,
Object
>>)
listMapMd
.
stream
().
parallel
()
.
limit
(
1
).
collect
(
Collectors
.
toList
());
.
limit
(
1
).
collect
(
Collectors
.
toList
());
String
lastGj
=
""
;
// 日期为空 展示暂无数据
String
lastGj
=
""
;
// 日期为空 展示暂无数据
if
(!
StringUtil
.
isEmpty
(
records
.
get
(
records
.
size
()-
2
).
getDate
())){
if
(
StringUtil
.
isEmpty
(
records
.
get
(
0
).
getDate
())||
"jdgj"
.
equals
(
sktrailParam
.
getLikeField
())||
StringUtil
.
isEmpty
(
records
.
get
(
1
).
getAddress
())){
lastGj
=
records
.
get
(
records
.
size
()-
2
).
getDate
()+
","
+
records
.
get
(
records
.
size
()-
2
).
getAddress
()+
"—>"
+
records
.
get
(
records
.
size
()-
1
).
getAddress
();
}
else
{
lastGj
=
"暂无数据"
;
lastGj
=
"暂无数据"
;
}
else
{
lastGj
=
records
.
get
(
0
).
getDate
()+
","
+
records
.
get
(
0
).
getAddress
()+
"—>"
+
records
.
get
(
1
).
getAddress
();
}
}
mapResult
.
put
(
"zxgj"
,
"最新轨迹:"
+
lastGj
);
// 最后两条数据即为 最新轨迹
mapResult
.
put
(
"zxgj"
,
lastGj
);
// 最后两条数据即为 最新轨迹
mapResult
.
put
(
"sfdd"
,
"始发地点:"
+
listMapCf
.
get
(
0
).
getKey
()+
"("
+
listMapCf
.
get
(
0
).
getValue
()+
"次"
+
")"
);
mapResult
.
put
(
"sfdd"
,
listMapCf
.
get
(
0
).
getKey
()+
"("
+
listMapCf
.
get
(
0
).
getValue
()+
"次"
+
")"
);
mapResult
.
put
(
"mddd"
,
"目的地点:"
+
listMapMd
.
get
(
0
).
getKey
()+
"("
+
listMapMd
.
get
(
0
).
getValue
()+
"次"
+
")"
);
mapResult
.
put
(
"mddd"
,
listMapMd
.
get
(
0
).
getKey
()+
"("
+
listMapMd
.
get
(
0
).
getValue
()+
"次"
+
")"
);
}
else
if
(
"wbgj"
.
equals
(
sktrailParam
.
getLikeField
())||
"ldgj"
.
equals
(
sktrailParam
.
getLikeField
())){
}
else
if
(
"wbgj"
.
equals
(
sktrailParam
.
getLikeField
())||
"ldgj"
.
equals
(
sktrailParam
.
getLikeField
())){
records
.
stream
().
forEach
(
h
->{
records
.
stream
().
forEach
(
h
->{
listCf
.
add
(
h
.
getAddress
());
if
(
StringUtils
.
isNotEmpty
(
h
.
getAddress
()))
{
});
listCf
.
add
(
h
.
getAddress
());
}
});
listCfDistinct
=
listCf
.
stream
().
distinct
().
collect
(
Collectors
.
toList
());
listCfDistinct
=
listCf
.
stream
().
distinct
().
collect
(
Collectors
.
toList
());
// 对地点 出现次数最多得地址
// 对地点 出现次数最多得地址
Map
<
String
,
Integer
>
mapTjCf
=
new
LinkedHashMap
<>();
Map
<
String
,
Integer
>
mapTjCf
=
new
LinkedHashMap
<>();
...
@@ -313,14 +321,21 @@ public class SkTrailController extends ApiController implements ExcelControllerI
...
@@ -313,14 +321,21 @@ public class SkTrailController extends ApiController implements ExcelControllerI
mapTjCf
.
put
(
cf
,
listDdGl
.
size
());
mapTjCf
.
put
(
cf
,
listDdGl
.
size
());
}
}
Map
<
String
,
Object
>
valueResult
=
new
LinkedHashMap
<>();
Map
<
String
,
Object
>
valueResult
=
new
LinkedHashMap
<>();
mapTjCf
.
entrySet
().
stream
().
sorted
(
Map
.
Entry
mapTjCf
.
entrySet
().
stream
().
sorted
(
Map
.
Entry
.<
String
,
Integer
>
.
comparingByValue
())
comparingByValue
().
reversed
())
.
forEachOrdered
(
b
->
valueResult
.
put
(
b
.
getKey
(),
b
.
getValue
()));
.
forEachOrdered
(
b
->
valueResult
.
put
(
b
.
getKey
(),
b
.
getValue
()));
listMapCf
=
new
ArrayList
<>(
valueResult
.
entrySet
());
listMapCf
=
new
ArrayList
<>(
valueResult
.
entrySet
());
listMapCf
=
(
ArrayList
<
Map
.
Entry
<
String
,
Object
>>)
listMapCf
.
stream
().
parallel
()
.
sorted
((
o1
,
o2
)
->
o2
.
getValue
().
toString
().
compareTo
(
o1
.
getValue
().
toString
()))
listMapCf
=
(
ArrayList
<
Map
.
Entry
<
String
,
Object
>>)
listMapCf
.
stream
().
parallel
()
.
limit
(
1
).
collect
(
Collectors
.
toList
());
.
limit
(
1
).
collect
(
Collectors
.
toList
());
mapResult
.
put
(
"zxgj"
,
"最新轨迹:"
+
records
.
get
(
records
.
size
()-
1
).
getDate
()+
","
+
records
.
get
(
records
.
size
()-
1
).
getAddress
());
// 最后两条数据即为 最新轨迹
String
lastGj
=
""
;
// 日期为空 展示暂无数据
mapResult
.
put
(
"dd"
,
"地点:"
+
listMapCf
.
get
(
0
).
getKey
()+
"("
+
listMapCf
.
get
(
0
).
getValue
()+
"次"
+
")"
);
if
(
StringUtil
.
isEmpty
(
records
.
get
(
0
).
getDate
())||
StringUtil
.
isEmpty
(
records
.
get
(
0
).
getAddress
())){
lastGj
=
"暂无数据"
;
}
else
{
lastGj
=
records
.
get
(
0
).
getDate
()+
","
+
records
.
get
(
0
).
getAddress
();
}
mapResult
.
put
(
"zxgj"
,
lastGj
);
// 最后两条数据即为 最新轨迹
mapResult
.
put
(
"dd"
,
listMapCf
.
get
(
0
).
getKey
()+
"("
+
listMapCf
.
get
(
0
).
getValue
()+
"次"
+
")"
);
}
}
}
}
return
new
MapRestResult
(
200
,
"OK"
,
mapResult
.
size
(),
mapResult
);
return
new
MapRestResult
(
200
,
"OK"
,
mapResult
.
size
(),
mapResult
);
...
...
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