using AuthorBuddy.Web.Data; using LiteDB; namespace AuthorBuddy.Web.Services; public class ChatService : IChatService { private readonly ILiteDatabase _db; public ChatService(ILiteDatabase db) { _db = db; } public Task> GetHistoryAsync(int userId) { var col = _db.GetCollection("chats"); return Task.FromResult(col.Find(c => c.UserId == userId) .OrderByDescending(c => c.Timestamp) .Take(100) .Reverse() .ToList()); } public Task AddMessageAsync(ChatEntity message) { var col = _db.GetCollection("chats"); col.Insert(message); return Task.CompletedTask; } public Task ClearHistoryAsync(int userId) { var col = _db.GetCollection("chats"); col.DeleteMany(c => c.UserId == userId); return Task.CompletedTask; } }