Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
f911d407
提交
f911d407
authored
7月 08, 2024
作者:
刘海泉
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
提交运单同步挂车车牌号和装卸车磅单图片的同步
上级
adf45dbe
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
51 行增加
和
1 行删除
+51
-1
OrderChildDtsListener.java
...a/com/clx/performance/listener/OrderChildDtsListener.java
+51
-1
没有找到文件。
performance-web/src/main/java/com/clx/performance/listener/OrderChildDtsListener.java
浏览文件 @
f911d407
...
...
@@ -13,25 +13,33 @@ import com.clx.order.feign.OrderFeign;
import
com.clx.order.vo.feign.FeignOrderVO
;
import
com.clx.performance.config.ThirdAppConfig
;
import
com.clx.performance.constant.RabbitKeyConstants
;
import
com.clx.performance.dao.OrderChildImageDao
;
import
com.clx.performance.dto.dts.DataTransportDTO
;
import
com.clx.performance.enums.DtsOperationTypeEnum
;
import
com.clx.performance.enums.OrderChildEnum
;
import
com.clx.performance.enums.OrderChildPoundAuditEnum
;
import
com.clx.performance.event.OrderChildCancelEvent
;
import
com.clx.performance.extranal.user.DriverService
;
import
com.clx.performance.model.OrderChild
;
import
com.clx.performance.model.OrderChildImage
;
import
com.clx.performance.service.LastTruckService
;
import
com.clx.user.feign.TruckFeign
;
import
com.clx.user.vo.feign.FeignDriverTruckModelVo
;
import
com.clx.user.vo.feign.TruckInfoFeignVo
;
import
com.msl.common.enums.ResultCodeEnum
;
import
com.msl.common.result.Result
;
import
com.msl.common.utils.DtsMapConvertUtil
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.context.ApplicationEventPublisher
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Objects
;
import
java.util.Optional
;
...
...
@@ -44,6 +52,8 @@ public class OrderChildDtsListener {
private
final
DriverService
driverService
;
private
final
ApplicationEventPublisher
applicationEventPublisher
;
private
final
ThirdAppConfig
thirdAppConfig
;
private
final
TruckFeign
truckFeign
;
private
final
OrderChildImageDao
orderChildImageDao
;
...
...
@@ -71,7 +81,8 @@ public class OrderChildDtsListener {
if
(
OrderChildEnum
.
SYNC_STATUS_lIST
.
contains
(
after
.
getStatus
())
&&
(!
Objects
.
equals
(
before
.
getStatus
(),
after
.
getStatus
())
||
!
Objects
.
equals
(
before
.
getLoadNet
(),
after
.
getLoadNet
()))
||
!
Objects
.
equals
(
before
.
getUnloadNet
(),
after
.
getUnloadNet
())
!
Objects
.
equals
(
before
.
getUnloadNet
(),
after
.
getUnloadNet
())
||
!
Objects
.
equals
(
before
.
getPoundStatus
(),
after
.
getPoundStatus
())
){
orderChildChangeAfter
(
after
);
}
...
...
@@ -91,6 +102,7 @@ public class OrderChildDtsListener {
}
}
public
void
orderChildChangeAfter
(
OrderChildMessage
after
){
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
after
.
getOrderNo
());
if
(
orderInfoFeign
==
null
)
{
...
...
@@ -104,6 +116,8 @@ public class OrderChildDtsListener {
FeignDriverTruckModelVo
dumpType
=
driverService
.
getDumpType
(
truckModel
).
orElseThrow
(
ResultCodeEnum
.
FAIL
);
after
.
setDumpType
(
dumpType
.
getDumpType
());
}
buildOrderOtherInfo
(
after
);
//同步after数据
Optional
<
OrderChildEnum
.
Status
>
option
=
OrderChildEnum
.
Status
.
getByCode
(
after
.
getStatus
());
String
statusName
=
option
.
isPresent
()?
option
.
get
().
getName
():
"未知状态"
;
...
...
@@ -146,6 +160,42 @@ public class OrderChildDtsListener {
}
}
}
//构建运单其它信息
public
void
buildOrderOtherInfo
(
OrderChildMessage
after
){
//查询挂车车牌号
if
(
Objects
.
nonNull
(
after
.
getTruckId
())){
log
.
info
(
"通过车辆id:{} 开始查找运单号:{},车牌号:{} 对应的车辆信息开始查询==="
,
after
.
getTruckId
(),
after
.
getChildNo
(),
after
.
getTruckNo
());
Result
<
TruckInfoFeignVo
>
result
=
truckFeign
.
getTruckInfo
(
after
.
getTruckId
());
if
(!
result
.
succeed
()){
log
.
warn
(
"通过车辆id:{} 开始查找运单号:{},车牌号:{} 的车辆信息未查询到,响应结果:{}"
,
after
.
getTruckId
(),
after
.
getChildNo
(),
after
.
getTruckNo
(),
result
);
}
else
{
log
.
warn
(
"通过车辆id:{} 开始查找运单号:{},车牌号:{} 查询到对应的车辆信息,响应结果:{}"
,
after
.
getTruckId
(),
after
.
getChildNo
(),
after
.
getTruckNo
(),
result
);
after
.
setTruckNo2
(
result
.
getData
().
getTruckNo2
());
}
}
//查询收发货地对应的磅单图片信息,
if
(
Objects
.
equals
(
after
.
getPoundStatus
(),
OrderChildPoundAuditEnum
.
Status
.
APPROVED
.
getCode
())){
List
<
OrderChildImage
>
orderChildImages
=
orderChildImageDao
.
listByField
(
OrderChildImage:
:
getChildNo
,
after
.
getChildNo
());
if
(
CollectionUtils
.
isNotEmpty
(
orderChildImages
)){
List
<
String
>
sendAddressPoundPicList
=
new
ArrayList
<>();
List
<
String
>
receiveAddressPoundPicList
=
new
ArrayList
<>();
orderChildImages
.
forEach
(
item
->{
if
(
Objects
.
equals
(
item
.
getType
(),
OrderChildImage
.
Type
.
LOAD
.
getCode
())){
sendAddressPoundPicList
.
add
(
item
.
getImage
());
}
if
(
Objects
.
equals
(
item
.
getType
(),
OrderChildImage
.
Type
.
UNLOAD
.
getCode
())){
receiveAddressPoundPicList
.
add
(
item
.
getImage
());
}
});
after
.
setSendAddressPoundPicList
(
sendAddressPoundPicList
);
after
.
setReceiveAddressPoundPicList
(
receiveAddressPoundPicList
);
}
}
}
public
void
syncLastTruck
(
FeignOrderVO
orderInfoFeign
,
OrderChildMessage
after
){
//当运单状态为到达目的地之后的状态时候,需要判断最后一车的逻辑
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论