diff --git a/CoreCms.Net.IServices/Message/ICoreCmsSmsServices.cs b/CoreCms.Net.IServices/Message/ICoreCmsSmsServices.cs
index 3f17ddb0..9ae26667 100644
--- a/CoreCms.Net.IServices/Message/ICoreCmsSmsServices.cs
+++ b/CoreCms.Net.IServices/Message/ICoreCmsSmsServices.cs
@@ -44,7 +44,7 @@ namespace CoreCms.Net.IServices
///
///
///
- Task SendSms(string mobile, string contentBody, SmsOptions smsOptions);
+ Task SendSms(string mobile, string contentBody, SmsOptions smsOptions);
///
/// 校验短信验证码
diff --git a/CoreCms.Net.Model/CoreCms.Net.Model.xml b/CoreCms.Net.Model/CoreCms.Net.Model.xml
index 01e1b933..5df591ae 100644
--- a/CoreCms.Net.Model/CoreCms.Net.Model.xml
+++ b/CoreCms.Net.Model/CoreCms.Net.Model.xml
@@ -12729,6 +12729,41 @@
短信签名
+
+
+ 短信发送回调结果
+
+
+
+
+ 调用结果(调用结果:success为成功,faild为失败)
+
+
+
+
+ 调用信息(调用成功返回OK,失败显示失败原因,具体原因见下表)
+
+
+
+
+ 账户余额
+
+
+
+
+ 任务序号(每次任务对应唯一的任务id)
+
+
+
+
+ 号码个数(发送号码的个数)
+
+
+
+
+ 是否成功
+
+
LayUIAdmin后端UI回调Json实体
diff --git a/CoreCms.Net.Model/ViewModels/Sms/SMSOptions.cs b/CoreCms.Net.Model/ViewModels/Sms/SMSOptions.cs
index f692ac25..0b557372 100644
--- a/CoreCms.Net.Model/ViewModels/Sms/SMSOptions.cs
+++ b/CoreCms.Net.Model/ViewModels/Sms/SMSOptions.cs
@@ -46,4 +46,42 @@ namespace CoreCms.Net.Model.ViewModels.Sms
///
public string Signature { get; set; }
}
+
+ ///
+ /// 短信发送回调结果
+ ///
+ public class SMSReturnData
+ {
+ ///
+ /// 调用结果(调用结果:success为成功,faild为失败)
+ ///
+ public string ReturnStatus { set; get; }
+
+ ///
+ /// 调用信息(调用成功返回OK,失败显示失败原因,具体原因见下表)
+ ///
+ public string Message { set; get; }
+
+ ///
+ /// 账户余额
+ ///
+ public int RemainPoint { set; get; }
+
+ ///
+ /// 任务序号(每次任务对应唯一的任务id)
+ ///
+ public int TaskID { set; get; }
+
+ ///
+ /// 号码个数(发送号码的个数)
+ ///
+ public int SuccessCounts { set; get; }
+
+ ///
+ /// 是否成功
+ ///
+ public bool IsSuccess { get; set; } = false;
+ }
+
+
}
\ No newline at end of file
diff --git a/CoreCms.Net.Services/Message/CoreCmsSmsServices.cs b/CoreCms.Net.Services/Message/CoreCmsSmsServices.cs
index eb8489da..94e23ff8 100644
--- a/CoreCms.Net.Services/Message/CoreCmsSmsServices.cs
+++ b/CoreCms.Net.Services/Message/CoreCmsSmsServices.cs
@@ -26,6 +26,7 @@ using Microsoft.Extensions.Options;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using SqlSugar;
+using static SKIT.FlurlHttpClient.Wechat.Api.Models.WxaApiUserLogSearchResponse.Types.Data.Types.RealtimeLog.Types;
namespace CoreCms.Net.Services
@@ -108,10 +109,10 @@ namespace CoreCms.Net.Services
await _dal.InsertAsync(oldLog);
}
- var str = await SendSms(oldLog.mobile, oldLog.contentBody, smsOptions);
- jm.status = true;
- //jm.data = str;
- jm.msg = "短信发送成功";
+ var result = await SendSms(oldLog.mobile, oldLog.contentBody, smsOptions);
+
+ jm.status = result.IsSuccess;
+ jm.msg = result.IsSuccess ? "发送成功" : result.Message;
return jm;
}
@@ -155,24 +156,34 @@ namespace CoreCms.Net.Services
///
///
/// 配置文件
- public async Task SendSms(string mobile, string contentBody, SmsOptions smsOptions)
+ public async Task SendSms(string mobile, string contentBody, SmsOptions smsOptions)
{
if (smsOptions.Enabled)
{
- var str = await smsOptions.ApiUrl.PostUrlEncodedAsync(new
+ var result = await smsOptions.ApiUrl.PostUrlEncodedAsync(new
{
action = "send",
userid = smsOptions.UserId,
account = smsOptions.Account,
password = smsOptions.Password,
- mobile = mobile,
+ mobile,
content = "【" + smsOptions.Signature + "】" + contentBody,
- }).ReceiveString();
- return str;
+ rt = "json"
+ }).ReceiveJson();
+ result.IsSuccess = result.ReturnStatus == "success";
+ return result;
}
else
{
- return "短信接口未开启";
+ var result = new SMSReturnData()
+ {
+ ReturnStatus = "faild",
+ Message = "短信功能未开启",
+ RemainPoint = 0,
+ TaskID = 0,
+ SuccessCounts = 0
+ };
+ return result;
}
}
#endregion
@@ -354,11 +365,10 @@ namespace CoreCms.Net.Services
await _dal.InsertAsync(oldLog);
- var result = SendSms(oldLog.mobile, oldLog.contentBody, smsOptions);
+ var result = await SendSms(oldLog.mobile, oldLog.contentBody, smsOptions);
- jm.status = true;
- jm.msg = "发送成功";
- //jm.data = result;
+ jm.status = result.IsSuccess;
+ jm.msg = result.IsSuccess ? "发送成功" : result.Message;
return jm;
}