Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
O
on-site-service
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
external
on-site-service
Commits
7802d19e
Commit
7802d19e
authored
Jul 28, 2022
by
shangtx
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 测试短信
parent
7e1a0bc7
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
131 additions
and
25 deletions
+131
-25
CommonSmsService.java
...va/com/onsiteservice/common/service/CommonSmsService.java
+113
-0
ServiceOrderService.java
.../com/onsiteservice/service/order/ServiceOrderService.java
+5
-12
application-third-service.yaml
constant/src/main/resources/application-third-service.yaml
+9
-4
OrderListener.java
...onsiteservice/miniapp/service/listener/OrderListener.java
+0
-1
ServiceOrderBizService.java
...service/miniapp/service/order/ServiceOrderBizService.java
+4
-8
No files found.
common/src/main/java/com/onsiteservice/common/service/CommonSmsService.java
0 → 100644
View file @
7802d19e
package
com
.
onsiteservice
.
common
.
service
;
import
com.onsiteservice.common.redis.RedisUtils
;
import
com.onsiteservice.util.aliyun.SmsUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
javax.annotation.Resource
;
/**
* 业务短信服务
*/
@Service
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Slf4j
public
class
CommonSmsService
{
@Value
(
"${spring.profiles.active}"
)
private
String
env
;
@Value
(
"${aliyun.sms.template-code.change-phone}"
)
private
String
changePhoneTmpCode
;
// 手机号换绑
@Value
(
"${aliyun.sms.template-code.payable}"
)
private
String
payableTmpCode
;
// 通知用户完成估价请支付
@Value
(
"${aliyun.sms.template-code.dispatched}"
)
private
String
dispatchedTmpCode
;
// 通知用户已经派单
@Value
(
"${aliyun.sms.template-code.redispatched}"
)
private
String
redispatchedTmpCode
;
// 通知用户已经重新派单
@Value
(
"${aliyun.sms.template-code.paid}"
)
private
String
paidTmpCode
;
// 手机号换绑
@Value
(
"${aliyun.sms.sign}"
)
private
String
sign
;
@Resource
private
SmsUtils
smsUtils
;
@Resource
private
RedisUtils
redisUtil
;
/***
* 禁用短信方法
*/
private
boolean
disableSms
()
{
// return "dev".equals(env);
return
false
;
}
/***
* 发送改变信息验证码
*/
public
void
sendChangeInfo
(
String
code
,
String
phone
)
{
if
(
StringUtils
.
isEmpty
(
phone
))
{
return
;
}
try
{
smsUtils
.
send
(
sign
,
changePhoneTmpCode
,
code
,
phone
);
}
catch
(
Exception
e
)
{
log
.
error
(
"发送短信错误"
,
e
);
}
}
public
void
payable
(
String
phone
)
{
if
(
StringUtils
.
isEmpty
(
phone
))
{
return
;
}
try
{
smsUtils
.
send
(
sign
,
payableTmpCode
,
null
,
phone
);
}
catch
(
Exception
e
)
{
log
.
error
(
"发送短信错误"
,
e
);
}
}
public
void
dispatched
(
String
phone
)
{
if
(
StringUtils
.
isEmpty
(
phone
))
{
return
;
}
try
{
smsUtils
.
send
(
sign
,
dispatchedTmpCode
,
null
,
phone
);
}
catch
(
Exception
e
)
{
log
.
error
(
"发送短信错误"
,
e
);
}
}
public
void
redispatched
(
String
phone
)
{
if
(
StringUtils
.
isEmpty
(
phone
))
{
return
;
}
try
{
smsUtils
.
send
(
sign
,
redispatchedTmpCode
,
null
,
phone
);
}
catch
(
Exception
e
)
{
log
.
error
(
"发送短信错误"
,
e
);
}
}
public
void
paid
(
String
phone
)
{
if
(
StringUtils
.
isEmpty
(
phone
))
{
return
;
}
try
{
smsUtils
.
send
(
sign
,
paidTmpCode
,
null
,
phone
);
}
catch
(
Exception
e
)
{
log
.
error
(
"发送短信错误"
,
e
);
}
}
}
common/src/main/java/com/onsiteservice/service/order/ServiceOrderService.java
View file @
7802d19e
...
...
@@ -5,6 +5,7 @@ import com.onsiteservice.common.order.dto.DispatchServiceOrderDTO;
import
com.onsiteservice.common.order.dto.FinishServiceOrderDTO
;
import
com.onsiteservice.common.order.dto.SendServiceOrderDTO
;
import
com.onsiteservice.common.order.dto.ValuationServiceOrderDTO
;
import
com.onsiteservice.common.service.CommonSmsService
;
import
com.onsiteservice.constant.constant.BizConstants
;
import
com.onsiteservice.constant.constant.SysParamConstants
;
import
com.onsiteservice.constant.enums.BizCodeEnum
;
...
...
@@ -50,10 +51,8 @@ public class ServiceOrderService extends AbstractMapper<ServiceOrder> {
/**
* 短信相关
*/
@Value
(
"${aliyun.sms.sign}"
)
private
String
sign
;
@Autowired
private
SmsUtils
smsUtils
;
private
CommonSmsService
commonSmsService
;
@Resource
private
ServiceOrderMapper
serviceOrderMapper
;
...
...
@@ -182,13 +181,11 @@ public class ServiceOrderService extends AbstractMapper<ServiceOrder> {
try
{
// 发短信
log
.
info
(
"sendOrder send msg to phone: {}"
,
serviceOrder
.
getPhone
());
// TODO 短信通知客户完成支付
smsUtils
.
send
(
sign
,
""
,
""
,
serviceOrder
.
getPhone
());
commonSmsService
.
payable
(
serviceOrder
.
getPhone
());
}
catch
(
Exception
e
)
{
log
.
error
(
"sendOrder error, "
,
e
);
}
// TODO 小程序通知客户完成支付
if
(
result
==
1
)
{
// 置估价员指派时间为失效
...
...
@@ -226,9 +223,7 @@ public class ServiceOrderService extends AbstractMapper<ServiceOrder> {
serviceOrder
.
setModifyBy
(
userId
);
int
result
=
serviceOrderMapper
.
updateByConditionSelective
(
serviceOrder
,
c
);
// TODO 短信 "您的订单已为您指派维修工,请保持手机畅通!"
// TODO 小程序通知 您的订单已为您指派维修工~~~
commonSmsService
.
dispatched
(
serviceOrder
.
getPhone
());
if
(
result
==
1
)
{
// 记录维修工时间
...
...
@@ -265,9 +260,7 @@ public class ServiceOrderService extends AbstractMapper<ServiceOrder> {
int
result
=
serviceWorkerAssignMapper
.
insertSelective
(
buildServiceWorkerAssign
(
dto
,
serviceOrder
,
userId
));
// TODO 短信 "您的订单已为您重新指派维修工,请保持手机畅通!"
// TODO 小程序通知 您的订单已为您重新指派维修工~~~
commonSmsService
.
redispatched
(
serviceOrder
.
getPhone
());
if
(
result
==
1
)
{
String
description
=
String
.
format
(
ServiceOrderStatusEnum
.
REDISPATCH
.
getMsg
(),
user
.
getName
(),
serviceWorker
.
getName
());
...
...
constant/src/main/resources/application-third-service.yaml
View file @
7802d19e
...
...
@@ -18,7 +18,12 @@ aliyun:
batch-size
:
500
# 批量发送个数
# 短信模板Code
template-code
:
# change-info: SMS_161475524 # 信息变更验证码
change-phone
:
SMS_161475524
# 修改手机号短信验证码
payable
:
SMS_226520016
# 通知用户完成估价请支付 开发环境使用项目开盘替代
dispatched
:
SMS_226505027
# 通知用户已经派单 开发环境使用项目动态替代
redispatched
:
SMS_226505027
# 通知用户已经重新派单 开发环境使用项目动态替代
paid
:
SMS_226505027
# 通知业务人员客户已完成支付 开发环境使用优惠券发放替代
# 微信配置
...
...
@@ -37,9 +42,9 @@ wx:
secret
:
d5e1aeae4fa4daa6328a6a02ddafb9ff
#公众号的appsecret
token
:
OfficialAccounts2020
#接口配置里的Token值
aesKey
:
EBFO9I8JUrLLYZxSd1QqO08LyheQX1ABGLeNylv8LoW
#接口配置里的EncodingAESKey值
# configs:
# - appId: wxceb5bea07decc398 #公众号的appid
# secret: d5e1aeae4fa4daa6328a6a02ddafb9ff #公众号的appsecret
# configs:
# - appId: wxceb5bea07decc398 #公众号的appid
# secret: d5e1aeae4fa4daa6328a6a02ddafb9ff #公众号的appsecret
# 微信支付
pay
:
appId
:
wx2c8a98f02c1a4258
#微信公众号或者小程序等的appid
...
...
mini-app/src/main/java/com/onsiteservice/miniapp/service/listener/OrderListener.java
View file @
7802d19e
...
...
@@ -17,7 +17,6 @@ public class OrderListener {
@Resource
private
WeixinMessageService
weixinMessageService
;
/* TODO 给用户发送订单的新情况 */
@RabbitHandler
public
void
notice
()
{
weixinMessageService
.
sendMsg
(
null
);
...
...
mini-app/src/main/java/com/onsiteservice/miniapp/service/order/ServiceOrderBizService.java
View file @
7802d19e
...
...
@@ -4,6 +4,7 @@ import com.github.pagehelper.PageHelper;
import
com.onsiteservice.common.order.vo.OrderPayVO
;
import
com.onsiteservice.common.order.vo.ServiceOrderLogVO
;
import
com.onsiteservice.common.order.vo.ServiceOrderVO
;
import
com.onsiteservice.common.service.CommonSmsService
;
import
com.onsiteservice.constant.constant.BizConstants
;
import
com.onsiteservice.constant.constant.SysConstants
;
import
com.onsiteservice.constant.constant.SysParamConstants
;
...
...
@@ -62,14 +63,11 @@ import java.util.stream.Collectors;
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
class
ServiceOrderBizService
extends
AbstractMapper
<
ServiceOrder
>
{
/**
* 短信相关
*/
@Value
(
"${aliyun.sms.sign}"
)
private
String
sign
;
@Autowired
private
SmsUtils
smsUtils
;
private
CommonSmsService
commonSmsService
;
@Resource
private
ServiceOrderMapper
serviceOrderMapper
;
...
...
@@ -220,8 +218,6 @@ public class ServiceOrderBizService extends AbstractMapper<ServiceOrder> {
recordComponent
.
recordServiceOrderImg
(
serviceOrder
,
dto
.
getUrls
());
// TODO 发短信通知所有客服
// 记录流程
if
(
result
==
1
)
{
recordComponent
.
recordProcess
(
serviceOrder
.
getId
(),
ServiceOrderStatusEnum
.
RESERVE
.
getStatus
(),
ServiceOrderStatusEnum
.
RESERVE
.
getMsg
(),
sourceEnum
,
null
,
null
,
null
);
...
...
@@ -252,7 +248,7 @@ public class ServiceOrderBizService extends AbstractMapper<ServiceOrder> {
var
sysUser
=
sysUserMapper
.
selectByPrimaryKey
(
orderLog
.
getHostId
());
if
(
StringUtils
.
isNotEmpty
(
sysUser
.
getPhone
()))
{
try
{
smsUtils
.
send
(
""
,
""
,
""
,
sysUser
.
getPhone
());
commonSmsService
.
paid
(
sysUser
.
getPhone
());
amqpTemplate
.
convertAndSend
(
SysConstants
.
Queue
.
ADMIN_ORDER
,
Pair
.
of
(
sysUser
.
getId
(),
1
));
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
...
...
@@ -263,7 +259,7 @@ public class ServiceOrderBizService extends AbstractMapper<ServiceOrder> {
if
(
ServiceOrderOpSourceEnum
.
MINI_APP
.
getId
().
equals
(
orderLog
.
getSource
()))
{
var
user
=
userMapper
.
selectByPrimaryKey
(
orderLog
.
getHostId
());
try
{
smsUtils
.
send
(
""
,
""
,
""
,
user
.
getPhone
());
commonSmsService
.
paid
(
user
.
getPhone
());
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
log
.
error
(
"订单{} 支付成功短信发送失败"
,
orderNo
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment