Merge pull request '简化 Enum.json和CodeGen.json中的名称配置' (#5) from coolcalf/Admin.NET.Pro:main into main
Reviewed-on: http://101.43.53.74:3000/Admin.NET/Admin.NET.Pro/pulls/5
This commit is contained in:
commit
af240b3522
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
// 代码生成配置项-程序集名称集合
|
// 代码生成配置项-程序集名称集合
|
||||||
"CodeGen": {
|
"CodeGen": {
|
||||||
"EntityAssemblyNames": [ "Admin.NET.Core", "Admin.NET.Application" ],
|
"EntityAssemblyNames": [ "Admin." ],
|
||||||
"BaseEntityNames": [ "EntityTenantId", "EntityTenant", "EntityTenantBaseData", "EntityBaseData", "EntityBase", "EntityBaseId" ],
|
"BaseEntityNames": [ "EntityTenantId", "EntityTenant", "EntityTenantBaseData", "EntityBaseData", "EntityBase", "EntityBaseId" ],
|
||||||
"EntityBaseColumn": {
|
"EntityBaseColumn": {
|
||||||
"EntityTenantId": [ "Id", "TenantId" ],
|
"EntityTenantId": [ "Id", "TenantId" ],
|
||||||
|
|||||||
@ -3,6 +3,6 @@
|
|||||||
|
|
||||||
// 枚举实体所在程序集名称集合
|
// 枚举实体所在程序集名称集合
|
||||||
"Enum": {
|
"Enum": {
|
||||||
"EntityAssemblyNames": [ "Admin.NET.Core", "Admin.NET.Application", "Admin.NET.AppCMS" ]
|
"EntityAssemblyNames": [ "Admin." ]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -5,15 +5,33 @@
|
|||||||
"Aliyun": {
|
"Aliyun": {
|
||||||
"AccessKeyId": "",
|
"AccessKeyId": "",
|
||||||
"AccessKeySecret": "",
|
"AccessKeySecret": "",
|
||||||
"SignName": "AdminNET 平台", // 短信签名
|
"Templates": [
|
||||||
"TemplateCode": "" // 短信模板
|
{
|
||||||
|
"Id": "0",
|
||||||
|
"SignName": "AdminNET 平台",
|
||||||
|
"TemplateCode": "SMS_291005708",
|
||||||
|
"Content": "您的验证码为:${code},请勿泄露于他人!"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"Id": "1",
|
||||||
|
"SignName": "AdminNET 平台",
|
||||||
|
"TemplateCode": "SMS_462801755",
|
||||||
|
"Content": "注册成功,感谢您的注册,请妥善保管您的账户信息"
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"Tencentyun": {
|
"Tencentyun": {
|
||||||
"SdkAppId": "",
|
"SdkAppId": "",
|
||||||
"AccessKeyId": "",
|
"AccessKeyId": "",
|
||||||
"AccessKeySecret": "",
|
"AccessKeySecret": "",
|
||||||
"SignName": "AdminNET 平台", // 短信签名
|
"Templates": [
|
||||||
"TemplateCode": "" // 短信模板
|
{
|
||||||
|
"Id": "0",
|
||||||
|
"SignName": "AdminNET 平台",
|
||||||
|
"TemplateCode": "",
|
||||||
|
"Content": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -40,12 +40,27 @@ public sealed class SMSSettings
|
|||||||
public string AccessKeySecret { get; set; }
|
public string AccessKeySecret { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 短信签名
|
/// Templates
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string SignName { get; set; }
|
public List<SmsTemplate> Templates { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 短信模板
|
/// GetTemplate
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string TemplateCode { get; set; }
|
public SmsTemplate GetTemplate(string id = "0")
|
||||||
|
{
|
||||||
|
foreach (var template in Templates)
|
||||||
|
{
|
||||||
|
if (template.Id == id) { return template; }
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class SmsTemplate
|
||||||
|
{
|
||||||
|
public string Id { get; set; } = string.Empty;
|
||||||
|
public string SignName { get; set; }
|
||||||
|
public string TemplateCode { get; set; }
|
||||||
|
public string Content { get; set; }
|
||||||
}
|
}
|
||||||
@ -248,12 +248,17 @@ public class SysCodeGenService : IDynamicApiController, ITransient
|
|||||||
var types = new List<Type>();
|
var types = new List<Type>();
|
||||||
if (_codeGenOptions.EntityAssemblyNames != null)
|
if (_codeGenOptions.EntityAssemblyNames != null)
|
||||||
{
|
{
|
||||||
foreach (var assemblyName in _codeGenOptions.EntityAssemblyNames)
|
var assemblies = AppDomain.CurrentDomain.GetAssemblies();
|
||||||
|
foreach (var assembly in assemblies)
|
||||||
|
{
|
||||||
|
var assemblyName = assembly.GetName().Name;
|
||||||
|
if (_codeGenOptions.EntityAssemblyNames.Contains(assemblyName) || _codeGenOptions.EntityAssemblyNames.Any(name => assemblyName.Contains(name)))
|
||||||
{
|
{
|
||||||
Assembly asm = Assembly.Load(assemblyName);
|
Assembly asm = Assembly.Load(assemblyName);
|
||||||
types.AddRange(asm.GetExportedTypes().ToList());
|
types.AddRange(asm.GetExportedTypes().ToList());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
bool IsMyAttribute(Attribute[] o)
|
bool IsMyAttribute(Attribute[] o)
|
||||||
{
|
{
|
||||||
foreach (Attribute a in o)
|
foreach (Attribute a in o)
|
||||||
|
|||||||
@ -27,7 +27,10 @@ public class SysEnumService : IDynamicApiController, ITransient
|
|||||||
[DisplayName("获取所有枚举类型")]
|
[DisplayName("获取所有枚举类型")]
|
||||||
public List<EnumTypeOutput> GetEnumTypeList()
|
public List<EnumTypeOutput> GetEnumTypeList()
|
||||||
{
|
{
|
||||||
var enumTypeList = App.EffectiveTypes.Where(u => u.IsEnum && _enumOptions.EntityAssemblyNames.Contains(u.Assembly.GetName().Name)).OrderBy(u => u.Name).OrderBy(u => u.FullName).ToList();
|
var enumTypeList = App.EffectiveTypes.Where(t => t.IsEnum)
|
||||||
|
.Where(t => _enumOptions.EntityAssemblyNames.Contains(t.Assembly.GetName().Name) || _enumOptions.EntityAssemblyNames.Any(name => t.Assembly.GetName().Name.Contains(name)))
|
||||||
|
.OrderBy(u => u.Name).OrderBy(u => u.FullName)
|
||||||
|
.ToList();
|
||||||
|
|
||||||
var result = new List<EnumTypeOutput>();
|
var result = new List<EnumTypeOutput>();
|
||||||
foreach (var item in enumTypeList)
|
foreach (var item in enumTypeList)
|
||||||
|
|||||||
@ -8,6 +8,7 @@ using AlibabaCloud.SDK.Dysmsapi20170525.Models;
|
|||||||
using TencentCloud.Common;
|
using TencentCloud.Common;
|
||||||
using TencentCloud.Common.Profile;
|
using TencentCloud.Common.Profile;
|
||||||
using TencentCloud.Sms.V20190711;
|
using TencentCloud.Sms.V20190711;
|
||||||
|
using static SKIT.FlurlHttpClient.Wechat.Api.Models.ComponentTCBBatchCreateContainerServiceVersionRequest.Types;
|
||||||
|
|
||||||
namespace Admin.NET.Core.Service;
|
namespace Admin.NET.Core.Service;
|
||||||
|
|
||||||
@ -65,11 +66,12 @@ public class SysSmsService : IDynamicApiController, ITransient
|
|||||||
});
|
});
|
||||||
|
|
||||||
var client = CreateAliyunClient();
|
var client = CreateAliyunClient();
|
||||||
|
var template = _smsOptions.Aliyun.GetTemplate();
|
||||||
var sendSmsRequest = new SendSmsRequest
|
var sendSmsRequest = new SendSmsRequest
|
||||||
{
|
{
|
||||||
PhoneNumbers = phoneNumber, // 待发送手机号, 多个以逗号分隔
|
PhoneNumbers = phoneNumber, // 待发送手机号, 多个以逗号分隔
|
||||||
SignName = _smsOptions.Aliyun.SignName, // 短信签名
|
SignName = template.SignName, // 短信签名
|
||||||
TemplateCode = _smsOptions.Aliyun.TemplateCode, // 短信模板
|
TemplateCode = template.TemplateCode, // 短信模板
|
||||||
TemplateParam = templateParam.ToString(), // 模板中的变量替换JSON串
|
TemplateParam = templateParam.ToString(), // 模板中的变量替换JSON串
|
||||||
OutId = YitIdHelper.NextId().ToString()
|
OutId = YitIdHelper.NextId().ToString()
|
||||||
};
|
};
|
||||||
@ -104,11 +106,12 @@ public class SysSmsService : IDynamicApiController, ITransient
|
|||||||
throw Oops.Oh("短信内容不能为空");
|
throw Oops.Oh("短信内容不能为空");
|
||||||
|
|
||||||
var client = CreateAliyunClient();
|
var client = CreateAliyunClient();
|
||||||
|
var template = _smsOptions.Aliyun.GetTemplate();
|
||||||
var sendSmsRequest = new SendSmsRequest
|
var sendSmsRequest = new SendSmsRequest
|
||||||
{
|
{
|
||||||
PhoneNumbers = phoneNumber, // 待发送手机号, 多个以逗号分隔
|
PhoneNumbers = phoneNumber, // 待发送手机号, 多个以逗号分隔
|
||||||
SignName = _smsOptions.Aliyun.SignName, // 短信签名
|
SignName = template.SignName, // 短信签名
|
||||||
TemplateCode = _smsOptions.Aliyun.TemplateCode, // 短信模板
|
TemplateCode = template.TemplateCode, // 短信模板
|
||||||
TemplateParam = templateParam.ToString(), // 模板中的变量替换JSON串
|
TemplateParam = templateParam.ToString(), // 模板中的变量替换JSON串
|
||||||
OutId = YitIdHelper.NextId().ToString()
|
OutId = YitIdHelper.NextId().ToString()
|
||||||
};
|
};
|
||||||
@ -142,13 +145,14 @@ public class SysSmsService : IDynamicApiController, ITransient
|
|||||||
|
|
||||||
// 实例化要请求产品的client对象,clientProfile是可选的
|
// 实例化要请求产品的client对象,clientProfile是可选的
|
||||||
var client = new SmsClient(CreateTencentClient(), "ap-guangzhou", new ClientProfile() { HttpProfile = new HttpProfile() { Endpoint = ("sms.tencentcloudapi.com") } });
|
var client = new SmsClient(CreateTencentClient(), "ap-guangzhou", new ClientProfile() { HttpProfile = new HttpProfile() { Endpoint = ("sms.tencentcloudapi.com") } });
|
||||||
|
var template = _smsOptions.Tencentyun.GetTemplate();
|
||||||
// 实例化一个请求对象,每个接口都会对应一个request对象
|
// 实例化一个请求对象,每个接口都会对应一个request对象
|
||||||
var req = new TencentCloud.Sms.V20190711.Models.SendSmsRequest
|
var req = new TencentCloud.Sms.V20190711.Models.SendSmsRequest
|
||||||
{
|
{
|
||||||
PhoneNumberSet = new string[] { "+86" + phoneNumber.Trim(',') },
|
PhoneNumberSet = new string[] { "+86" + phoneNumber.Trim(',') },
|
||||||
SmsSdkAppid = _smsOptions.Tencentyun.SdkAppId,
|
SmsSdkAppid = _smsOptions.Tencentyun.SdkAppId,
|
||||||
Sign = _smsOptions.Tencentyun.SignName,
|
Sign = template.SignName,
|
||||||
TemplateID = _smsOptions.Tencentyun.TemplateCode,
|
TemplateID = template.TemplateCode,
|
||||||
TemplateParamSet = new string[] { verifyCode.ToString() }
|
TemplateParamSet = new string[] { verifyCode.ToString() }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user