using Microsoft.AspNetCore.Mvc; using SqlSugar; using Volo.Abp.Application.Dtos; using Yi.Framework.CodeGun.Application.Contracts.Dtos.Template; using Yi.Framework.CodeGun.Application.Contracts.IServices; using Yi.Framework.CodeGun.Domain.Entities; using Yi.Framework.Ddd.Application; using Yi.Framework.SqlSugarCore.Abstractions; namespace Yi.Framework.CodeGun.Application.Services; public class TemplateService : YiCrudAppService, ITemplateService { private ISqlSugarRepository _repository; public TemplateService(ISqlSugarRepository repository) : base(repository) { _repository = repository; } public async override Task> GetListAsync([FromQuery] TemplateGetListInput input) { RefAsync total = 0; var entities = await _repository._DbQueryable.WhereIF(input.Name is not null, x => x.Name.Equals(input.Name!)) .ToPageListAsync(input.SkipCount, input.MaxResultCount, total); return new PagedResultDto { TotalCount = total, Items = await MapToGetListOutputDtosAsync(entities) }; } }