Esempio n. 1
0
        public override Task <BasketResponse> RemoveFromBasket(BasketRequest request, ServerCallContext context)
        {
            if (request.ProductId.IsEmpty())
            {
                throw new Exception("Invalid product");
            }


            var product = _kernel.GetEntity <eShop.ProductEntities.Entities.Product>(externalId: Guid.Parse(request.ProductId));

            if (product.IsNull())
            {
                throw new Exception("Invalid product");
            }
            else
            {
                var basketProduct = _kernel.GetEntities <eShop.ProductEntities.Entities.Basket>()
                                    .FirstOrDefault(basket => basket.ProductId == product.Id && basket.CreatedById == _audience.EntityId());
                _kernel.DeleteEntity(basketProduct, saveChanges: true);
            }

            return(Task.FromResult(new BasketResponse
            {
                ProductId = product.ExternalId.ToString()
            }));
        }
Esempio n. 2
0
        public override Task <RetailerResponse> DeleteRetailer(RetailerItemRequest request, ServerCallContext context)
        {
            var user = _kernel.DeleteEntity <User>(externalId: ParseUserID(id: request.Id));

            ValidateUserType(user);
            context.Status = new Status(StatusCode.OK, string.Empty);
            return(Task.FromResult(MapToResponse(user: user)));
        }