using Infrastructure; using OpenAuth.App.BaseApp.Base; using OpenAuth.App.Interface; using OpenAuth.App.Request; using OpenAuth.Repository; using OpenAuth.Repository.Domain; using SqlSugar; namespace OpenAuth.App.ServiceApp.AI; public class AiAchievementServiceApp : SqlSugarBaseApp { public AiAchievementServiceApp(ISugarUnitOfWork unitWork, ISimpleClient repository, IAuth auth) : base(unitWork, repository, auth) { } public async Task>>> GetAiAchievementList(PageReq req) { RefAsync total = 0; var page = await Repository.AsQueryable() .WhereIF(!string.IsNullOrEmpty(req.key), x => x.Title.Contains(req.key)) .WhereIF(req.startTime != null, x => x.CreateTime >= req.startTime && x.CreateTime <= req.endTime) .OrderByDescending(x => x.CreateTime) .ToPageListAsync(req.page, req.limit, total); return new Response>>() { Result = new PageInfo>() { Items = page, Total = total.Value } }; } public async Task> GetAiAchievement(string id) { var result = await Repository.GetByIdAsync(id); if (result != null) { var images = await Repository .ChangeRepository>() .AsQueryable() .Where(x => x.AiAchievementId == id) .ToListAsync(); result.AiAchievementDetailList = images; } return new Response() { Result = result }; } }