From abdab25e6e1ad0a07564de9d178e688b4f98b292 Mon Sep 17 00:00:00 2001 From: aq982 Date: Thu, 27 Feb 2025 09:53:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9(=E6=9C=8D=E5=8A=A1=E7=AB=AF)?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E6=9C=8D=E5=8A=A1=E7=94=9F=E6=88=90=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1=E7=9A=84=E9=94=99=E8=AF=AF=EF=BC=8C=E6=9B=B4=E7=81=B5?= =?UTF-8?q?=E6=B4=BB=EF=BC=8C=E5=A2=9E=E5=8A=A0=E9=BB=98=E8=AE=A4=E7=BC=93?= =?UTF-8?q?=E5=AD=98=E5=92=8C=E4=BA=8B=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wwwroot/template/service_Service.cs.vm | 56 ++++++++++++------- 1 file changed, 35 insertions(+), 21 deletions(-) diff --git a/Admin.NET/Admin.NET.Web.Entry/wwwroot/template/service_Service.cs.vm b/Admin.NET/Admin.NET.Web.Entry/wwwroot/template/service_Service.cs.vm index 22a284d8..faafa5af 100644 --- a/Admin.NET/Admin.NET.Web.Entry/wwwroot/template/service_Service.cs.vm +++ b/Admin.NET/Admin.NET.Web.Entry/wwwroot/template/service_Service.cs.vm @@ -36,18 +36,28 @@ namespace @Model.NameSpace; [ApiDescriptionSettings(@(@Model.ProjectLastName)Const.GroupName, Name = "@(@Model.LowerClassName)", Order = 100)] public partial class @(@Model.ClassName)Service : IDynamicApiController, ITransient { + private readonly SysCacheService _sysCacheService;//默认CacheService + private readonly UserManager _userManager;//默认用户管理 + private readonly IEventPublisher _eventPublisher;//默认事件总线 private readonly SqlSugarRepository<@(@Model.ClassName)> _@(@Model.LowerClassName)Rep; @foreach (var column in Model.TableField){ if(@column.EffectType == "ForeignKey"||@column.EffectType == "ApiTreeSelector"){ + if(@column.FkEntityName != @Model.ClassName){ @:private readonly SqlSugarRepository<@(@column.FkEntityName)> _@(@column.LowerFkEntityName)Rep; + } } } private TypeAdapterConfig _typeAdapterConfig = TypeAdapterConfig.GlobalSettings; public @(@Model.ClassName)Service(SqlSugarRepository<@(@Model.ClassName)> @(@Model.LowerClassName)Rep + ,SysCacheService sysCacheService + , UserManager userManager + ,IEventPublisher eventPublisher @foreach (var column in Model.TableField){ if(@column.EffectType == "ForeignKey"||@column.EffectType == "ApiTreeSelector"){ + if(@column.FkEntityName != @Model.ClassName){ @:,SqlSugarRepository<@(@column.FkEntityName)> @(@column.LowerFkEntityName)Rep + } } } @@ -56,10 +66,15 @@ public partial class @(@Model.ClassName)Service : IDynamicApiController, ITransi _@(@Model.LowerClassName)Rep = @(@Model.LowerClassName)Rep; @foreach (var column in Model.TableField){ if(@column.EffectType == "ForeignKey"||@column.EffectType == "ApiTreeSelector"){ + if(@column.FkEntityName != @Model.ClassName){ @:_@(@column.LowerFkEntityName)Rep = @(@column.LowerFkEntityName)Rep; + } } } _typeAdapterConfig.ForType().IgnoreNullValues(true); + _sysCacheService = sysCacheService; + _eventPublisher = eventPublisher; + _userManager = userManager; } /// @@ -168,28 +183,28 @@ if (@column.ColumnKey == "True"){ return await @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input).OrderBuilder(input).ToListAsync(); } -@if(@Model.TableField.Any(x=>x.Statistical == "Y")){ - @:/// - @:/// 获取@(@Model.BusName) - @:/// - @:/// - @:/// - @:[ApiDescriptionSettings(Name = "GetTotalSum", Description = "获取@(@Model.BusName)统计", Order = 960), HttpPost] - @:[DisplayName("获取@(@Model.BusName)统计")] - @:public async Task> GetTotalSum(Page@(@Model.ClassName)Input input) - @:{ - @:// 单次查询同时获取统计值 - @:var querystats = @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input) + /// + /// 获取@(@Model.BusName) + /// + /// + /// + [ApiDescriptionSettings(Name = "GetTotalSum", Description = "获取@(@Model.BusName)统计", Order = 960), HttpPost] + [DisplayName("获取@(@Model.BusName)统计")] + public async Task> GetTotalSum(Page@(@Model.ClassName)Input input) + { + // 单次查询同时获取统计值 + var querystats = @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input) + @if(@Model.TableField.Any(x=>x.IsGroupBy == "Y")){ @foreach (var column in Model.TableField){ if (@column.IsGroupBy == "Y"){ @: .GroupByIF(input.GroupBy.Contains("@column.PropertyName"), u => u.@column.PropertyName) } } @: //.Having(it => SqlFunc.AggregateCount(it.Id) > 0)//聚合函数过滤 - @: .Select(it => new @(@Model.ClassName)Output - @: { - @: count = SqlFunc.AggregateCount(it.Id), - + } + .Select(it => new @(@Model.ClassName)Output + { + count = SqlFunc.AggregateCount(it.Id), @foreach (var column in Model.TableField){ if (@column.IsGroupBy == "Y"){ @: @(@column.PropertyName) = it.@(@column.PropertyName), @@ -198,10 +213,9 @@ if (@column.ColumnKey == "True"){ @: @(@column.PropertyName) = SqlFunc.AggregateSum(it.@(@column.PropertyName)) ?? 0, } } - @: }); - @:return await querystats.ToListAsync(); - @:} -} + }); + return await querystats.ToListAsync(); + } /// /// 根据输入参数获取@(@Model.BusName)统计 @@ -220,7 +234,7 @@ if (@column.ColumnKey == "True"){ public async Task> GetAggregTotalSum(Page@(@Model.ClassName)Input input) { - @:var query = @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input) + var query = @(@Model.ClassName)Mid.GetQuery(_@(@Model.LowerClassName)Rep, input) // 输入参数示例 //input = new Page@(@Model.ClassName)Input //{