Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
8242e938
提交
8242e938
authored
9月 27, 2024
作者:
刘海泉
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
commit
上级
0d79791f
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
44 行增加
和
1 行删除
+44
-1
SendOrderStatusNoticeSmsListener.java
...erformance/listener/SendOrderStatusNoticeSmsListener.java
+44
-1
没有找到文件。
performance-web/src/main/java/com/clx/performance/listener/SendOrderStatusNoticeSmsListener.java
浏览文件 @
8242e938
...
...
@@ -4,6 +4,9 @@ import cn.hutool.core.lang.TypeReference;
import
cn.hutool.json.JSONUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.clx.open.sdk.callback.message.OrderInfoMessage
;
import
com.clx.order.enums.OrderEnum
;
import
com.clx.order.feign.OrderFeign
;
import
com.clx.order.vo.feign.FeignOrderVO
;
import
com.clx.performance.common.MqWrapper
;
import
com.clx.performance.config.ConfiguredOpenProperties
;
import
com.clx.performance.constant.RabbitKeyConstants
;
...
...
@@ -25,6 +28,7 @@ import org.springframework.stereotype.Component;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
import
static
com
.
clx
.
performance
.
enums
.
OrderEnum
.
Status
.*;
...
...
@@ -39,6 +43,9 @@ public class SendOrderStatusNoticeSmsListener {
private
final
ConfiguredOpenClient
configuredOpenClient
;
private
final
VehicleWarnUserDao
vehicleWarnUserDao
;
private
final
ConfiguredOpenProperties
properties
;
private
final
OrderFeign
orderFeign
;
public
static
final
Integer
CANCEL_REASON_CODE
=
1000000
;
static
{
CODE_MAP
.
put
(
WAIT_QUOTATION
.
getCode
(),
"orderWaitQuotation"
);
...
...
@@ -46,6 +53,9 @@ public class SendOrderStatusNoticeSmsListener {
CODE_MAP
.
put
(
SUCCESS
.
getCode
(),
"orderSuccess"
);
CODE_MAP
.
put
(
COMPLETED
.
getCode
(),
"orderCompleted"
);
CODE_MAP
.
put
(
CANCELED
.
getCode
(),
"orderCanceled"
);
CODE_MAP
.
put
(
CANCEL_REASON_CODE
,
"orderCanceledHaveReason"
);
}
@RabbitListener
(
queues
=
RabbitKeyConstants
.
SEND_ORDER_STATUS_NOTICE_SMS_QUEUE
)
...
...
@@ -68,14 +78,23 @@ public class SendOrderStatusNoticeSmsListener {
//设置消息内容
SmsMessageContentImpl
smsMessageContent
=
new
SmsMessageContentImpl
();
Integer
code
=
getCode
(
order
.
getOrderNo
(),
order
.
getOrderStatus
());
//模版code
smsMessageContent
.
setCode
(
CODE_MAP
.
get
(
order
.
getOrderStatus
()));
smsMessageContent
.
setCode
(
CODE_MAP
.
get
(
code
));
//模版参数
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
put
(
"sendAddressShorter"
,
order
.
getSendAddressShorter
());
params
.
put
(
"receiveAddressShorter"
,
order
.
getReveiveAddressShorter
());
params
.
put
(
"orderNo"
,
order
.
getOrderNo
());
params
.
put
(
"cancelReason"
,
getCancelReason
(
order
.
getOrderNo
(),
code
));
smsMessageContent
.
setParams
(
params
);
...
...
@@ -108,4 +127,28 @@ public class SendOrderStatusNoticeSmsListener {
.
map
(
VehicleWarnUser:
:
getMobile
)
.
collect
(
Collectors
.
joining
(
","
));
}
public
Integer
getCode
(
String
orderNo
,
int
orderStatus
){
if
(
Objects
.
equals
(
orderStatus
,
CANCELED
.
getCode
())){
FeignOrderVO
orderInfoFeign
=
orderFeign
.
getOrderInfoFeign
(
orderNo
);
//判断是否煤源的订单,煤源的订单需要查询取消原因
if
(
Objects
.
equals
(
orderInfoFeign
.
getType
(),
OrderEnum
.
OrderType
.
COAL_SOURCE
.
getCode
())){
return
CANCEL_REASON_CODE
;
}
}
return
orderStatus
;
}
public
String
getCancelReason
(
String
orderNo
,
int
code
){
if
(
Objects
.
equals
(
code
,
CANCEL_REASON_CODE
)){
log
.
info
(
"通过订单号查询订单取消原因,订单号:{}"
,
orderNo
);
Result
<
String
>
orderCancelReason
=
orderFeign
.
getOrderCancelReason
(
orderNo
);
log
.
info
(
"通过订单号查询订单取消原因,订单号:{},响应结果:{}"
,
orderNo
,
orderCancelReason
);
if
(
orderCancelReason
.
succeed
()){
return
orderCancelReason
.
getData
();
}
}
return
null
;
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论