public Task <SharedWishModel> SetBought(int listId, int wishId, SetBoughtRequest request) { request.WishListId = listId; request.WishId = wishId; request.UserId = UserId; return(mediator.Send(request)); }
public SharedWishModel Handle(SetBoughtRequest message) { var wish = GetWish(message.WishId, message.WishListId); var userId = message.UserId; if (wish.BoughtByUserId != null && wish.BoughtByUserId != userId) { throw new FriendlyException(EventIds.AlreadyBought, "Wish has already been bought by someone else"); } if (message.IsBought) { wish.BoughtByUserId = userId; } else { wish.BoughtByUserId = null; } context.SaveChanges(); clientNotifier.RefreshListAsync(message.WishListId, message.UserId); return(mapper.Map <SharedWishModel>(wish)); }