Ejemplo n.º 1
0
        public async Task <Unit> Handle(MakeBookAvailableCommand request, CancellationToken cancellationToken)
        {
            AvailableBook entity = new AvailableBook()
            {
                Id = request.BookId
            };
            await _dbContext.AvailableBooks.AddAsync(entity, cancellationToken);

            await _dbContext.SaveChangesAsync(cancellationToken);

            return(Unit.Value);
        }
Ejemplo n.º 2
0
 public virtual ReservedBook reserve(AvailableBook availableBook)
 {
     if (hasUserNotReachedLimitOfBooks())
     {
         ReservedBook reservedBook = new ReservedBook()
         {
             Id             = availableBook.Id,
             AssignedUserId = availableBook.UserId
         };
         reservedBooks.Add(reservedBook);
         return(reservedBook);
     }
     else
     {
         throw new TooManyBooksAssignedToUserException(id);
     }
 }