😎代码优化
This commit is contained in:
parent
ac3d0bb6f6
commit
142a18289f
@ -13,7 +13,7 @@ namespace Admin.NET.Core;
|
||||
/// </summary>
|
||||
public static class RedisQueue
|
||||
{
|
||||
private static ICacheProvider _cacheProvider = App.GetRequiredService<ICacheProvider>();
|
||||
private static readonly ICacheProvider _cacheProvider = App.GetRequiredService<ICacheProvider>();
|
||||
|
||||
/// <summary>创建Redis消息队列。默认消费一次,指定消费者group时使用STREAM结构,支持多消费组共享消息</summary>
|
||||
/// <remarks>
|
||||
|
||||
@ -10,7 +10,6 @@ using Aop.Api.Request;
|
||||
using Aop.Api.Response;
|
||||
using Aop.Api.Util;
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
using NewLife.Reflection;
|
||||
|
||||
namespace Admin.NET.Core.Service;
|
||||
|
||||
@ -86,7 +85,7 @@ public class SysAlipayService : IDynamicApiController, ITransient
|
||||
var entity = _db.Queryable<SysAlipayAuthInfo>().First(u =>
|
||||
(!string.IsNullOrWhiteSpace(u.UserId) && u.UserId == info.UserId) ||
|
||||
(!string.IsNullOrWhiteSpace(u.OpenId) && u.OpenId == info.OpenId)) ?? new();
|
||||
entity.Copy(info, excludes: [nameof(SysAlipayAuthInfo.Gender), nameof(SysAlipayAuthInfo.Age)]);
|
||||
//entity.Copy(info, excludes: [nameof(SysAlipayAuthInfo.Gender), nameof(SysAlipayAuthInfo.Age)]);
|
||||
entity.Age = int.Parse(info.Age);
|
||||
entity.Gender = info.Gender switch
|
||||
{
|
||||
|
||||
@ -201,7 +201,7 @@ public class SysDatabaseService : IDynamicApiController, ITransient
|
||||
[DisplayName("增加表")]
|
||||
public void AddTable(DbTableInput input)
|
||||
{
|
||||
if (input.DbColumnInfoList == null || !input.DbColumnInfoList.Any())
|
||||
if (input.DbColumnInfoList == null || input.DbColumnInfoList.Count == 0)
|
||||
throw Oops.Oh(ErrorCodeEnum.db1000);
|
||||
|
||||
if (input.DbColumnInfoList.GroupBy(u => u.DbColumnName).Any(u => u.Count() > 1))
|
||||
@ -382,7 +382,7 @@ public class SysDatabaseService : IDynamicApiController, ITransient
|
||||
var records = ((IEnumerable)await query.ToListAsync()).ToDynamicList();
|
||||
|
||||
// 过滤已存在的数据
|
||||
if (input.FilterExistingData && records.Any())
|
||||
if (input.FilterExistingData && records.Count != 0)
|
||||
{
|
||||
// 获取实体类型-所有种数据数据类型
|
||||
var entityTypes = App.EffectiveTypes.Where(u => !u.IsInterface && !u.IsAbstract && u.IsClass && u.IsDefined(typeof(SugarTable), false) && u.FullName.EndsWith("." + input.EntityName))
|
||||
|
||||
@ -4,9 +4,6 @@
|
||||
//
|
||||
// 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!
|
||||
|
||||
using NewLife.Remoting;
|
||||
using NewLife.Serialization;
|
||||
|
||||
namespace Admin.NET.Core.Service;
|
||||
|
||||
/// <summary>
|
||||
@ -163,7 +160,7 @@ public class SysRegionService : IDynamicApiController, ITransient
|
||||
|
||||
var html = await _httpRemoteService.GetAsStringAsync("http://xzqh.mca.gov.cn/map");
|
||||
var municipalityList = new List<string> { "北京", "天津", "上海", "重庆" };
|
||||
var provList = Regex.Match(html, @"(?<=var json = )(\[\{.*?\}\])(?=;)").Value.ToJsonEntity<List<Dictionary<string, string>>>();
|
||||
var provList = JSON.Deserialize<List<Dictionary<string, string>>>(Regex.Match(html, @"(?<=var json = )(\[\{.*?\}\])(?=;)").Value);
|
||||
foreach (var dict1 in provList)
|
||||
{
|
||||
var list = new List<SysRegion>();
|
||||
@ -229,7 +226,7 @@ public class SysRegionService : IDynamicApiController, ITransient
|
||||
shengji = prov,
|
||||
diji = prefecture,
|
||||
}));
|
||||
return json.ToJsonEntity<List<Dictionary<string, string>>>();
|
||||
return JSON.Deserialize<List<Dictionary<string, string>>>(json);
|
||||
}
|
||||
}
|
||||
|
||||
@ -284,8 +281,7 @@ public class SysRegionService : IDynamicApiController, ITransient
|
||||
{
|
||||
var url = $"https://dmfw.mca.gov.cn/9095/xzqh/getList?code={code}&maxLevel=4";
|
||||
|
||||
var httpClient = new HttpClient();
|
||||
var regionLevel0 = await httpClient.GetAsync<SysRegion>(url);
|
||||
var regionLevel0 = await _httpRemoteService.GetAsAsync<SysRegion>(url);
|
||||
if (regionLevel0 == null) return 0;
|
||||
|
||||
var areaList = new List<SysRegion>();
|
||||
@ -380,8 +376,7 @@ public class SysRegionService : IDynamicApiController, ITransient
|
||||
// 接口说明及地址:http://lbs.tianditu.gov.cn/server/administrative2.html
|
||||
var url = $"http://api.tianditu.gov.cn/v2/administrative?keyword={input.Keyword}&childLevel={input.ChildLevel}&extensions={input.Extensions}&tk={input.Tk}";
|
||||
|
||||
var httpClient = new HttpClient();
|
||||
var res = await httpClient.GetAsync<TiandituDto>(url);
|
||||
var res = await _httpRemoteService.GetAsAsync<TiandituDto>(url);
|
||||
if (res == null) return 0;
|
||||
|
||||
var parent = res.District[0];
|
||||
|
||||
@ -12,7 +12,7 @@ namespace Admin.NET.Core.Service;
|
||||
[ApiDescriptionSettings(Order = 210, Description = "微信支付")]
|
||||
public class SysWechatPayService : IDynamicApiController, ITransient
|
||||
{
|
||||
private static readonly List<WechatPayEventInterceptor> wechatPayEventHandlers = new List<WechatPayEventInterceptor>();
|
||||
private static readonly List<WechatPayEventInterceptor> wechatPayEventHandlers = [];
|
||||
|
||||
/// <summary>
|
||||
/// 注册支付记录变化事件处理器
|
||||
@ -523,9 +523,8 @@ public class SysWechatPayService : IDynamicApiController, ITransient
|
||||
{
|
||||
var vechatPay = await _sysWechatPayRep.GetFirstAsync(u => u.OutTradeNumber == input.OutTradeNumber);
|
||||
if (vechatPay == null)
|
||||
{
|
||||
throw Oops.Bah("没有相应支付记录");
|
||||
}
|
||||
|
||||
var request = new CreateRefundDomesticRefundRequest()
|
||||
{
|
||||
OutTradeNumber = input.OutTradeNumber,
|
||||
|
||||
@ -166,6 +166,7 @@ public class SysWxOpenService : IDynamicApiController, ITransient
|
||||
var wxUser = await _sysOAuthUserRep.GetFirstAsync(u => u.OpenId == input.OpenId);
|
||||
if (wxUser == null)
|
||||
throw Oops.Oh("未找到用户信息设置失败");
|
||||
|
||||
wxUser.NickName = input.NickName;
|
||||
await _sysOAuthUserRep.AsUpdateable(wxUser).IgnoreColumns(true).ExecuteCommandAsync();
|
||||
return;
|
||||
@ -182,6 +183,7 @@ public class SysWxOpenService : IDynamicApiController, ITransient
|
||||
var wxUser = await _sysOAuthUserRep.GetFirstAsync(u => u.OpenId == openid);
|
||||
if (wxUser == null)
|
||||
throw Oops.Oh("未找到用户信息获取失败");
|
||||
|
||||
return new { nickName = wxUser.NickName, avator = wxUser.Avatar };
|
||||
}
|
||||
|
||||
@ -269,7 +271,7 @@ public class SysWxOpenService : IDynamicApiController, ITransient
|
||||
[ApiDescriptionSettings(Name = "GenerateQRImage")]
|
||||
public async Task<GenerateQRImageOutput> GenerateQRImageAsync(GenerateQRImageInput input)
|
||||
{
|
||||
GenerateQRImageOutput generateQRImageOutInput = new GenerateQRImageOutput();
|
||||
GenerateQRImageOutput generateQRImageOutInput = new();
|
||||
if (input.PagePath.IsNullOrEmpty())
|
||||
{
|
||||
generateQRImageOutInput.Success = false;
|
||||
|
||||
@ -22,7 +22,7 @@ public class SqlSugarDataExecuting
|
||||
var items = _cache.Get<List<IDataExecuting>>(cacheKey);
|
||||
if (items == null)
|
||||
{
|
||||
items = new List<IDataExecuting>();
|
||||
items = [];
|
||||
|
||||
// 获取自定义实体过滤器
|
||||
var ides = App.EffectiveTypes.Where(u => !u.IsInterface && !u.IsAbstract && u.IsClass && u.GetInterfaces().Any(i => i.HasImplementedRawGeneric(typeof(IDataExecuting))));
|
||||
|
||||
@ -144,7 +144,7 @@ public static class SqlSugarFilter
|
||||
|
||||
//var lambda = DynamicExpressionParser.ParseLambda(new[] {
|
||||
// Expression.Parameter(entityType, "u") }, typeof(bool), $"u.{nameof(EntityBaseData.CreateUserId)}=@0", userId);
|
||||
var lambda = entityType.GetConditionExpression<OwnerUserAttribute>(new List<long> { long.Parse(userId) });
|
||||
var lambda = entityType.GetConditionExpression<OwnerUserAttribute>([long.Parse(userId)]);
|
||||
|
||||
db.QueryFilter.AddTableFilter(entityType, lambda);
|
||||
dataScopeFilter.TryAdd(entityType, lambda);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user