Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
65ddee9c
提交
65ddee9c
authored
4月 29, 2024
作者:
李瑞鑫
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
货主结算单数据同步货主客户端
上级
ceb7bd9c
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
77 行增加
和
0 行删除
+77
-0
SettlementOwnerDtsListener.java
...rformance/listener/settle/SettlementOwnerDtsListener.java
+77
-0
没有找到文件。
performance-web/src/main/java/com/clx/performance/listener/settle/SettlementOwnerDtsListener.java
0 → 100644
浏览文件 @
65ddee9c
package
com
.
clx
.
performance
.
listener
.
settle
;
import
com.alibaba.fastjson.JSON
;
import
com.clx.open.sdk.callback.OpenCallBackClient
;
import
com.clx.open.sdk.callback.message.SettlementOwnerBillMessage
;
import
com.clx.order.enums.SyncPlatformEnum
;
import
com.clx.performance.config.ThirdAppConfig
;
import
com.clx.performance.constant.RabbitKeyConstants
;
import
com.clx.performance.dto.dts.DataTransportDTO
;
import
com.clx.performance.enums.DtsOperationTypeEnum
;
import
com.msl.common.result.Result
;
import
com.msl.common.utils.DtsMapConvertUtil
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.stereotype.Component
;
import
java.util.Objects
;
@Slf4j
@Component
@AllArgsConstructor
public
class
SettlementOwnerDtsListener
{
private
final
ThirdAppConfig
thirdAppConfig
;
@RabbitListener
(
queues
=
RabbitKeyConstants
.
CLX_PERFORMANCE_SETTLEMENT_OWNER_QUEUE
)
public
void
onMessage
(
Message
message
)
{
try
{
String
msg
=
new
String
(
message
.
getBody
());
log
.
info
(
"DTS消息同步开始, database:clx_performance.settlement_owner, msg:{}"
,
msg
);
DataTransportDTO
dataTransportDTO
=
JSON
.
parseObject
(
msg
,
DataTransportDTO
.
class
);
log
.
info
(
"DTS消息同步开始, database:clx_performance.settlement_owner, 实体:{}"
,
dataTransportDTO
);
log
.
info
(
"操作类型:{}"
,
dataTransportDTO
.
getOperationType
().
getCode
());
SettlementOwnerBillMessage
before
=
DtsMapConvertUtil
.
convert
(
dataTransportDTO
.
getBeforeMap
(),
new
SettlementOwnerBillMessage
());
SettlementOwnerBillMessage
after
=
DtsMapConvertUtil
.
convert
(
dataTransportDTO
.
getAfterMap
(),
new
SettlementOwnerBillMessage
());
if
(
Objects
.
equals
(
DtsOperationTypeEnum
.
DELETE
.
getCode
(),
dataTransportDTO
.
getOperationType
().
getCode
())){
//数据删除
log
.
info
(
"删除:{}"
,
before
);
return
;
}
//违约结算单数据同步
thirdpartySync
(
after
);
}
catch
(
Exception
e
)
{
log
.
info
(
"DTS消息同步失败, database:clx_performance.settlement_owner_detail, error:{}"
,
e
.
getMessage
());
}
}
/**
* 第三方同步
*/
public
void
thirdpartySync
(
SettlementOwnerBillMessage
message
){
try
{
OpenCallBackClient
openCallBackClient
=
thirdAppConfig
.
getOpenCallBackClient
(
SyncPlatformEnum
.
Source
.
NEW_OWNER_CLIENT
.
getCode
().
toString
());
log
.
info
(
"货主结算单同步:{}"
,
message
.
getId
());
Result
<?>
result
=
openCallBackClient
.
encryptPost
(
JSON
.
toJSONString
(
message
),
message
.
topic
());
if
(
result
.
succeed
())
{
log
.
info
(
"货主结算单同步成功:{}"
,
message
.
getId
());
}
else
{
log
.
info
(
"货主结算单同步失败:{}"
,
message
.
getId
());
}
}
catch
(
Exception
e
){
}
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论