jeepay支付系统
已完成了如下短信接口的对接工作:
计全短信官方服务
阿里云短信服务
若您有更多的短信服务 需要对接联调请参考以下文档进行二次开发,也可以联系官方技术收费开发(QQ:
13527422
)。
特别提醒: 该对接方案仅支持: V3.3.5及以上版本。
一、 接口准备工作:
1.1 > 接口起名:
按照jeepay项目的约定: 所有短信接口需全部小写,例如:aliyundy
- 阿里大于短信jeepaydx
- 计全短信
比方我们待对接的通道为 腾讯云短信,起名 tencentdx
, 以下文档按照tencentdx
进行说明。
1.2 > SQL准备:
INSERT INTO
t_sys_configVALUES ('tencentdxSmsConfigValue', '[腾讯云]短信配置', '[腾讯云]短信配置', 'smsConfig', '[腾讯云]短信配置', '{"accessKeyId":"","accessKeySecret":""}', 'text', 0, '2023-8-18 14:46:10');
注意: accessKeyId 等配置配置按照实际填写
1.3 > 接口API开发:
- 新建对应的配置Model
需继承: AbstractSmsConfig.java
位置放置在: jeepay-plus/jeepay-components-core/src/main/java/com/jeequan/jeepay/core/model/smsconfig/
可参考: AliyundySmsConfig
- AbstractSmsConfig中添加对应的获取实现:
com.jeequan.jeepay.core.model.smsconfig.AbstractSmsConfig#getSmsConfig
if(CS.SMS_PROVIDER_TYPE_API_ENUM.SMS_PROVIDE_KEY_ALIYUNDY.equals(smsProvideKey)){
return JSON.parseObject(configVal, AliyundySmsConfig.class);
}
//新增的判断
}
- 实现对应的发送短信接口
public interface ISmsHandler {
/**
* 发送短信验证码
* */
void sendVercode(SmsBizVercodeModel smsBizVercodeModel, AbstractSmsConfig smsConfig);
/**
* 发送自定义内容的短信
* */
void sendDiyContent(SmsBizDiyContentModel smsBizDiyContentModel, AbstractSmsConfig smsConfig);
/**
* 查询短信相关信息(smsConfig:短信配置, bizQueryType:业务类型)
* */
String querySmsInfo(AbstractSmsConfig smsConfig, String bizQueryType);
}
- 系统配置需要将新加入的通道进行处理下:
com.jeequan.jeepay.mgr.ctrl.config.SysConfigController#update
if(StringUtils.isNotEmpty(paramJSON.getString("mocktestSmsConfigValue"))){
// 没有需要加密的数据
updateMap.put("mocktestSmsConfigValue", paramJSON.getString("mocktestSmsConfigValue"));
}
// 新增的处理
1.2 > 前端页面的编写:
文件地址: \jeepay-plus-ui\jeepay-ui-manager\src\views\sys\config\component\SmsConfig.vue
搜索: jeepaydx , 将需要添加的 tencentdx 编码到文件即可。
以上就完成了 新短信通道的对接工作。