using ChapterX.Domain.Repositories; using MediatR; using Microsoft.Extensions.Logging; namespace ChapterX.Application.ReadingListItems.Commands { public class AddHandler : IRequestHandler { private readonly IReadingListItemsRepository _readingListItemsRepository; private readonly ILogger _logger; public AddHandler(IReadingListItemsRepository readingListItemsRepository, ILogger logger) { _readingListItemsRepository = readingListItemsRepository; _logger = logger; } public async Task Handle(AddRequest request, CancellationToken cancellationToken) { var readingListItems = new Domain.Entities.ReadingListItems { ListId = request.ReadingListId, StoryId = request.StoryId, AddedAt = DateTime.UtcNow }; await _readingListItemsRepository.AddAsync(readingListItems, cancellationToken); return new AddResponse(readingListItems.Id); } } }