😎代码优化

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> /// </summary>
public static class RedisQueue public static class RedisQueue
{ {
private static ICacheProvider _cacheProvider = App.GetRequiredService<ICacheProvider>(); private static readonly ICacheProvider _cacheProvider = App.GetRequiredService<ICacheProvider>();
/// <summary>创建Redis消息队列。默认消费一次指定消费者group时使用STREAM结构支持多消费组共享消息</summary> /// <summary>创建Redis消息队列。默认消费一次指定消费者group时使用STREAM结构支持多消费组共享消息</summary>
/// <remarks> /// <remarks>

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat-Zahlung", "微信支付": "WeChat-Zahlung",
"框架教程": "Framework-Anleitung", "框架教程": "Framework-Anleitung",
"行政区划": "Verwaltungseinheiten", "行政区划": "Verwaltungseinheiten",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"Abrufen Sie Informationen zur Rückerstattung", "查询退款信息": "Abrufen Sie Informationen zur Rückerstattung",
"获取支付订单详情(本地库)":"Erhalten Sie Details zum Zahlungsauftrag (Lokale Bibliothek)", "获取支付订单详情(本地库)": "Erhalten Sie Details zum Zahlungsauftrag (Lokale Bibliothek)",
"获取支付订单详情(微信接口)":"Erhalten Sie Details zum Zahlungsauftrag (WeChat-Schnittstelle)", "获取支付订单详情(微信接口)": "Erhalten Sie Details zum Zahlungsauftrag (WeChat-Schnittstelle)",
"退款申请":"Rückerstattung beantragen" "退款申请": "Rückerstattung beantragen"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat Pay", "微信支付": "WeChat Pay",
"框架教程": "Framework Tutorial", "框架教程": "Framework Tutorial",
"行政区划": "Administrative Divisions", "行政区划": "Administrative Divisions",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"Query Refund Info", "查询退款信息": "Query Refund Info",
"获取支付订单详情(本地库)":"Get Payment Order Details(Local Library)", "获取支付订单详情(本地库)": "Get Payment Order Details(Local Library)",
"获取支付订单详情(微信接口)":"Get Payment Order Details(WeChat Interface)", "获取支付订单详情(微信接口)": "Get Payment Order Details(WeChat Interface)",
"退款申请":"Refund Application" "退款申请": "Refund Application"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat Pago", "微信支付": "WeChat Pago",
"框架教程": "Tutorial Framework", "框架教程": "Tutorial Framework",
"行政区划": "Unidades Administrativas", "行政区划": "Unidades Administrativas",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"Consultar Información de Reembolso", "查询退款信息": "Consultar Información de Reembolso",
"获取支付订单详情(本地库)":"Obtener Detalles del Pedido de Pago (Biblioteca Local)", "获取支付订单详情(本地库)": "Obtener Detalles del Pedido de Pago (Biblioteca Local)",
"获取支付订单详情(微信接口)":"Obtener Detalles del Pedido de Pago (Interfaz de WeChat)", "获取支付订单详情(微信接口)": "Obtener Detalles del Pedido de Pago (Interfaz de WeChat)",
"退款申请":"Solicitud de Reembolso" "退款申请": "Solicitud de Reembolso"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat-maksu", "微信支付": "WeChat-maksu",
"框架教程": "Runko-opas", "框架教程": "Runko-opas",
"行政区划": "Hallituksen alueet", "行政区划": "Hallituksen alueet",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"Hae palautusmaksun tiedot", "查询退款信息": "Hae palautusmaksun tiedot",
"获取支付订单详情(本地库)":"Hae maksujärjestelmän tiedot (paikallinen kirjasto)", "获取支付订单详情(本地库)": "Hae maksujärjestelmän tiedot (paikallinen kirjasto)",
"获取支付订单详情(微信接口)":"Hae maksujärjestelmän tiedot (WeChat-liittymä)", "获取支付订单详情(微信接口)": "Hae maksujärjestelmän tiedot (WeChat-liittymä)",
"退款申请":"Palautusmaksun soveltaminen" "退款申请": "Palautusmaksun soveltaminen"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat Pay", "微信支付": "WeChat Pay",
"框架教程": "Framework Tutorial", "框架教程": "Framework Tutorial",
"行政区划": "Unités Administratives", "行政区划": "Unités Administratives",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"Consultation des informations de remboursement", "查询退款信息": "Consultation des informations de remboursement",
"获取支付订单详情(本地库)":"Obtenir les détails de la commande de paiement (bibliothèque locale)", "获取支付订单详情(本地库)": "Obtenir les détails de la commande de paiement (bibliothèque locale)",
"获取支付订单详情(微信接口)":"Obtenir les détails de la commande de paiement (interface WeChat)", "获取支付订单详情(微信接口)": "Obtenir les détails de la commande de paiement (interface WeChat)",
"退款申请":"Demande de remboursement" "退款申请": "Demande de remboursement"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat Pagamento", "微信支付": "WeChat Pagamento",
"框架教程": "Guida al Framework", "框架教程": "Guida al Framework",
"行政区划": "Unità Amministrative", "行政区划": "Unità Amministrative",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"Consultazione delle informazioni sul rimborso", "查询退款信息": "Consultazione delle informazioni sul rimborso",
"获取支付订单详情(本地库)":"Ottenere i dettagli dell'ordine di pagamento (libreria locale)", "获取支付订单详情(本地库)": "Ottenere i dettagli dell'ordine di pagamento (libreria locale)",
"获取支付订单详情(微信接口)":"Ottenere i dettagli dell'ordine di pagamento (interfaccia WeChat)", "获取支付订单详情(微信接口)": "Ottenere i dettagli dell'ordine di pagamento (interfaccia WeChat)",
"退款申请":"Richiesta di rimborso" "退款申请": "Richiesta di rimborso"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat Pay", "微信支付": "WeChat Pay",
"框架教程": "フレームワークチュートリアル", "框架教程": "フレームワークチュートリアル",
"行政区划": "行政区划", "行政区划": "行政区划",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"退款信息を確認する", "查询退款信息": "退款信息を確認する",
"获取支付订单详情(本地库)":"ローカルライブラリの支払い注文詳細を取得する", "获取支付订单详情(本地库)": "ローカルライブラリの支払い注文詳細を取得する",
"获取支付订单详情(微信接口)":"WeChatインターフェースの支払い注文詳細を取得する", "获取支付订单详情(微信接口)": "WeChatインターフェースの支払い注文詳細を取得する",
"退款申请":"返品申請" "退款申请": "返品申請"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat 결제", "微信支付": "WeChat 결제",
"框架教程": "프레임워크 튜토리얼", "框架教程": "프레임워크 튜토리얼",
"行政区划": "관리 지역", "行政区划": "관리 지역",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"환불 정보 조회", "查询退款信息": "환불 정보 조회",
"获取支付订单详情(本地库)":"로컬 라이브러리의 결제 주문 세부 정보 가져오기", "获取支付订单详情(本地库)": "로컬 라이브러리의 결제 주문 세부 정보 가져오기",
"获取支付订单详情(微信接口)":"WeChat 인터페이스의 결제 주문 세부 정보 가져오기", "获取支付订单详情(微信接口)": "WeChat 인터페이스의 결제 주문 세부 정보 가져오기",
"退款申请":"환불 신청" "退款申请": "환불 신청"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat-betaling", "微信支付": "WeChat-betaling",
"框架教程": "Framverksopplæring", "框架教程": "Framverksopplæring",
"行政区划": "Administrative enheter", "行政区划": "Administrative enheter",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"Søk etter informasjon om tilbakebetaling", "查询退款信息": "Søk etter informasjon om tilbakebetaling",
"获取支付订单详情(本地库)":"Hent detaljer om betalingsordre (lokal bibliotek)", "获取支付订单详情(本地库)": "Hent detaljer om betalingsordre (lokal bibliotek)",
"获取支付订单详情(微信接口)":"Hent detaljer om betalingsordre (WeChat-grensesnitt)", "获取支付订单详情(微信接口)": "Hent detaljer om betalingsordre (WeChat-grensesnitt)",
"退款申请":"Anmodning om tilbakebetaling" "退款申请": "Anmodning om tilbakebetaling"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat płatność", "微信支付": "WeChat płatność",
"框架教程": "Kurs frameworku", "框架教程": "Kurs frameworku",
"行政区划": "Administrative jednostki", "行政区划": "Administrative jednostki",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"Sprawdź informacje o zwrocie", "查询退款信息": "Sprawdź informacje o zwrocie",
"获取支付订单详情(本地库)":"Pobierz szczegóły zamówienia płatności (lokalna biblioteka)", "获取支付订单详情(本地库)": "Pobierz szczegóły zamówienia płatności (lokalna biblioteka)",
"获取支付订单详情(微信接口)":"Pobierz szczegóły zamówienia płatności (interfejs WeChat)", "获取支付订单详情(微信接口)": "Pobierz szczegóły zamówienia płatności (interfejs WeChat)",
"退款申请":"Wniosek o zwrot" "退款申请": "Wniosek o zwrot"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat Pagamento", "微信支付": "WeChat Pagamento",
"框架教程": "Tutorial Framework", "框架教程": "Tutorial Framework",
"行政区划": "Unidades Administrativas", "行政区划": "Unidades Administrativas",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"Consultar Informações de Reembolso", "查询退款信息": "Consultar Informações de Reembolso",
"获取支付订单详情(本地库)":"Obter Detalhes do Pedido de Pagamento (Biblioteca Local)", "获取支付订单详情(本地库)": "Obter Detalhes do Pedido de Pagamento (Biblioteca Local)",
"获取支付订单详情(微信接口)":"Obter Detalhes do Pedido de Pagamento (Interface WeChat)", "获取支付订单详情(微信接口)": "Obter Detalhes do Pedido de Pagamento (Interface WeChat)",
"退款申请":"Solicitação de Reembolso" "退款申请": "Solicitação de Reembolso"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "WeChat-платеж", "微信支付": "WeChat-платеж",
"框架教程": "Руководство по фреймворку", "框架教程": "Руководство по фреймворку",
"行政区划": "Административные единицы", "行政区划": "Административные единицы",
"微信支付下单Native":"WeChat Pay Native", "微信支付下单Native": "WeChat Pay Native",
"查询退款信息":"Проверка информации о возврате", "查询退款信息": "Проверка информации о возврате",
"获取支付订单详情(本地库)":"Получение деталей заказа оплаты (локальная библиотека)", "获取支付订单详情(本地库)": "Получение деталей заказа оплаты (локальная библиотека)",
"获取支付订单详情(微信接口)":"Получение деталей заказа оплаты (интерфейс WeChat)", "获取支付订单详情(微信接口)": "Получение деталей заказа оплаты (интерфейс WeChat)",
"退款申请":"Запрос на возврат" "退款申请": "Запрос на возврат"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "微信支付", "微信支付": "微信支付",
"框架教程": "框架教程", "框架教程": "框架教程",
"行政区划": "行政区划", "行政区划": "行政区划",
"微信支付下单Native":"微信支付下单Native", "微信支付下单Native": "微信支付下单Native",
"查询退款信息":"查询退款信息", "查询退款信息": "查询退款信息",
"获取支付订单详情(本地库)":"获取支付订单详情(本地库)", "获取支付订单详情(本地库)": "获取支付订单详情(本地库)",
"获取支付订单详情(微信接口)":"获取支付订单详情(微信接口)", "获取支付订单详情(微信接口)": "获取支付订单详情(微信接口)",
"退款申请":"退款申请" "退款申请": "退款申请"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "微信支付", "微信支付": "微信支付",
"框架教程": "框架教程", "框架教程": "框架教程",
"行政区划": "行政區劃", "行政区划": "行政區劃",
"微信支付下单Native":"微信支付下單Native", "微信支付下单Native": "微信支付下單Native",
"查询退款信息":"查詢退款信息", "查询退款信息": "查詢退款信息",
"获取支付订单详情(本地库)":"獲取支付訂單詳情(本地庫)", "获取支付订单详情(本地库)": "獲取支付訂單詳情(本地庫)",
"获取支付订单详情(微信接口)":"獲取支付訂單詳情(微信接口)", "获取支付订单详情(微信接口)": "獲取支付訂單詳情(微信接口)",
"退款申请":"退款申請" "退款申请": "退款申請"
} }

View File

@ -73,9 +73,9 @@
"微信支付": "微信支付", "微信支付": "微信支付",
"框架教程": "框架教程", "框架教程": "框架教程",
"行政区划": "行政區劃", "行政区划": "行政區劃",
"微信支付下单Native":"微信支付下單Native", "微信支付下单Native": "微信支付下單Native",
"查询退款信息":"查詢退款信息", "查询退款信息": "查詢退款信息",
"获取支付订单详情(本地库)":"獲取支付訂單詳情(本地庫)", "获取支付订单详情(本地库)": "獲取支付訂單詳情(本地庫)",
"获取支付订单详情(微信接口)":"獲取支付訂單詳情(微信接口)", "获取支付订单详情(微信接口)": "獲取支付訂單詳情(微信接口)",
"退款申请":"退款申請" "退款申请": "退款申請"
} }

View File

@ -10,7 +10,6 @@ using Aop.Api.Request;
using Aop.Api.Response; using Aop.Api.Response;
using Aop.Api.Util; using Aop.Api.Util;
using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Hosting;
using NewLife.Reflection;
namespace Admin.NET.Core.Service; namespace Admin.NET.Core.Service;
@ -86,7 +85,7 @@ public class SysAlipayService : IDynamicApiController, ITransient
var entity = _db.Queryable<SysAlipayAuthInfo>().First(u => var entity = _db.Queryable<SysAlipayAuthInfo>().First(u =>
(!string.IsNullOrWhiteSpace(u.UserId) && u.UserId == info.UserId) || (!string.IsNullOrWhiteSpace(u.UserId) && u.UserId == info.UserId) ||
(!string.IsNullOrWhiteSpace(u.OpenId) && u.OpenId == info.OpenId)) ?? new(); (!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.Age = int.Parse(info.Age);
entity.Gender = info.Gender switch entity.Gender = info.Gender switch
{ {

View File

@ -201,7 +201,7 @@ public class SysDatabaseService : IDynamicApiController, ITransient
[DisplayName("增加表")] [DisplayName("增加表")]
public void AddTable(DbTableInput input) 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); throw Oops.Oh(ErrorCodeEnum.db1000);
if (input.DbColumnInfoList.GroupBy(u => u.DbColumnName).Any(u => u.Count() > 1)) 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(); 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)) 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; namespace Admin.NET.Core.Service;
/// <summary> /// <summary>
@ -163,7 +160,7 @@ public class SysRegionService : IDynamicApiController, ITransient
var html = await _httpRemoteService.GetAsStringAsync("http://xzqh.mca.gov.cn/map"); var html = await _httpRemoteService.GetAsStringAsync("http://xzqh.mca.gov.cn/map");
var municipalityList = new List<string> { "北京", "天津", "上海", "重庆" }; 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) foreach (var dict1 in provList)
{ {
var list = new List<SysRegion>(); var list = new List<SysRegion>();
@ -229,7 +226,7 @@ public class SysRegionService : IDynamicApiController, ITransient
shengji = prov, shengji = prov,
diji = prefecture, 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 url = $"https://dmfw.mca.gov.cn/9095/xzqh/getList?code={code}&maxLevel=4";
var httpClient = new HttpClient(); var regionLevel0 = await _httpRemoteService.GetAsAsync<SysRegion>(url);
var regionLevel0 = await httpClient.GetAsync<SysRegion>(url);
if (regionLevel0 == null) return 0; if (regionLevel0 == null) return 0;
var areaList = new List<SysRegion>(); var areaList = new List<SysRegion>();
@ -380,8 +376,7 @@ public class SysRegionService : IDynamicApiController, ITransient
// 接口说明及地址http://lbs.tianditu.gov.cn/server/administrative2.html // 接口说明及地址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 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 _httpRemoteService.GetAsAsync<TiandituDto>(url);
var res = await httpClient.GetAsync<TiandituDto>(url);
if (res == null) return 0; if (res == null) return 0;
var parent = res.District[0]; var parent = res.District[0];

View File

@ -12,7 +12,7 @@ namespace Admin.NET.Core.Service;
[ApiDescriptionSettings(Order = 210, Description = "微信支付")] [ApiDescriptionSettings(Order = 210, Description = "微信支付")]
public class SysWechatPayService : IDynamicApiController, ITransient public class SysWechatPayService : IDynamicApiController, ITransient
{ {
private static readonly List<WechatPayEventInterceptor> wechatPayEventHandlers = new List<WechatPayEventInterceptor>(); private static readonly List<WechatPayEventInterceptor> wechatPayEventHandlers = [];
/// <summary> /// <summary>
/// 注册支付记录变化事件处理器 /// 注册支付记录变化事件处理器
@ -523,9 +523,8 @@ public class SysWechatPayService : IDynamicApiController, ITransient
{ {
var vechatPay = await _sysWechatPayRep.GetFirstAsync(u => u.OutTradeNumber == input.OutTradeNumber); var vechatPay = await _sysWechatPayRep.GetFirstAsync(u => u.OutTradeNumber == input.OutTradeNumber);
if (vechatPay == null) if (vechatPay == null)
{
throw Oops.Bah("没有相应支付记录"); throw Oops.Bah("没有相应支付记录");
}
var request = new CreateRefundDomesticRefundRequest() var request = new CreateRefundDomesticRefundRequest()
{ {
OutTradeNumber = input.OutTradeNumber, OutTradeNumber = input.OutTradeNumber,

View File

@ -166,6 +166,7 @@ public class SysWxOpenService : IDynamicApiController, ITransient
var wxUser = await _sysOAuthUserRep.GetFirstAsync(u => u.OpenId == input.OpenId); var wxUser = await _sysOAuthUserRep.GetFirstAsync(u => u.OpenId == input.OpenId);
if (wxUser == null) if (wxUser == null)
throw Oops.Oh("未找到用户信息设置失败"); throw Oops.Oh("未找到用户信息设置失败");
wxUser.NickName = input.NickName; wxUser.NickName = input.NickName;
await _sysOAuthUserRep.AsUpdateable(wxUser).IgnoreColumns(true).ExecuteCommandAsync(); await _sysOAuthUserRep.AsUpdateable(wxUser).IgnoreColumns(true).ExecuteCommandAsync();
return; return;
@ -182,6 +183,7 @@ public class SysWxOpenService : IDynamicApiController, ITransient
var wxUser = await _sysOAuthUserRep.GetFirstAsync(u => u.OpenId == openid); var wxUser = await _sysOAuthUserRep.GetFirstAsync(u => u.OpenId == openid);
if (wxUser == null) if (wxUser == null)
throw Oops.Oh("未找到用户信息获取失败"); throw Oops.Oh("未找到用户信息获取失败");
return new { nickName = wxUser.NickName, avator = wxUser.Avatar }; return new { nickName = wxUser.NickName, avator = wxUser.Avatar };
} }
@ -269,7 +271,7 @@ public class SysWxOpenService : IDynamicApiController, ITransient
[ApiDescriptionSettings(Name = "GenerateQRImage")] [ApiDescriptionSettings(Name = "GenerateQRImage")]
public async Task<GenerateQRImageOutput> GenerateQRImageAsync(GenerateQRImageInput input) public async Task<GenerateQRImageOutput> GenerateQRImageAsync(GenerateQRImageInput input)
{ {
GenerateQRImageOutput generateQRImageOutInput = new GenerateQRImageOutput(); GenerateQRImageOutput generateQRImageOutInput = new();
if (input.PagePath.IsNullOrEmpty()) if (input.PagePath.IsNullOrEmpty())
{ {
generateQRImageOutInput.Success = false; generateQRImageOutInput.Success = false;

View File

@ -22,7 +22,7 @@ public class SqlSugarDataExecuting
var items = _cache.Get<List<IDataExecuting>>(cacheKey); var items = _cache.Get<List<IDataExecuting>>(cacheKey);
if (items == null) 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)))); 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[] { //var lambda = DynamicExpressionParser.ParseLambda(new[] {
// Expression.Parameter(entityType, "u") }, typeof(bool), $"u.{nameof(EntityBaseData.CreateUserId)}=@0", userId); // 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); db.QueryFilter.AddTableFilter(entityType, lambda);
dataScopeFilter.TryAdd(entityType, lambda); dataScopeFilter.TryAdd(entityType, lambda);