优化接口
This commit is contained in:
@@ -6207,6 +6207,20 @@
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.Services.SendMessageService.MergeProperties(System.Collections.Generic.List{WMS.Web.Core.Dto.SendDataDetailsDto})">
|
||||
<summary>
|
||||
合并属性
|
||||
</summary>
|
||||
<param details=""></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.Services.SendMessageService.MergeStrings(System.Collections.Generic.List{System.String})">
|
||||
<summary>
|
||||
按450个字开始分组
|
||||
</summary>
|
||||
<param name="strings"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:WMS.Web.Domain.Services.QiniuUploadService.Upload(System.String,System.IO.Stream,System.Boolean)">
|
||||
<summary>
|
||||
上传文件
|
||||
|
||||
@@ -265,7 +265,16 @@ namespace WMS.Web.Domain.Services
|
||||
if (!sms_result.IsSuccess && sms_result.Message == "isv.PARAM_LENGTH_LIMIT")
|
||||
{
|
||||
//分段发送:以字数480长度分段
|
||||
var contentParts = this.SplitContent(content, 480);
|
||||
//var contentParts = this.SplitContent(content, 480);
|
||||
//foreach (var partContent in contentParts)
|
||||
//{
|
||||
// this.SendSms(item.PhoneNumbers, partContent);
|
||||
//}
|
||||
|
||||
//1.先合并属性:规格和数量
|
||||
var materials= this.MergeProperties(item.Details);
|
||||
//2.按450个字分组成多个字符串集合
|
||||
var contentParts = this.MergeStrings(materials);
|
||||
foreach (var partContent in contentParts)
|
||||
{
|
||||
this.SendSms(item.PhoneNumbers, partContent);
|
||||
@@ -313,5 +322,51 @@ namespace WMS.Web.Domain.Services
|
||||
}
|
||||
return parts;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 合并属性
|
||||
/// </summary>
|
||||
/// <param details=""></param>
|
||||
/// <returns></returns>
|
||||
public List<string> MergeProperties(List<SendDataDetailsDto> details)
|
||||
{
|
||||
List<string> result = new List<string>();
|
||||
foreach (var det in details)
|
||||
{
|
||||
result.Add($"{det.Specifications} 数量{Convert.ToInt32(det.Qty)}");
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 按450个字开始分组
|
||||
/// </summary>
|
||||
/// <param name="strings"></param>
|
||||
/// <returns></returns>
|
||||
public List<string> MergeStrings(List<string> strings)
|
||||
{
|
||||
List<string> result = new List<string>();
|
||||
StringBuilder currentGroup = new StringBuilder();
|
||||
|
||||
foreach (var str in strings)
|
||||
{
|
||||
if (currentGroup.Length + str.Length > 450)
|
||||
{
|
||||
// 当前字符串超过50个字符,将当前分组加入结果集并重置currentGroup
|
||||
result.Add(currentGroup.ToString());
|
||||
currentGroup.Clear();
|
||||
}
|
||||
|
||||
// 添加当前字符串到当前分组
|
||||
currentGroup.Append(str);
|
||||
}
|
||||
|
||||
// 添加最后一个分组
|
||||
if (currentGroup.Length > 0)
|
||||
{
|
||||
result.Add(currentGroup.ToString());
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user