Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
82aad5e0
提交
82aad5e0
authored
4月 29, 2024
作者:
艾庆国
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'v14.4_vehicle_warn_20240425' into dev
上级
bd8465d3
14cccbd1
隐藏空白字符变更
内嵌
并排
正在显示
19 个修改的文件
包含
458 行增加
和
50 行删除
+458
-50
VehicleWarnLogEnum.java
...clx/performance/enums/vehiclewarn/VehicleWarnLogEnum.java
+48
-0
DriverTraceAddParam.java
...a/com/clx/performance/param/temp/DriverTraceAddParam.java
+36
-0
DriverTraceVO.java
...n/java/com/clx/performance/vo/pc/trace/DriverTraceVO.java
+5
-17
DriverTruckTraceVO.java
...a/com/clx/performance/vo/pc/trace/DriverTruckTraceVO.java
+2
-4
VehicleTraceVO.java
...com/clx/performance/vo/pc/vehiclewarn/VehicleTraceVO.java
+10
-1
VehicleWarnLogVO.java
...m/clx/performance/vo/pc/vehiclewarn/VehicleWarnLogVO.java
+49
-0
VehicleWarnInfoController.java
.../controller/pc/vehiclewarn/VehicleWarnInfoController.java
+24
-0
TempTraceController.java
.../clx/performance/controller/temp/TempTraceController.java
+21
-7
VehicleWarnLogDaoImpl.java
...rformance/dao/impl/vehiclewarn/VehicleWarnLogDaoImpl.java
+18
-0
VehicleWarnLogDao.java
...om/clx/performance/dao/vehiclewarn/VehicleWarnLogDao.java
+12
-0
DriverTraceESPlus.java
...a/com/clx/performance/esplus/model/DriverTraceESPlus.java
+7
-12
VehicleWarnLogMapper.java
.../performance/mapper/vehiclewarn/VehicleWarnLogMapper.java
+13
-0
VehicleWarnLog.java
...com/clx/performance/model/vehiclewarn/VehicleWarnLog.java
+46
-0
TruckTraceServiceImpl.java
...performance/service/impl/trace/TruckTraceServiceImpl.java
+45
-1
VehicleWarnInfoServiceImpl.java
.../service/impl/vehiclewarn/VehicleWarnInfoServiceImpl.java
+96
-0
TruckTraceService.java
.../com/clx/performance/service/trace/TruckTraceService.java
+6
-1
VehicleWarnInfoService.java
...rformance/service/vehiclewarn/VehicleWarnInfoService.java
+6
-0
DriverTraceStruct.java
...a/com/clx/performance/struct/trace/DriverTraceStruct.java
+13
-6
TruckTraceStruct.java
...va/com/clx/performance/struct/trace/TruckTraceStruct.java
+1
-1
没有找到文件。
performance-api/src/main/java/com/clx/performance/enums/vehiclewarn/VehicleWarnLogEnum.java
0 → 100644
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
enums
.
vehiclewarn
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
import
java.util.Arrays
;
import
java.util.Optional
;
public
enum
VehicleWarnLogEnum
{
;
@Getter
@AllArgsConstructor
public
enum
Type
{
SUSPEND
(
1
,
"暂停预警"
),
RESOLVE
(
2
,
"处理预警"
),
;
private
final
Integer
code
;
private
final
String
msg
;
public
static
Optional
<
Type
>
getByCode
(
int
code
)
{
return
Arrays
.
stream
(
values
()).
filter
(
e
->
e
.
code
==
code
).
findFirst
();
}
public
static
String
getMsgByCode
(
int
code
)
{
return
getByCode
(
code
).
map
(
Type:
:
getMsg
).
orElse
(
null
);
}
}
@Getter
@AllArgsConstructor
public
enum
WarnRang
{
CHILD
(
1
,
"本运单不再提示该预警"
),
ORDER
(
2
,
"相同货单不再提示该预警"
),
NONE
(
3
,
"不再提示该预警"
),
;
private
final
Integer
code
;
private
final
String
msg
;
public
static
Optional
<
WarnRang
>
getByCode
(
int
code
)
{
return
Arrays
.
stream
(
values
()).
filter
(
e
->
e
.
code
==
code
).
findFirst
();
}
public
static
String
getMsgByCode
(
int
code
)
{
return
getByCode
(
code
).
map
(
WarnRang:
:
getMsg
).
orElse
(
null
);
}
}
}
performance-api/src/main/java/com/clx/performance/param/temp/DriverTraceAddParam.java
0 → 100644
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
param
.
temp
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.math.BigDecimal
;
import
java.util.List
;
@Setter
@Getter
@ToString
@NoArgsConstructor
public
class
DriverTraceAddParam
{
@ApiModelProperty
(
value
=
"车辆轨迹列表"
)
private
List
<
DriverTraceItem
>
traceList
;
@Setter
@Getter
@ToString
@NoArgsConstructor
public
static
class
DriverTraceItem
{
@ApiModelProperty
(
value
=
"用户编码"
,
example
=
"10000"
)
private
Long
userNo
;
@ApiModelProperty
(
value
=
"1-正常上传,2-离线上传"
,
example
=
"1"
)
private
Integer
dataType
;
@ApiModelProperty
(
value
=
"位置 [123.45, 12.34]"
)
private
BigDecimal
[]
location
;
@ApiModelProperty
(
value
=
"时间"
)
private
String
gpsTime
;
}
}
performance-api/src/main/java/com/clx/performance/vo/pc/trace/DriverTraceVO.java
浏览文件 @
82aad5e0
...
...
@@ -12,25 +12,13 @@ import java.math.BigDecimal;
@NoArgsConstructor
public
class
DriverTraceVO
{
@ApiModelProperty
(
value
=
"车牌号"
,
dataType
=
"String"
)
private
String
truckNo
;
@ApiModelProperty
(
value
=
"正北方向夹角"
,
example
=
"90"
,
dataType
=
"String"
)
private
BigDecimal
angle
;
@ApiModelProperty
(
value
=
"GPS 速度"
,
example
=
"602"
,
dataType
=
"String"
)
private
BigDecimal
speed
;
@ApiModelProperty
(
value
=
"里程"
,
example
=
"1500"
,
dataType
=
"String"
)
private
BigDecimal
mileage
;
@ApiModelProperty
(
value
=
"海拔"
,
example
=
"3250"
,
dataType
=
"String"
)
private
BigDecimal
height
;
@ApiModelProperty
(
value
=
"经度"
,
example
=
"31.1233"
,
dataType
=
"BigDecimal"
)
@ApiModelProperty
(
value
=
"经度"
)
private
BigDecimal
longitude
;
@ApiModelProperty
(
value
=
"纬度"
,
example
=
"161.342543"
,
dataType
=
"BigDecimal"
)
@ApiModelProperty
(
value
=
"纬度"
)
private
BigDecimal
latitude
;
@ApiModelProperty
(
value
=
"GPS 时间"
,
example
=
"20140325/104954"
,
dataType
=
"String"
)
@ApiModelProperty
(
value
=
"GPS 时间"
)
private
String
gpsTime
;
@ApiModelProperty
(
value
=
"创建时间"
,
dataType
=
"String"
)
private
String
createTime
;
@ApiModelProperty
(
value
=
"更新时间"
,
dataType
=
"String"
)
private
String
modifiedTime
;
@ApiModelProperty
(
value
=
"停留时长(min)"
,
example
=
"12.3"
)
private
BigDecimal
stayTime
=
BigDecimal
.
ZERO
;
}
performance-api/src/main/java/com/clx/performance/vo/pc/trace/DriverTruckTraceVO.java
浏览文件 @
82aad5e0
...
...
@@ -12,8 +12,6 @@ import java.math.BigDecimal;
@NoArgsConstructor
public
class
DriverTruckTraceVO
{
@ApiModelProperty
(
value
=
"车牌号"
,
example
=
"京A12345"
)
private
String
truckNo
;
@ApiModelProperty
(
value
=
"正北方向夹角"
,
example
=
"12.34"
)
private
BigDecimal
angle
;
@ApiModelProperty
(
value
=
"GPS 速度"
,
example
=
"12.34"
)
...
...
@@ -28,7 +26,7 @@ public class DriverTruckTraceVO {
private
BigDecimal
latitude
;
@ApiModelProperty
(
value
=
"GPS 时间"
)
private
String
gpsTime
;
@ApiModelProperty
(
value
=
"
创建时间
"
)
private
String
createTime
;
@ApiModelProperty
(
value
=
"
停留时长(min)"
,
example
=
"12.3
"
)
private
BigDecimal
stayTime
=
BigDecimal
.
ZERO
;
}
performance-api/src/main/java/com/clx/performance/vo/pc/vehiclewarn/VehicleTraceVO.java
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
vo
.
pc
.
vehiclewarn
;
import
com.clx.performance.vo.pc.trace.DriverTraceVO
;
import
com.clx.performance.vo.pc.trace.DriverTruckTraceVO
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
java.util.List
;
/**
* @Author: aiqinguo
* @Description: 车辆轨迹
...
...
@@ -15,6 +20,9 @@ import lombok.Setter;
@Setter
@NoArgsConstructor
public
class
VehicleTraceVO
{
@ApiModelProperty
(
value
=
"车辆轨迹列表"
)
List
<
DriverTruckTraceVO
>
truckTraceList
;
@ApiModelProperty
(
value
=
"司机轨迹列表"
)
List
<
DriverTraceVO
>
driverTraceList
;
}
\ No newline at end of file
performance-api/src/main/java/com/clx/performance/vo/pc/vehiclewarn/VehicleWarnLogVO.java
0 → 100644
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
vo
.
pc
.
vehiclewarn
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
java.time.LocalDateTime
;
/**
* @Author: aiqinguo
* @Description: 预警日志
* @Date: 2024/04/26 11:21:25
* @Version: 1.0
*/
@Getter
@Setter
@NoArgsConstructor
public
class
VehicleWarnLogVO
{
@ApiModelProperty
(
value
=
"id"
,
example
=
""
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"预警信息id"
,
example
=
"1"
)
private
Integer
infoId
;
@ApiModelProperty
(
value
=
"类型:1暂停预警 2处理预警"
,
example
=
"1"
)
private
Integer
type
;
@ApiModelProperty
(
value
=
"运单编号"
,
example
=
"100000"
)
private
String
childNo
;
@ApiModelProperty
(
value
=
"预警名称"
,
example
=
"超时"
)
private
String
warnName
;
@ApiModelProperty
(
value
=
"预警时间"
,
example
=
""
)
private
String
warnTime
;
@ApiModelProperty
(
value
=
"预警屏蔽范围:1运单 2货单 3无预警"
,
example
=
"1"
)
private
Integer
warnRang
;
@ApiModelProperty
(
value
=
"预警屏蔽结束时间"
,
example
=
""
)
private
LocalDateTime
warnEndTime
;
@ApiModelProperty
(
value
=
"内容"
,
example
=
"预警处理"
)
private
String
content
;
@ApiModelProperty
(
value
=
"创建人"
,
example
=
""
)
private
String
createBy
;
@ApiModelProperty
(
value
=
"创建时间"
,
example
=
""
)
private
String
createTime
;
@ApiModelProperty
(
value
=
"修改时间"
,
example
=
""
)
private
String
modifiedTime
;
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/controller/pc/vehiclewarn/VehicleWarnInfoController.java
浏览文件 @
82aad5e0
...
...
@@ -3,7 +3,10 @@ package com.clx.performance.controller.pc.vehiclewarn;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.param.pc.vehiclewarn.PageVehicleWarnInfoParam
;
import
com.clx.performance.param.pc.vehiclewarn.VehicleWarnInfoResolveUpdateParam
;
import
com.clx.performance.param.pc.vehiclewarn.VehicleWarnInfoSuspendUpdateParam
;
import
com.clx.performance.service.vehiclewarn.VehicleWarnInfoService
;
import
com.clx.performance.vo.pc.vehiclewarn.VehicleTraceVO
;
import
com.clx.performance.vo.pc.vehiclewarn.VehicleWarnInfoVO
;
import
com.msl.common.base.PageData
;
import
com.msl.common.result.Result
;
...
...
@@ -27,6 +30,27 @@ public class VehicleWarnInfoController {
@Autowired
private
VehicleWarnInfoService
vehicleWarnInfoService
;
@ApiOperation
(
value
=
"更新预警暂停"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
"/updateSuspend"
)
public
Result
<
Void
>
updateSuspend
(
@RequestBody
@Validated
VehicleWarnInfoSuspendUpdateParam
param
)
{
vehicleWarnInfoService
.
updateSuspend
(
param
);
return
Result
.
ok
();
}
@ApiOperation
(
value
=
"更新处理"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
"/updateResolve"
)
public
Result
<
Void
>
updateConfig
(
@RequestBody
@Validated
VehicleWarnInfoResolveUpdateParam
param
)
{
vehicleWarnInfoService
.
updateResolve
(
param
);
return
Result
.
ok
();
}
@ApiOperation
(
value
=
"获取轨迹"
,
notes
=
"<br>By:艾庆国"
)
@GetMapping
(
"/getTrace"
)
public
Result
<
VehicleTraceVO
>
getTrace
(
@NotNull
(
message
=
"id不能为空"
)
@Validated
Integer
id
)
{
return
Result
.
ok
(
vehicleWarnInfoService
.
getTrace
(
id
));
}
@ApiOperation
(
value
=
"获取预警信息"
,
notes
=
"<br>By:艾庆国"
)
@GetMapping
(
"/getInfo"
)
public
Result
<
VehicleWarnInfoVO
>
getInfo
(
@NotNull
(
message
=
"id不能为空"
)
@Validated
Integer
id
)
{
...
...
performance-web/src/main/java/com/clx/performance/controller/temp/TempTraceController.java
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
controller
.
temp
;
import
com.clx.performance.param.temp.DriverTraceAddParam
;
import
com.clx.performance.param.temp.TruckTraceAddParam
;
import
com.clx.performance.service.trace.TruckTraceMqHandlerService
;
import
com.clx.performance.service.trace.TruckTraceService
;
import
com.clx.performance.vo.pc.trace.DriverTraceVO
;
import
com.clx.performance.vo.pc.trace.DriverTruckTraceVO
;
import
com.msl.common.result.Result
;
import
io.swagger.annotations.ApiOperation
;
...
...
@@ -27,26 +28,39 @@ import java.util.List;
@RequestMapping
(
value
=
"/temp/trace"
)
public
class
TempTraceController
{
@Autowired
private
TruckTraceMqHandlerService
truckTraceMqHandlerService
;
@Autowired
private
TruckTraceService
truckTraceService
;
@ApiOperation
(
value
=
"
truckTraceSync
"
,
notes
=
"<br>By:艾庆国"
)
@ApiOperation
(
value
=
"
车辆轨迹同步
"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
"/truckTraceSync"
)
public
Result
truckTraceSync
(
@RequestBody
TruckTraceAddParam
param
)
{
truckTraceService
.
s
ave
(
param
);
truckTraceService
.
truckTraceS
ave
(
param
);
return
Result
.
ok
();
}
@ApiOperation
(
value
=
"
listTruckTraceByTime
"
,
notes
=
"<br>By:艾庆国"
)
@ApiOperation
(
value
=
"
查询车辆轨迹
"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
"/listTruckTraceByTime"
)
public
Result
<
List
<
DriverTruckTraceVO
>>
listTruckTraceByTime
(
String
truckNo
,
String
beginTime
,
String
endTime
)
{
return
Result
.
ok
(
truckTraceService
.
listTruckTraceByTime
(
truckNo
,
beginTime
,
endTime
));
}
@ApiOperation
(
value
=
"司机轨迹同步"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
"/driverTraceSync"
)
public
Result
driverTraceSync
(
@RequestBody
DriverTraceAddParam
param
)
{
truckTraceService
.
driverTraceSave
(
param
);
return
Result
.
ok
();
}
@ApiOperation
(
value
=
"查询司机轨迹"
,
notes
=
"<br>By:艾庆国"
)
@PostMapping
(
"/listDriverTraceByTime"
)
public
Result
<
List
<
DriverTraceVO
>>
listDriverTraceByTime
(
Long
userNo
,
String
beginTime
,
String
endTime
)
{
return
Result
.
ok
(
truckTraceService
.
listDriverTraceByTime
(
userNo
,
beginTime
,
endTime
));
}
}
performance-web/src/main/java/com/clx/performance/dao/impl/vehiclewarn/VehicleWarnLogDaoImpl.java
0 → 100644
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
dao
.
impl
.
vehiclewarn
;
import
com.clx.performance.dao.vehiclewarn.VehicleWarnLogDao
;
import
com.clx.performance.mapper.vehiclewarn.VehicleWarnLogMapper
;
import
com.clx.performance.model.vehiclewarn.VehicleWarnLog
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.impl.BaseDaoImpl
;
import
org.springframework.stereotype.Repository
;
@Repository
public
class
VehicleWarnLogDaoImpl
extends
BaseDaoImpl
<
VehicleWarnLogMapper
,
VehicleWarnLog
,
Integer
>
implements
VehicleWarnLogDao
{
@Override
public
Optional
<
VehicleWarnLog
>
findById
(
Integer
id
)
{
return
null
;
}
}
performance-web/src/main/java/com/clx/performance/dao/vehiclewarn/VehicleWarnLogDao.java
0 → 100644
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
dao
.
vehiclewarn
;
import
com.clx.performance.mapper.vehiclewarn.VehicleWarnLogMapper
;
import
com.clx.performance.model.vehiclewarn.VehicleWarnLog
;
import
com.msl.common.base.Optional
;
import
com.msl.common.dao.BaseDao
;
public
interface
VehicleWarnLogDao
extends
BaseDao
<
VehicleWarnLogMapper
,
VehicleWarnLog
,
Integer
>
{
Optional
<
VehicleWarnLog
>
findById
(
Integer
id
);
}
performance-web/src/main/java/com/clx/performance/esplus/model/DriverTraceESPlus.java
浏览文件 @
82aad5e0
...
...
@@ -2,17 +2,11 @@ package com.clx.performance.esplus.model;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
lombok.experimental.Accessors
;
import
org.dromara.easyes.annotation.IndexField
;
import
org.dromara.easyes.annotation.IndexId
;
import
org.dromara.easyes.annotation.IndexName
;
import
org.dromara.easyes.annotation.rely.FieldType
;
import
org.dromara.easyes.annotation.rely.IdType
;
import
org.elasticsearch.common.geo.GeoPoint
;
import
org.springframework.data.annotation.Id
;
import
java.math.BigDecimal
;
...
...
@@ -20,7 +14,7 @@ import java.math.BigDecimal;
@IndexName
(
"clx_trace_driver_trace_index1"
)
public
class
DriverTraceESPlus
{
@IndexId
(
type
=
IdType
.
CUSTOMIZE
)
@IndexId
(
type
=
IdType
.
UUID
)
private
String
id
;
@ApiModelProperty
(
"用户编号"
)
...
...
@@ -29,16 +23,16 @@ public class DriverTraceESPlus {
@ApiModelProperty
(
"1-正常上传,2-离线上传"
)
private
Integer
dataType
;
@
ApiModelProperty
(
"位置"
)
private
GeoPoint
location
;
@
IndexField
(
fieldType
=
FieldType
.
GEO_POINT
)
private
BigDecimal
[]
location
;
//位置
@
ApiModelProperty
(
"定位时间"
)
@
IndexField
(
fieldType
=
FieldType
.
DATE
)
private
String
positionTime
;
@
ApiModelProperty
(
"添加时间"
)
@
IndexField
(
fieldType
=
FieldType
.
DATE
)
private
String
createTime
;
@
ApiModelProperty
(
"修改时间"
)
@
IndexField
(
fieldType
=
FieldType
.
DATE
)
private
String
modifiedTime
;
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/mapper/vehiclewarn/VehicleWarnLogMapper.java
0 → 100644
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
mapper
.
vehiclewarn
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.clx.performance.model.vehiclewarn.VehicleWarnInfo
;
import
com.clx.performance.model.vehiclewarn.VehicleWarnLog
;
import
org.apache.ibatis.annotations.Mapper
;
@Mapper
public
interface
VehicleWarnLogMapper
extends
BaseMapper
<
VehicleWarnLog
>
{
String
TABLE
=
"vehicle_warn_log"
;
}
\ No newline at end of file
performance-web/src/main/java/com/clx/performance/model/vehiclewarn/VehicleWarnLog.java
0 → 100644
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
model
.
vehiclewarn
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.msl.common.config.KeyColumn
;
import
com.msl.common.model.HasKey
;
import
lombok.Getter
;
import
lombok.NoArgsConstructor
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.time.LocalDateTime
;
/**
* @Author: aiqinguo
* @Description: 预警日志
* @Date: 2024/04/26 10:32:01
* @Version: 1.0
*/
@Getter
@Setter
@NoArgsConstructor
@TableName
(
autoResultMap
=
true
)
public
class
VehicleWarnLog
implements
HasKey
<
Integer
>
{
@TableId
(
value
=
"id"
,
type
=
IdType
.
AUTO
)
private
Integer
id
;
//id
private
Integer
infoId
;
//预警信息id
private
Integer
type
;
//类型:1暂停预警 2处理预警
private
String
childNo
;
//运单编号
private
String
warnName
;
//预警名称
private
LocalDateTime
warnTime
;
//预警时间
private
Integer
warnRang
;
//预警屏蔽范围:1运单 2货单 3无预警
private
LocalDateTime
warnEndTime
;
//预警屏蔽结束时间
private
String
content
;
//内容
private
String
createBy
;
//创建人
private
LocalDateTime
createTime
;
//创建时间
private
LocalDateTime
modifiedTime
;
//修改时间
@Override
@KeyColumn
(
"id"
)
public
Integer
gainKey
()
{
return
this
.
id
;
}
}
performance-web/src/main/java/com/clx/performance/service/impl/trace/TruckTraceServiceImpl.java
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
service
.
impl
.
trace
;
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.param.temp.DriverTraceAddParam
;
import
com.clx.performance.param.temp.TruckTraceAddParam
;
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
lombok.extern.slf4j.Slf4j
;
import
org.dromara.easyes.core.conditions.select.LambdaEsQueryWrapper
;
...
...
@@ -21,9 +26,13 @@ public class TruckTraceServiceImpl implements TruckTraceService {
@Autowired
private
TruckTraceESPlusMapper
truckTraceESPlusMapper
;
@Autowired
private
DriverTraceESPlusMapper
driverTraceESPlusMapper
;
@Autowired
private
TruckTraceStruct
truckTraceStruct
;
@Autowired
private
DriverTraceStruct
driverTraceStruct
;
@Override
public
List
<
DriverTruckTraceVO
>
listTruckTraceByTime
(
String
truckNo
,
String
beginTime
,
String
endTime
)
{
...
...
@@ -36,12 +45,29 @@ public class TruckTraceServiceImpl implements TruckTraceService {
List
<
DriverTruckTraceVO
>
truckTraceList
=
truckTraceStruct
.
convert
(
list
);
// 停留时长计算
return
truckTraceList
;
}
@Override
public
List
<
DriverTraceVO
>
listDriverTraceByTime
(
Long
userNo
,
String
beginTime
,
String
endTime
)
{
List
<
DriverTraceESPlus
>
list
=
driverTraceESPlusMapper
.
selectList
(
new
LambdaEsQueryWrapper
<
DriverTraceESPlus
>()
.
eq
(
DriverTraceESPlus:
:
getUserNo
,
userNo
)
.
ge
(
DriverTraceESPlus:
:
getPositionTime
,
beginTime
)
.
le
(
DriverTraceESPlus:
:
getPositionTime
,
endTime
)
.
orderByAsc
(
"positionTime"
)
);
List
<
DriverTraceVO
>
truckTraceList
=
driverTraceStruct
.
convert
(
list
);
// 停留时长计算
return
truckTraceList
;
}
@Override
public
void
s
ave
(
TruckTraceAddParam
param
){
public
void
truckTraceS
ave
(
TruckTraceAddParam
param
){
List
<
TruckTraceESPlus
>
list
=
new
ArrayList
<>();
for
(
TruckTraceAddParam
.
TruckTraceItem
item
:
param
.
getTraceList
())
{
...
...
@@ -60,5 +86,23 @@ public class TruckTraceServiceImpl implements TruckTraceService {
truckTraceESPlusMapper
.
insertBatch
(
list
);
}
@Override
public
void
driverTraceSave
(
DriverTraceAddParam
param
){
List
<
DriverTraceESPlus
>
list
=
new
ArrayList
<>();
for
(
DriverTraceAddParam
.
DriverTraceItem
item
:
param
.
getTraceList
())
{
DriverTraceESPlus
es
=
new
DriverTraceESPlus
();
es
.
setUserNo
(
item
.
getUserNo
());
es
.
setDataType
(
item
.
getDataType
());
es
.
setLocation
(
item
.
getLocation
());
es
.
setPositionTime
(
item
.
getGpsTime
());
es
.
setCreateTime
(
LocalDateTimeUtils
.
formatTime
());
es
.
setModifiedTime
(
es
.
getCreateTime
());
list
.
add
(
es
);
}
driverTraceESPlusMapper
.
insertBatch
(
list
);
}
}
performance-web/src/main/java/com/clx/performance/service/impl/vehiclewarn/VehicleWarnInfoServiceImpl.java
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
service
.
impl
.
vehiclewarn
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dao.vehiclewarn.VehicleWarnInfoDao
;
import
com.clx.performance.dao.vehiclewarn.VehicleWarnLogDao
;
import
com.clx.performance.enums.ResultEnum
;
import
com.clx.performance.enums.vehiclewarn.VehicleWarnInfoEnum
;
import
com.clx.performance.enums.vehiclewarn.VehicleWarnLogEnum
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.vehiclewarn.VehicleWarnInfo
;
import
com.clx.performance.model.vehiclewarn.VehicleWarnLog
;
import
com.clx.performance.param.pc.vehiclewarn.PageVehicleWarnInfoParam
;
import
com.clx.performance.param.pc.vehiclewarn.VehicleWarnInfoResolveUpdateParam
;
import
com.clx.performance.param.pc.vehiclewarn.VehicleWarnInfoSuspendUpdateParam
;
import
com.clx.performance.service.trace.TruckTraceService
;
import
com.clx.performance.service.vehiclewarn.VehicleWarnInfoService
;
import
com.clx.performance.struct.vehiclewarn.VehicleWarnInfoStruct
;
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.vehiclewarn.VehicleTraceVO
;
import
com.clx.performance.vo.pc.vehiclewarn.VehicleWarnInfoVO
;
import
com.msl.user.data.UserSessionData
;
import
com.msl.user.utils.TokenUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.time.LocalDateTime
;
import
java.util.List
;
@Slf4j
@Service
...
...
@@ -16,10 +37,85 @@ public class VehicleWarnInfoServiceImpl implements VehicleWarnInfoService {
@Autowired
private
VehicleWarnInfoDao
vehicleWarnInfoDao
;
@Autowired
private
VehicleWarnLogDao
vehicleWarnLogDao
;
@Autowired
private
OrderChildDao
orderChildDao
;
@Autowired
private
VehicleWarnInfoStruct
vehicleWarnInfoStruct
;
@Autowired
private
TruckTraceService
truckTraceService
;
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
updateSuspend
(
VehicleWarnInfoSuspendUpdateParam
param
)
{
UserSessionData
loginUserInfo
=
TokenUtil
.
getLoginUserInfo
();
VehicleWarnInfo
vehicleWarnInfo
=
vehicleWarnInfoDao
.
findById
(
param
.
getId
()).
orElseThrow
(
ResultEnum
.
DATA_NOT_FIND
);
vehicleWarnInfo
.
setStatus
(
VehicleWarnInfoEnum
.
Status
.
SUSPEND
.
getCode
());
vehicleWarnInfoDao
.
updateStatus
(
vehicleWarnInfo
);
VehicleWarnLog
vehicleWarnLog
=
new
VehicleWarnLog
();
vehicleWarnLog
.
setInfoId
(
vehicleWarnInfo
.
getId
());
vehicleWarnLog
.
setType
(
VehicleWarnLogEnum
.
Type
.
SUSPEND
.
getCode
());
vehicleWarnLog
.
setContent
(
VehicleWarnLogEnum
.
Type
.
SUSPEND
.
getMsg
());
vehicleWarnLog
.
setChildNo
(
vehicleWarnInfo
.
getChildNo
());
vehicleWarnLog
.
setWarnName
(
vehicleWarnInfo
.
getWarnName
());
vehicleWarnLog
.
setWarnRang
(
param
.
getWarnRang
());
vehicleWarnLog
.
setWarnEndTime
(
param
.
getWarnEndTime
());
vehicleWarnLog
.
setCreateBy
(
loginUserInfo
.
getUserName
());
vehicleWarnLogDao
.
saveEntity
(
vehicleWarnLog
);
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
void
updateResolve
(
VehicleWarnInfoResolveUpdateParam
param
)
{
UserSessionData
loginUserInfo
=
TokenUtil
.
getLoginUserInfo
();
VehicleWarnInfo
vehicleWarnInfo
=
vehicleWarnInfoDao
.
findById
(
param
.
getId
()).
orElseThrow
(
ResultEnum
.
DATA_NOT_FIND
);
vehicleWarnInfo
.
setStatus
(
VehicleWarnInfoEnum
.
Status
.
RESOLVE
.
getCode
());
vehicleWarnInfoDao
.
updateStatus
(
vehicleWarnInfo
);
VehicleWarnLog
vehicleWarnLog
=
new
VehicleWarnLog
();
vehicleWarnLog
.
setInfoId
(
vehicleWarnInfo
.
getId
());
vehicleWarnLog
.
setType
(
VehicleWarnLogEnum
.
Type
.
RESOLVE
.
getCode
());
vehicleWarnLog
.
setContent
(
VehicleWarnLogEnum
.
Type
.
RESOLVE
.
getMsg
());
vehicleWarnLog
.
setChildNo
(
vehicleWarnInfo
.
getChildNo
());
vehicleWarnLog
.
setWarnName
(
vehicleWarnInfo
.
getWarnName
());
vehicleWarnLog
.
setCreateBy
(
loginUserInfo
.
getUserName
());
vehicleWarnLogDao
.
saveEntity
(
vehicleWarnLog
);
}
@Override
public
VehicleTraceVO
getTrace
(
Integer
id
)
{
VehicleWarnInfo
vehicleWarnInfo
=
vehicleWarnInfoDao
.
findById
(
id
).
orElseThrow
(
ResultEnum
.
DATA_NOT_FIND
);
OrderChild
orderChild
=
orderChildDao
.
getByChildNo
(
vehicleWarnInfo
.
getChildNo
()).
orElseThrow
(
ResultEnum
.
DATA_NOT_FIND
);
LocalDateTime
beginTime
=
vehicleWarnInfo
.
getTakeTime
();
LocalDateTime
endTime
=
vehicleWarnInfo
.
getTakeTime
();
if
(
orderChild
.
getArriveSendTime
()
!=
null
)
{
endTime
=
orderChild
.
getArriveSendTime
();}
if
(
orderChild
.
getLoadTime
()
!=
null
)
{
endTime
=
orderChild
.
getLoadTime
();}
if
(
orderChild
.
getArriveReceiveTime
()
!=
null
)
{
endTime
=
orderChild
.
getArriveReceiveTime
();}
if
(
orderChild
.
getUnloadTime
()
!=
null
)
{
endTime
=
orderChild
.
getUnloadTime
();}
if
(
orderChild
.
getConfirmTime
()
!=
null
)
{
endTime
=
orderChild
.
getConfirmTime
();}
if
(
orderChild
.
getSettleTime
()
!=
null
)
{
endTime
=
orderChild
.
getSettleTime
();}
if
(
orderChild
.
getFinishTime
()
!=
null
)
{
endTime
=
orderChild
.
getFinishTime
();}
if
(
endTime
.
isAfter
(
beginTime
.
plusDays
(
3
)))
{
endTime
=
beginTime
.
plusDays
(
3
);}
//最多查询3天
List
<
DriverTruckTraceVO
>
truckTraceList
=
truckTraceService
.
listTruckTraceByTime
(
orderChild
.
getTruckNo
(),
LocalDateTimeUtils
.
formatTime
(
beginTime
),
LocalDateTimeUtils
.
formatTime
(
endTime
));
List
<
DriverTraceVO
>
driverTraceList
=
truckTraceService
.
listDriverTraceByTime
(
orderChild
.
getDriverUserNo
(),
LocalDateTimeUtils
.
formatTime
(
beginTime
),
LocalDateTimeUtils
.
formatTime
(
endTime
));
VehicleTraceVO
result
=
new
VehicleTraceVO
();
result
.
setDriverTraceList
(
driverTraceList
);
result
.
setTruckTraceList
(
truckTraceList
);
return
result
;
}
@Override
public
VehicleWarnInfoVO
getInfo
(
Integer
id
)
{
return
vehicleWarnInfoStruct
.
convert
(
vehicleWarnInfoDao
.
findById
(
id
).
orNull
());
...
...
performance-web/src/main/java/com/clx/performance/service/trace/TruckTraceService.java
浏览文件 @
82aad5e0
package
com
.
clx
.
performance
.
service
.
trace
;
import
com.clx.performance.param.temp.DriverTraceAddParam
;
import
com.clx.performance.param.temp.TruckTraceAddParam
;
import
com.clx.performance.vo.pc.trace.DriverTraceVO
;
import
com.clx.performance.vo.pc.trace.DriverTruckTraceVO
;
import
java.util.List
;
...
...
@@ -8,6 +10,9 @@ import java.util.List;
public
interface
TruckTraceService
{
List
<
DriverTruckTraceVO
>
listTruckTraceByTime
(
String
truckNo
,
String
beginTime
,
String
endTime
);
List
<
DriverTraceVO
>
listDriverTraceByTime
(
Long
userNo
,
String
beginTime
,
String
endTime
);
void
save
(
TruckTraceAddParam
param
);
void
truckTraceSave
(
TruckTraceAddParam
param
);
void
driverTraceSave
(
DriverTraceAddParam
param
);
}
performance-web/src/main/java/com/clx/performance/service/vehiclewarn/VehicleWarnInfoService.java
浏览文件 @
82aad5e0
...
...
@@ -7,6 +7,12 @@ import com.clx.performance.vo.pc.vehiclewarn.VehicleWarnInfoVO;
public
interface
VehicleWarnInfoService
{
void
updateSuspend
(
VehicleWarnInfoSuspendUpdateParam
param
);
void
updateResolve
(
VehicleWarnInfoResolveUpdateParam
param
);
VehicleTraceVO
getTrace
(
Integer
id
);
VehicleWarnInfoVO
getInfo
(
Integer
id
);
IPage
<
VehicleWarnInfoVO
>
pageInfo
(
PageVehicleWarnInfoParam
param
);
...
...
performance-web/src/main/java/com/clx/performance/struct/trace/DriverTraceStruct.java
浏览文件 @
82aad5e0
...
...
@@ -2,17 +2,24 @@ package com.clx.performance.struct.trace;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.clx.performance.
model.vehiclewarn.VehicleWarnConfig
;
import
com.clx.performance.vo.pc.
vehiclewarn.VehicleWarnConfig
VO
;
import
com.clx.performance.
esplus.model.DriverTraceESPlus
;
import
com.clx.performance.vo.pc.
trace.DriverTrace
VO
;
import
com.msl.common.utils.DateStructUtil
;
import
com.msl.common.utils.DateUtils
;
import
org.mapstruct.Mapper
;
import
org.mapstruct.Mapping
;
@Mapper
(
componentModel
=
"spring"
,
uses
=
DateStructUtil
.
class
,
imports
=
{
DateUtils
.
class
})
public
interface
DriverTraceStruct
{
import
java.math.BigDecimal
;
import
java.util.List
;
VehicleWarnConfigVO
convert
(
VehicleWarnConfig
item
);
@Mapper
(
componentModel
=
"spring"
,
uses
=
DateStructUtil
.
class
,
imports
=
{
DateUtils
.
class
,
BigDecimal
.
class
})
public
interface
DriverTraceStruct
{
Page
<
VehicleWarnConfigVO
>
convertPage
(
IPage
<
VehicleWarnConfig
>
page
);
@Mapping
(
target
=
"longitude"
,
expression
=
"java(item.getLocation()[0])"
)
@Mapping
(
target
=
"latitude"
,
expression
=
"java(item.getLocation()[1])"
)
@Mapping
(
target
=
"gpsTime"
,
source
=
"positionTime"
)
DriverTraceVO
convert
(
DriverTraceESPlus
item
);
List
<
DriverTraceVO
>
convert
(
List
<
DriverTraceESPlus
>
list
);
Page
<
DriverTraceVO
>
convertPage
(
IPage
<
DriverTraceESPlus
>
page
);
}
performance-web/src/main/java/com/clx/performance/struct/trace/TruckTraceStruct.java
浏览文件 @
82aad5e0
...
...
@@ -17,7 +17,7 @@ public interface TruckTraceStruct {
@Mapping
(
target
=
"longitude"
,
expression
=
"java(item.getLocation()[0])"
)
@Mapping
(
target
=
"latitude"
,
expression
=
"java(item.getLocation()[1])"
)
DriverTruckTraceVO
convert
(
TruckTraceESPlus
item
);
List
<
DriverTruckTraceVO
>
convert
(
List
<
TruckTraceESPlus
>
page
);
List
<
DriverTruckTraceVO
>
convert
(
List
<
TruckTraceESPlus
>
list
);
Page
<
DriverTruckTraceVO
>
convertPage
(
IPage
<
TruckTraceESPlus
>
page
);
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论