public async Task <Unit> Handle(RemoveFridgeUserCommand request, CancellationToken cancellationToken)
        {
            var fridge = await _fridgeRepository.GetByIdAsync(request.FridgeId);

            fridge.RemoveUser(request.UserId);

            await _unitOfWork.CommitAsync(cancellationToken);

            return(Unit.Value);
        }
Esempio n. 2
0
        public async Task <Unit> Handle(UpdateFridgeCommand request, CancellationToken cancellationToken)
        {
            var fridge = await _fridgeRepository.GetByIdAsync(request.FridgeId);

            fridge.ChangeFridgeName(request.Name);
            fridge.ChangeFridgeDesc(request.Desc);

            await _unitOfWork.CommitAsync(cancellationToken);

            return(Unit.Value);
        }
        public async Task <Unit> Handle(ConsumeFridgeItemCommand command, CancellationToken cancellationToken)
        {
            var fridge = await _fridgeRepository.GetByIdAsync(command.FridgeId);

            var user = fridge.GetFridgeUser(command.UserId);

            user.ConsumeFridgeItem(command.FridgeItemId, command.AmountValue);

            await _unitOfWork.CommitAsync(cancellationToken);

            return(Unit.Value);
        }
        public async Task <Unit> Handle(AddFridgeUserCommand request, CancellationToken cancellationToken)
        {
            var fridge = await _fridgeRepository.GetByIdAsync(request.FridgeId);

            var user = new User(request.User.Name, request.User.Email);

            fridge.AddUser(user);

            await _unitOfWork.CommitAsync(cancellationToken);

            return(Unit.Value);
        }
        public async Task <Unit> Handle(UpdateFridgeUserCommand command, CancellationToken cancellationToken)
        {
            var fridge = await _fridgeRepository.GetByIdAsync(command.FridgeId);

            var user = fridge.GetFridgeUser(command.UserId);

            user.UpdateUserName(command.Name);

            await _unitOfWork.CommitAsync(cancellationToken);

            return(Unit.Value);
        }
Esempio n. 6
0
        public async Task <Unit> Handle(AddFridgeItemCommand command, CancellationToken cancellationToken)
        {
            var fridge = await _fridgeRepository.GetByIdAsync(command.FridgeId);

            var user = fridge.GetFridgeUser(command.UserId);

            var foodProduct = await _foodProductRepository.GetByIdAsync(command.FridgeItemDto.FoodProductId);

            var fridgeItem = new FridgeItem(
                foodProduct.FoodProductId,
                command.FridgeItemDto.Note,
                new AmountValue(
                    command.FridgeItemDto.Value,
                    command.FridgeItemDto.Unit)
                );

            user.AddFridgeItem(fridgeItem);

            await _unitOfWork.CommitAsync(cancellationToken);

            return(Unit.Value);
        }