Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
f2363240
提交
f2363240
authored
5月 14, 2024
作者:
刘海泉
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
新增车辆人员轨迹信息
上级
a902ec90
隐藏空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
205 行增加
和
0 行删除
+205
-0
QueryTraceParam.java
...a/com/clx/performance/param/pc/trace/QueryTraceParam.java
+33
-0
OrderChildTraceVO.java
...va/com/clx/performance/vo/pc/trace/OrderChildTraceVO.java
+27
-0
TraceController.java
.../clx/performance/controller/pc/trace/TraceController.java
+51
-0
TraceMonitorServiceImpl.java
...rformance/service/impl/trace/TraceMonitorServiceImpl.java
+84
-0
TraceMonitorService.java
...om/clx/performance/service/trace/TraceMonitorService.java
+10
-0
没有找到文件。
performance-api/src/main/java/com/clx/performance/param/pc/trace/QueryTraceParam.java
0 → 100644
浏览文件 @
f2363240
package
com
.
clx
.
performance
.
param
.
pc
.
trace
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.Setter
;
import
javax.validation.constraints.NotBlank
;
/**
* @ClassName QueryTraceParam
* @Description
* @Author kavin
* @Date 2024/5/13 18:07
* @Version 1.0
*/
@Getter
@Setter
public
class
QueryTraceParam
{
@ApiModelProperty
(
"运单编号"
)
private
String
childNo
;
@NotBlank
(
message
=
"车牌号不能为空"
)
@ApiModelProperty
(
"车牌号"
)
private
String
truckNo
;
@NotBlank
(
message
=
"开始时间不能为空"
)
@ApiModelProperty
(
"开始时间"
)
private
String
beginTime
;
@NotBlank
(
message
=
"结束时间不能为空"
)
@ApiModelProperty
(
"结束时间"
)
private
String
endTime
;
}
performance-api/src/main/java/com/clx/performance/vo/pc/trace/OrderChildTraceVO.java
0 → 100644
浏览文件 @
f2363240
package
com
.
clx
.
performance
.
vo
.
pc
.
trace
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
java.util.List
;
/**
* @Author: aiqinguo
* @Description: 车辆轨迹
* @Date: 2024/04/25 17:09:33
* @Version: 1.0
*/
@Getter
@Setter
@NoArgsConstructor
public
class
OrderChildTraceVO
{
@ApiModelProperty
(
value
=
"车辆轨迹列表"
)
List
<
DriverTruckTraceVO
>
truckTraceList
;
@ApiModelProperty
(
value
=
"司机轨迹列表"
)
List
<
DriverTraceVO
>
driverTraceList
;
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/controller/pc/trace/TraceController.java
0 → 100644
浏览文件 @
f2363240
package
com
.
clx
.
performance
.
controller
.
pc
.
trace
;
import
com.clx.performance.param.pc.trace.QueryTraceParam
;
import
com.clx.performance.service.trace.TraceMonitorService
;
import
com.clx.performance.service.trace.TruckTraceService
;
import
com.clx.performance.vo.pc.trace.OrderChildTraceVO
;
import
com.msl.common.result.Result
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.constraints.NotBlank
;
/**
* @ClassName TraceController
* @Description
* @Author kavin
* @Date 2024/5/13 17:54
* @Version 1.0
*/
@Slf4j
@RestController
@RequestMapping
(
"/pc/carrier/trace/monitor"
)
@Validated
@Api
(
tags
=
"PC-承运轨迹监控"
)
@AllArgsConstructor
public
class
TraceController
{
private
final
TraceMonitorService
traceMonitorService
;
@ApiOperation
(
value
=
"运单轨迹监控"
,
notes
=
"<br>By:刘海泉"
)
@PostMapping
(
"/getOrderChildTrace"
)
public
Result
<
OrderChildTraceVO
>
getOrderChildTrace
(
@RequestBody
@Validated
QueryTraceParam
param
)
{
return
Result
.
ok
(
traceMonitorService
.
getOrderChildTrace
(
param
));
}
@ApiOperation
(
value
=
"车辆轨迹监控"
,
notes
=
"<br>By:刘海泉"
)
@PostMapping
(
"/getTruckTrace"
)
public
Result
<
OrderChildTraceVO
>
getTruckTrace
(
@RequestBody
@Validated
QueryTraceParam
param
)
{
return
Result
.
ok
(
traceMonitorService
.
getTruckTrace
(
param
));
}
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/service/impl/trace/TraceMonitorServiceImpl.java
0 → 100644
浏览文件 @
f2363240
package
com
.
clx
.
performance
.
service
.
impl
.
trace
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.enums.ResultEnum
;
import
com.clx.performance.esplus.mapper.DriverTraceESPlusMapper
;
import
com.clx.performance.esplus.mapper.TruckTraceESPlusMapper
;
import
com.clx.performance.esplus.model.DriverTraceESPlus
;
import
com.clx.performance.esplus.model.TruckTraceESPlus
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.param.pc.trace.QueryTraceParam
;
import
com.clx.performance.param.temp.DriverTraceAddParam
;
import
com.clx.performance.param.temp.TruckTraceAddParam
;
import
com.clx.performance.service.trace.TraceMonitorService
;
import
com.clx.performance.service.trace.TruckTraceService
;
import
com.clx.performance.struct.trace.DriverTraceStruct
;
import
com.clx.performance.struct.trace.TruckTraceStruct
;
import
com.clx.performance.utils.LocalDateTimeUtils
;
import
com.clx.performance.vo.pc.trace.DriverTraceVO
;
import
com.clx.performance.vo.pc.trace.DriverTruckTraceVO
;
import
com.clx.performance.vo.pc.trace.OrderChildTraceVO
;
import
com.msl.common.exception.ServiceSystemException
;
import
com.msl.common.utils.DateUtils
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.dromara.easyes.core.conditions.select.LambdaEsQueryWrapper
;
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
;
import
java.util.List
;
@Slf4j
@Service
@AllArgsConstructor
public
class
TraceMonitorServiceImpl
implements
TraceMonitorService
{
private
final
TruckTraceService
truckTraceService
;
private
final
OrderChildDao
orderChildDao
;
private
final
int
TRACE_DAY_MAX
=
7
;
@Override
public
OrderChildTraceVO
getOrderChildTrace
(
QueryTraceParam
param
)
{
if
(
StringUtils
.
isBlank
(
param
.
getChildNo
())){
throw
new
ServiceSystemException
(
ResultEnum
.
PARAM_ERROR
,
"运单编号不能为空"
);
}
checkParam
(
param
);
OrderChild
child
=
orderChildDao
.
getByChildNo
(
param
.
getChildNo
()).
orElseThrow
(
ResultEnum
.
DATA_NOT_FIND
,
"运单数据不存在"
);
List
<
DriverTruckTraceVO
>
truckTrace
=
truckTraceService
.
listTruckTraceByTime
(
param
.
getTruckNo
(),
param
.
getBeginTime
(),
param
.
getEndTime
());
List
<
DriverTraceVO
>
driverTrace
=
truckTraceService
.
listDriverTraceByTime
(
child
.
getDriverUserNo
(),
param
.
getBeginTime
(),
param
.
getEndTime
());
OrderChildTraceVO
result
=
new
OrderChildTraceVO
();
result
.
setDriverTraceList
(
driverTrace
);
result
.
setTruckTraceList
(
truckTrace
);
return
result
;
}
@Override
public
OrderChildTraceVO
getTruckTrace
(
QueryTraceParam
param
)
{
checkParam
(
param
);
List
<
DriverTruckTraceVO
>
truckTrace
=
truckTraceService
.
listTruckTraceByTime
(
param
.
getTruckNo
(),
param
.
getBeginTime
(),
param
.
getEndTime
());
//查询车辆的车主信息
List
<
DriverTraceVO
>
driverTrace
=
truckTraceService
.
listDriverTraceByTime
(,
param
.
getBeginTime
(),
param
.
getEndTime
());
OrderChildTraceVO
result
=
new
OrderChildTraceVO
();
result
.
setDriverTraceList
(
driverTrace
);
result
.
setTruckTraceList
(
truckTrace
);
return
result
;
}
public
void
checkParam
(
QueryTraceParam
param
){
LocalDateTime
beginTime
=
DateUtils
.
parseDateTime
(
param
.
getBeginTime
()).
get
();
LocalDateTime
endTime
=
DateUtils
.
parseDateTime
(
param
.
getEndTime
()).
get
();
if
(
endTime
.
isAfter
(
beginTime
.
plusDays
(
TRACE_DAY_MAX
))
)
{
//最多查询7天
throw
new
ServiceSystemException
(
ResultEnum
.
PARAM_ERROR
,
"选择的时间范围需小于7天"
);
}
}
}
performance-web/src/main/java/com/clx/performance/service/trace/TraceMonitorService.java
0 → 100644
浏览文件 @
f2363240
package
com
.
clx
.
performance
.
service
.
trace
;
import
com.clx.performance.param.pc.trace.QueryTraceParam
;
import
com.clx.performance.vo.pc.trace.OrderChildTraceVO
;
public
interface
TraceMonitorService
{
OrderChildTraceVO
getOrderChildTrace
(
QueryTraceParam
param
);
OrderChildTraceVO
getTruckTrace
(
QueryTraceParam
param
);
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论