Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-performance
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
姜武杰
clx-performance
Commits
60d017fb
提交
60d017fb
authored
6月 05, 2024
作者:
艾庆国
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
线路预警
上级
158c6f97
隐藏空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
112 行增加
和
1 行删除
+112
-1
ClxMessageConfig.java
...ain/java/com/clx/performance/config/ClxMessageConfig.java
+7
-0
LineWarnMqHandlerServiceImpl.java
...e/service/impl/linewarn/LineWarnMqHandlerServiceImpl.java
+99
-1
LineWarnMqHandlerService.java
...erformance/service/linewarn/LineWarnMqHandlerService.java
+6
-0
没有找到文件。
performance-web/src/main/java/com/clx/performance/config/ClxMessageConfig.java
浏览文件 @
60d017fb
...
@@ -29,4 +29,11 @@ public class ClxMessageConfig {
...
@@ -29,4 +29,11 @@ public class ClxMessageConfig {
//转账支付-还款单短信模板
//转账支付-还款单短信模板
private
String
repaymentTemplateCode
;
private
String
repaymentTemplateCode
;
//车辆报警短信模板
private
String
vehicleWarnTemplateCode
;
//车辆报警渠道id
private
Integer
vehicleWarnChannelId
;
//线路报警短信模板
private
String
lineWarnTemplateCode
;
}
}
performance-web/src/main/java/com/clx/performance/service/impl/linewarn/LineWarnMqHandlerServiceImpl.java
浏览文件 @
60d017fb
package
com
.
clx
.
performance
.
service
.
impl
.
linewarn
;
package
com
.
clx
.
performance
.
service
.
impl
.
linewarn
;
import
cn.hutool.json.JSONObject
;
import
com.alibaba.fastjson.JSON
;
import
com.clx.message.feign.ClxMessageOpenapiFeign
;
import
com.clx.message.req.message.AliSmsMessageReq
;
import
com.clx.message.req.message.ClinkMessageReq
;
import
com.clx.order.feign.OrderFeign
;
import
com.clx.order.feign.OrderFeign
;
import
com.clx.order.vo.feign.FeignOrderInfoVO
;
import
com.clx.order.vo.feign.FeignOrderInfoVO
;
import
com.clx.performance.config.ClxMessageConfig
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dao.OrderChildDao
;
import
com.clx.performance.dao.OrderGoodsDao
;
import
com.clx.performance.dao.OrderGoodsDao
;
import
com.clx.performance.dao.linewarn.LineWarnInfoDao
;
import
com.clx.performance.dao.linewarn.LineWarnOrderGoodsDao
;
import
com.clx.performance.dao.linewarn.LineWarnOrderGoodsDao
;
import
com.clx.performance.dao.vehiclewarn.VehicleWarnUserDao
;
import
com.clx.performance.dto.linewarn.LineWarnCommonInfoDTO
;
import
com.clx.performance.dto.linewarn.LineWarnCommonInfoDTO
;
import
com.clx.performance.enums.ResultEnum
;
import
com.clx.performance.enums.ResultEnum
;
import
com.clx.performance.extranal.user.OrderService
;
import
com.clx.performance.extranal.user.OrderService
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.model.OrderGoods
;
import
com.clx.performance.model.linewarn.LineWarnInfo
;
import
com.clx.performance.model.linewarn.LineWarnOrderGoods
;
import
com.clx.performance.model.linewarn.LineWarnOrderGoods
;
import
com.clx.performance.model.vehiclewarn.VehicleWarnUser
;
import
com.clx.performance.param.mq.linewarn.LineWarnLineWarnMqParam
;
import
com.clx.performance.param.mq.linewarn.LineWarnLineWarnMqParam
;
import
com.clx.performance.param.mq.linewarn.LineWarnNoticeMqParam
;
import
com.clx.performance.param.mq.linewarn.LineWarnNoticeMqParam
;
import
com.clx.performance.param.mq.linewarn.LineWarnOrderChildWarnMqParam
;
import
com.clx.performance.param.mq.linewarn.LineWarnOrderChildWarnMqParam
;
...
@@ -23,6 +33,8 @@ import org.springframework.stereotype.Service;
...
@@ -23,6 +33,8 @@ import org.springframework.stereotype.Service;
import
java.math.BigDecimal
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.List
;
@Slf4j
@Slf4j
@Service
@Service
...
@@ -32,6 +44,8 @@ public class LineWarnMqHandlerServiceImpl implements LineWarnMqHandlerService {
...
@@ -32,6 +44,8 @@ public class LineWarnMqHandlerServiceImpl implements LineWarnMqHandlerService {
private
static
final
int
DEFAULT_LOAD_UNLOAD_TIME
=
60
;
private
static
final
int
DEFAULT_LOAD_UNLOAD_TIME
=
60
;
private
static
final
int
DEFAULT_LOAD_UNLOAD_DAY
=
7
;
private
static
final
int
DEFAULT_LOAD_UNLOAD_DAY
=
7
;
@Autowired
private
ClxMessageConfig
clxMessageConfig
;
@Autowired
@Autowired
private
OrderGoodsDao
orderGoodsDao
;
private
OrderGoodsDao
orderGoodsDao
;
@Autowired
@Autowired
...
@@ -58,7 +72,12 @@ public class LineWarnMqHandlerServiceImpl implements LineWarnMqHandlerService {
...
@@ -58,7 +72,12 @@ public class LineWarnMqHandlerServiceImpl implements LineWarnMqHandlerService {
private
LineWarnLineWarnService
lineWarnLineWarnService
;
private
LineWarnLineWarnService
lineWarnLineWarnService
;
@Autowired
@Autowired
private
OrderChildDao
orderChildDao
;
private
OrderChildDao
orderChildDao
;
@Autowired
private
LineWarnInfoDao
lineWarnInfoDao
;
@Autowired
private
VehicleWarnUserDao
vehicleWarnUserDao
;
@Autowired
private
ClxMessageOpenapiFeign
clxMessageOpenapiFeign
;
@Override
@Override
...
@@ -155,6 +174,85 @@ public class LineWarnMqHandlerServiceImpl implements LineWarnMqHandlerService {
...
@@ -155,6 +174,85 @@ public class LineWarnMqHandlerServiceImpl implements LineWarnMqHandlerService {
@Override
@Override
public
void
notice
(
LineWarnNoticeMqParam
mq
)
{
public
void
notice
(
LineWarnNoticeMqParam
mq
)
{
LineWarnInfo
vehicleWarnInfo
=
lineWarnInfoDao
.
findById
(
mq
.
getInfoId
()).
orElseThrow
(
ResultEnum
.
DATA_NOT_FIND
);
List
<
String
>
mobileList
=
new
ArrayList
<>();
// 过滤需要通知的人员
List
<
VehicleWarnUser
>
list
=
vehicleWarnUserDao
.
listAllEnable
();
for
(
VehicleWarnUser
item
:
list
)
{
List
<
Integer
>
warnTypeList
=
JSON
.
parseArray
(
item
.
getLineWarnTypeJson
(),
Integer
.
class
);
if
(
warnTypeList
.
contains
(
vehicleWarnInfo
.
getWarnType
())){
mobileList
.
add
(
item
.
getMobile
());
}
}
if
(
mobileList
.
isEmpty
())
{
return
;}
log
.
info
(
"线路预警通知, id:{}, mobileList:{}"
,
vehicleWarnInfo
.
getId
(),
JSON
.
toJSONString
(
mobileList
));
if
(
vehicleWarnInfo
.
getWarnLevel
()
==
2
){
//2级短信
sendSms
(
mobileList
,
vehicleWarnInfo
.
getWarnName
()
,
vehicleWarnInfo
.
getOrderGoodsNo
());
}
else
if
(
vehicleWarnInfo
.
getWarnLevel
()
==
3
)
{
//3级外呼+短信
sendSms
(
mobileList
,
vehicleWarnInfo
.
getWarnName
()
,
vehicleWarnInfo
.
getOrderGoodsNo
());
sendClink
(
mobileList
,
vehicleWarnInfo
.
getWarnName
()
,
vehicleWarnInfo
.
getOrderGoodsNo
());
}
}
/**
* 发送预警短信
*/
@Override
public
void
sendSms
(
List
<
String
>
mobileList
,
String
warnName
,
String
orderGoodsNo
)
{
//触发${warnName}预警;货单${orderGoodsNo};请尽快核实情况。
AliSmsMessageReq
req
=
new
AliSmsMessageReq
();
req
.
setTemplateCode
(
clxMessageConfig
.
getLineWarnTemplateCode
());
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
set
(
"warnName"
,
warnName
);
jsonObject
.
set
(
"orderGoodsNo"
,
orderGoodsNo
);
req
.
setChannelId
(
clxMessageConfig
.
getChannelId
());
req
.
setAppId
(
clxMessageConfig
.
getAppId
().
toString
());
req
.
setContent
(
jsonObject
.
toString
());
req
.
setExpire
(
300L
);
for
(
String
mobile
:
mobileList
)
{
req
.
setMobile
(
mobile
);
clxMessageOpenapiFeign
.
sendAliSms
(
req
);
}
}
/**
* 发送预警外呼
*/
@Override
public
void
sendClink
(
List
<
String
>
mobileList
,
String
warnName
,
String
orderGoodsNo
)
{
//触发${warnName}预警;货单${orderGoodsNo};请尽快核实情况。
ClinkMessageReq
req
=
new
ClinkMessageReq
();
StringBuilder
sb
=
new
StringBuilder
();
sb
.
append
(
"触发"
);
sb
.
append
(
warnName
);
sb
.
append
(
"预警;货单"
);
sb
.
append
(
orderGoodsNo
);
sb
.
append
(
";请尽快核实情况"
);
String
content
=
sb
.
toString
();
req
.
setChannelId
(
clxMessageConfig
.
getVehicleWarnChannelId
());
req
.
setAppId
(
clxMessageConfig
.
getAppId
().
toString
());
req
.
setContent
(
content
);
for
(
String
mobile
:
mobileList
)
{
req
.
setMobile
(
mobile
);
clxMessageOpenapiFeign
.
sendClink
(
req
);
}
}
}
...
...
performance-web/src/main/java/com/clx/performance/service/linewarn/LineWarnMqHandlerService.java
浏览文件 @
60d017fb
...
@@ -5,6 +5,8 @@ import com.clx.performance.param.mq.linewarn.LineWarnNoticeMqParam;
...
@@ -5,6 +5,8 @@ import com.clx.performance.param.mq.linewarn.LineWarnNoticeMqParam;
import
com.clx.performance.param.mq.linewarn.LineWarnOrderChildWarnMqParam
;
import
com.clx.performance.param.mq.linewarn.LineWarnOrderChildWarnMqParam
;
import
com.clx.performance.param.mq.linewarn.LineWarnOrderGoodsAddMqParam
;
import
com.clx.performance.param.mq.linewarn.LineWarnOrderGoodsAddMqParam
;
import
java.util.List
;
public
interface
LineWarnMqHandlerService
{
public
interface
LineWarnMqHandlerService
{
void
orderGoodsAdd
(
LineWarnOrderGoodsAddMqParam
mq
);
void
orderGoodsAdd
(
LineWarnOrderGoodsAddMqParam
mq
);
...
@@ -13,5 +15,9 @@ public interface LineWarnMqHandlerService {
...
@@ -13,5 +15,9 @@ public interface LineWarnMqHandlerService {
void
notice
(
LineWarnNoticeMqParam
mq
);
void
notice
(
LineWarnNoticeMqParam
mq
);
void
sendSms
(
List
<
String
>
mobileList
,
String
warnName
,
String
orderGoodsNo
);
void
sendClink
(
List
<
String
>
mobileList
,
String
warnName
,
String
orderGoodsNo
);
void
orderChildWarn
(
LineWarnOrderChildWarnMqParam
mq
);
void
orderChildWarn
(
LineWarnOrderChildWarnMqParam
mq
);
}
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论