😎代码优化

This commit is contained in:
zuohuaijun 2025-03-02 18:10:53 +08:00
parent ac3d0bb6f6
commit 142a18289f
24 changed files with 1213 additions and 1218 deletions

View File

@ -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>

View File

@ -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
{

View File

@ -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))

View File

@ -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];

View File

@ -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,

View File

@ -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;

View File

@ -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))));

View File

@ -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);