Commit 7802d19e authored by shangtx's avatar shangtx

feat: 测试短信

parent 7e1a0bc7
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);
}
}
}
......@@ -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());
......
......@@ -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
......
......@@ -17,7 +17,6 @@ public class OrderListener {
@Resource
private WeixinMessageService weixinMessageService;
/* TODO 给用户发送订单的新情况 */
@RabbitHandler
public void notice() {
weixinMessageService.sendMsg(null);
......
......@@ -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);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment