Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
56303aa7
提交
56303aa7
authored
9月 05, 2024
作者:
杨启发
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
发送订单状态通知短信
上级
c3348393
显示空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
145 行增加
和
6 行删除
+145
-6
VehicleWarnConfigEnum.java
.../performance/enums/vehiclewarn/VehicleWarnConfigEnum.java
+5
-5
pom.xml
performance-web/pom.xml
+5
-0
ConfiguredOpenClientConfig.java
...om/clx/performance/config/ConfiguredOpenClientConfig.java
+17
-0
ConfiguredOpenProperties.java
.../com/clx/performance/config/ConfiguredOpenProperties.java
+17
-0
RabbitKeyConstants.java
...java/com/clx/performance/constant/RabbitKeyConstants.java
+2
-1
SendOrderStatusNoticeSmsListener.java
...erformance/listener/SendOrderStatusNoticeSmsListener.java
+99
-0
没有找到文件。
performance-api/src/main/java/com/clx/performance/enums/vehiclewarn/VehicleWarnConfigEnum.java
浏览文件 @
56303aa7
...
@@ -74,11 +74,11 @@ public enum VehicleWarnConfigEnum {
...
@@ -74,11 +74,11 @@ public enum VehicleWarnConfigEnum {
@Getter
@Getter
@AllArgsConstructor
@AllArgsConstructor
public
enum
OrderWarnType
{
public
enum
OrderWarnType
{
PENDING_QUOTATION
(
1
,
"订单待报价"
),
PENDING_QUOTATION
(
0
,
"订单待报价"
),
ACCEPTED
(
2
,
"订单已承接"
),
ACCEPTED
(
3
,
"订单已承接"
),
COMPLETED
(
3
,
"订单完成"
),
COMPLETED
(
9
,
"订单完成"
),
FINISHED
(
4
,
"订单完结"
),
FINISHED
(
12
,
"订单完结"
),
CANCELED
(
5
,
"订单取消"
);
CANCELED
(
4
,
"订单取消"
);
private
final
Integer
code
;
private
final
Integer
code
;
private
final
String
msg
;
private
final
String
msg
;
...
...
performance-web/pom.xml
浏览文件 @
56303aa7
...
@@ -345,6 +345,11 @@
...
@@ -345,6 +345,11 @@
<artifactId>
tencentcloud-sdk-java-ocr
</artifactId>
<artifactId>
tencentcloud-sdk-java-ocr
</artifactId>
<version>
LATEST
</version>
<version>
LATEST
</version>
</dependency>
</dependency>
<dependency>
<groupId>
com.msl.message
</groupId>
<artifactId>
message-sdk
</artifactId>
</dependency>
</dependencies>
</dependencies>
...
...
performance-web/src/main/java/com/clx/performance/config/ConfiguredOpenClientConfig.java
0 → 100644
浏览文件 @
56303aa7
package
com
.
clx
.
performance
.
config
;
import
com.msl.common.open.ConfiguredOpenClient
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
java.util.Objects
;
@Configuration
public
class
ConfiguredOpenClientConfig
{
@Bean
public
ConfiguredOpenClient
configuredOpenClient
(
ConfiguredOpenProperties
properties
)
{
return
new
ConfiguredOpenClient
(
Objects
.
requireNonNull
(
properties
.
getGatewayUrl
()),
Objects
.
requireNonNull
(
properties
.
getAppId
()),
Objects
.
requireNonNull
(
properties
.
getAppKey
()));
}
}
performance-web/src/main/java/com/clx/performance/config/ConfiguredOpenProperties.java
0 → 100644
浏览文件 @
56303aa7
package
com
.
clx
.
performance
.
config
;
import
lombok.Getter
;
import
lombok.Setter
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.context.annotation.Configuration
;
@ConfigurationProperties
(
prefix
=
"message"
)
@Getter
@Setter
@Configuration
public
class
ConfiguredOpenProperties
{
private
String
gatewayUrl
;
private
String
appId
;
private
String
appKey
;
private
String
accessKey
;
}
performance-web/src/main/java/com/clx/performance/constant/RabbitKeyConstants.java
浏览文件 @
56303aa7
...
@@ -115,7 +115,8 @@ public class RabbitKeyConstants {
...
@@ -115,7 +115,8 @@ public class RabbitKeyConstants {
//同步履约进度表消息----订单部分
//同步履约进度表消息----订单部分
public
static
final
String
SYNC_PERFORMANCE_PROGRESS_FOR_ORDER_INFO_QUEUE
=
"clx_order.sync.performance.progress.for.order.info.queue"
;
public
static
final
String
SYNC_PERFORMANCE_PROGRESS_FOR_ORDER_INFO_QUEUE
=
"clx_order.sync.performance.progress.for.order.info.queue"
;
//发送订单状态通知短信queue
public
static
final
String
SEND_ORDER_STATUS_NOTICE_SMS_QUEUE
=
"clx_order.send.order.status.notice.sms.queue"
;
//货单同步履约进度表queue
//货单同步履约进度表queue
...
...
performance-web/src/main/java/com/clx/performance/listener/SendOrderStatusNoticeSmsListener.java
0 → 100644
浏览文件 @
56303aa7
package
com
.
clx
.
performance
.
listener
;
import
cn.hutool.core.lang.TypeReference
;
import
cn.hutool.json.JSONUtil
;
import
com.clx.open.sdk.callback.message.OrderInfoMessage
;
import
com.clx.performance.common.MqWrapper
;
import
com.clx.performance.config.ConfiguredOpenProperties
;
import
com.clx.performance.constant.RabbitKeyConstants
;
import
com.clx.performance.dao.vehiclewarn.VehicleWarnUserDao
;
import
com.clx.performance.model.vehiclewarn.VehicleWarnUser
;
import
com.msl.common.open.ConfiguredOpenClient
;
import
com.msl.common.result.Result
;
import
com.msl.message.sdk.action.MessageAction
;
import
com.msl.message.sms.api.sms.SmsMessage
;
import
com.msl.message.sms.api.sms.content.SmsMessageContentImpl
;
import
com.msl.message.sms.api.sms.recipient.SmsMessageRecipientImpl
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang.exception.ExceptionUtils
;
import
org.springframework.amqp.core.Message
;
import
org.springframework.amqp.rabbit.annotation.RabbitListener
;
import
org.springframework.stereotype.Component
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
static
com
.
clx
.
performance
.
enums
.
OrderEnum
.
Status
.*;
import
static
com
.
msl
.
message
.
sms
.
api
.
enums
.
RecipientTypeEnum
.
USER_MOBILE
;
@Slf4j
@Component
@AllArgsConstructor
public
class
SendOrderStatusNoticeSmsListener
{
private
static
final
Map
<
Integer
,
String
>
CODE_MAP
=
new
HashMap
<>();
private
final
ConfiguredOpenClient
configuredOpenClient
;
private
final
VehicleWarnUserDao
vehicleWarnUserDao
;
private
final
ConfiguredOpenProperties
properties
;
static
{
CODE_MAP
.
put
(
WAIT_QUOTATION
.
getCode
(),
"orderWaitQuotation"
);
CODE_MAP
.
put
(
PLATFORM_UNDERTAKING
.
getCode
(),
"orderPlatformUndertaking"
);
CODE_MAP
.
put
(
SUCCESS
.
getCode
(),
"orderSuccess"
);
CODE_MAP
.
put
(
COMPLETED
.
getCode
(),
"orderCompleted"
);
CODE_MAP
.
put
(
CANCELED
.
getCode
(),
"orderCanceled"
);
}
@RabbitListener
(
queues
=
RabbitKeyConstants
.
SEND_ORDER_STATUS_NOTICE_SMS_QUEUE
)
public
void
onMessage
(
Message
message
)
{
try
{
log
.
info
(
"监听到发送订单状态通知短信,消息内容{}"
,
new
String
(
message
.
getBody
()));
OrderInfoMessage
order
=
JSONUtil
.
toBean
(
new
String
(
message
.
getBody
()),
new
TypeReference
<
MqWrapper
<
OrderInfoMessage
>>()
{
},
false
).
getData
();
SmsMessage
smsMessage
=
new
SmsMessage
();
//设置消息内容
SmsMessageContentImpl
smsMessageContent
=
new
SmsMessageContentImpl
();
//模版code
smsMessageContent
.
setCode
(
CODE_MAP
.
get
(
order
.
getOrderStatus
()));
//模版参数
Map
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
put
(
"sendAddressShorter"
,
order
.
getSendAddressShorter
());
params
.
put
(
"receiveAddressShorter"
,
order
.
getReveiveAddressShorter
());
params
.
put
(
"orderNo"
,
order
.
getOrderNo
());
smsMessageContent
.
setParams
(
params
);
//设置消息接收人
SmsMessageRecipientImpl
smsMessageRecipient
=
new
SmsMessageRecipientImpl
();
smsMessageRecipient
.
setUserType
(
USER_MOBILE
.
getCode
());
smsMessageRecipient
.
setTargets
(
getTargets
(
order
.
getOrderStatus
()));
smsMessage
.
setContent
(
smsMessageContent
);
smsMessage
.
setRecipient
(
smsMessageRecipient
);
//从消息中心注册获取的通道key
smsMessage
.
setAccessKey
(
properties
.
getAccessKey
());
//向消息中心发送消息
Result
<
String
>
result
=
configuredOpenClient
.
doAction
(
new
MessageAction
(
smsMessage
));
}
catch
(
Exception
e
){
log
.
info
(
"监听到发送订单状态通知短信发生异常,异常原因:{}"
,
ExceptionUtils
.
getStackTrace
(
e
));
}
}
private
String
getTargets
(
int
code
){
return
vehicleWarnUserDao
.
listAllEnable
()
.
stream
()
.
filter
(
item
->
JSONUtil
.
toList
(
item
.
getOrderWarnTypeJson
(),
Integer
.
class
).
contains
(
code
))
.
map
(
VehicleWarnUser:
:
getMobile
)
.
collect
(
Collectors
.
joining
(
","
));
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论