Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
0183c1d3
提交
0183c1d3
authored
5月 09, 2024
作者:
艾庆国
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
运单预警
上级
273d1906
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
42 行增加
和
5 行删除
+42
-5
DriverTraceVO.java
...n/java/com/clx/performance/vo/pc/trace/DriverTraceVO.java
+2
-0
TruckTraceServiceImpl.java
...performance/service/impl/trace/TruckTraceServiceImpl.java
+29
-5
VehicleWarnInfoServiceImpl.java
.../service/impl/vehiclewarn/VehicleWarnInfoServiceImpl.java
+11
-0
没有找到文件。
performance-api/src/main/java/com/clx/performance/vo/pc/trace/DriverTraceVO.java
浏览文件 @
0183c1d3
...
...
@@ -18,6 +18,8 @@ public class DriverTraceVO {
private
BigDecimal
latitude
;
@ApiModelProperty
(
value
=
"GPS 时间"
)
private
String
gpsTime
;
@ApiModelProperty
(
value
=
"速度"
)
private
BigDecimal
speed
;
@ApiModelProperty
(
value
=
"停留时长(min)"
,
example
=
"12.3"
)
private
BigDecimal
stayTime
=
BigDecimal
.
ZERO
;
@ApiModelProperty
(
value
=
"车辆状态:1空车 2重车"
,
example
=
"1"
)
...
...
performance-web/src/main/java/com/clx/performance/service/impl/trace/TruckTraceServiceImpl.java
浏览文件 @
0183c1d3
...
...
@@ -18,6 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
java.math.BigDecimal
;
import
java.math.RoundingMode
;
import
java.time.Duration
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
...
...
@@ -47,11 +48,22 @@ public class TruckTraceServiceImpl implements TruckTraceService {
.
orderByAsc
(
"gpsTime"
)
);
List
<
DriverTruckTraceVO
>
tr
uckTr
aceList
=
truckTraceStruct
.
convert
(
list
);
List
<
DriverTruckTraceVO
>
traceList
=
truckTraceStruct
.
convert
(
list
);
// 停留时长计算
Integer
parkIdx
=
null
;
for
(
int
i
=
0
;
i
<
traceList
.
size
();
i
++){
if
(
traceList
.
get
(
i
).
getSpeed
().
compareTo
(
new
BigDecimal
(
PARK_SPEED
))
<
0
){
parkIdx
=
i
;
}
else
{
if
(
parkIdx
==
null
)
{
continue
;}
long
stayTime
=
Duration
.
between
(
LocalDateTimeUtils
.
parseTime
(
traceList
.
get
(
parkIdx
).
getGpsTime
()),
LocalDateTimeUtils
.
parseTime
(
traceList
.
get
(
i
).
getGpsTime
())).
getSeconds
();
traceList
.
get
(
parkIdx
).
setStayTime
(
new
BigDecimal
(
stayTime
).
divide
(
new
BigDecimal
(
60
),
1
,
RoundingMode
.
HALF_UP
));
}
}
return
tr
uckTr
aceList
;
return
traceList
;
}
@Override
...
...
@@ -63,10 +75,22 @@ public class TruckTraceServiceImpl implements TruckTraceService {
.
orderByAsc
(
"positionTime"
)
);
List
<
DriverTraceVO
>
truckTraceList
=
driverTraceStruct
.
convert
(
list
);
List
<
DriverTraceVO
>
traceList
=
driverTraceStruct
.
convert
(
list
);
// 停留时长计算
Integer
parkIdx
=
null
;
for
(
int
i
=
0
;
i
<
traceList
.
size
();
i
++){
if
(
traceList
.
get
(
i
).
getSpeed
().
compareTo
(
new
BigDecimal
(
PARK_SPEED
))
<
0
){
parkIdx
=
i
;
}
else
{
if
(
parkIdx
==
null
)
{
continue
;}
long
stayTime
=
Duration
.
between
(
LocalDateTimeUtils
.
parseTime
(
traceList
.
get
(
parkIdx
).
getGpsTime
()),
LocalDateTimeUtils
.
parseTime
(
traceList
.
get
(
i
).
getGpsTime
())).
getSeconds
();
traceList
.
get
(
parkIdx
).
setStayTime
(
new
BigDecimal
(
stayTime
).
divide
(
new
BigDecimal
(
60
),
1
,
RoundingMode
.
HALF_UP
));
}
}
return
tr
uckTr
aceList
;
return
traceList
;
}
...
...
@@ -179,7 +203,7 @@ public class TruckTraceServiceImpl implements TruckTraceService {
.
le
(
DriverTraceESPlus:
:
getPositionTime
,
endTime
)
.
orderByDesc
(
"positionTime"
)
);
return
(
int
)
Duration
.
between
(
LocalDateTimeUtils
.
parseTime
(
list
.
get
(
0
).
getGpsTime
()),
LocalDateTimeUtils
.
parseTime
(
list
.
get
(
list
.
size
()
-
1
).
getGps
Time
())).
toMinutes
();
return
(
int
)
Duration
.
between
(
LocalDateTimeUtils
.
parseTime
(
list
1
.
get
(
0
).
getPositionTime
()),
LocalDateTimeUtils
.
parseTime
(
list1
.
get
(
list1
.
size
()
-
1
).
getPosition
Time
())).
toMinutes
();
}
return
0
;
...
...
performance-web/src/main/java/com/clx/performance/service/impl/vehiclewarn/VehicleWarnInfoServiceImpl.java
浏览文件 @
0183c1d3
...
...
@@ -110,6 +110,17 @@ public class VehicleWarnInfoServiceImpl implements VehicleWarnInfoService {
List
<
DriverTruckTraceVO
>
truckTraceList
=
truckTraceService
.
listTruckTraceByTime
(
vehicleWarnInfo
.
getTruckNo
(),
LocalDateTimeUtils
.
formatTime
(
beginTime
),
LocalDateTimeUtils
.
formatTime
(
endTime
));
List
<
DriverTraceVO
>
driverTraceList
=
truckTraceService
.
listDriverTraceByTime
(
vehicleWarnInfo
.
getDriverUserNo
(),
LocalDateTimeUtils
.
formatTime
(
beginTime
),
LocalDateTimeUtils
.
formatTime
(
endTime
));
// 接单重车、卸车空车
for
(
DriverTruckTraceVO
item
:
truckTraceList
)
{
item
.
setTruckStatus
(
1
);
if
(
orderChild
.
getCancelTime
()
!=
null
){
if
(
LocalDateTimeUtils
.
parseTime
(
item
.
getGpsTime
()).
isAfter
(
orderChild
.
getCancelTime
())){
item
.
setTruckStatus
(
0
);}
}
if
(
orderChild
.
getUnloadTime
()
!=
null
){
if
(
LocalDateTimeUtils
.
parseTime
(
item
.
getGpsTime
()).
isAfter
(
orderChild
.
getUnloadTime
())){
item
.
setTruckStatus
(
0
);}
}
}
VehicleTraceVO
result
=
new
VehicleTraceVO
();
result
.
setDriverTraceList
(
driverTraceList
);
result
.
setTruckTraceList
(
truckTraceList
);
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论