コード例 #1
0
ファイル: ProductsService.cs プロジェクト: boqli/Solution3
        public void AddProduct(ProductViewModel product)
        {
            var myProduct = _mapper.Map <Product>(product);

            myProduct.Category = null;
            _productsRepo.AddProduct(myProduct);
        }
コード例 #2
0
        public void AddProduct(ProductViewModel data)
        {
            var p = _mapper.Map <Product>(data);

            p.Category = null;
            _productRepo.AddProduct(p);
        }
        public async Task <IActionResult> CreateProductCollection([FromBody] IEnumerable <DTO.Create.Product> products)
        {
            try
            {
                //validate input and check categories

                IEnumerable <DAL.Entities.Product> productEntities = _mapper.Map <IEnumerable <DAL.Entities.Product> >(products);

                foreach (DAL.Entities.Product p in productEntities)
                {
                    _repo.AddProduct(p);
                }

                await _repo.SaveChangesAsync();

                IEnumerable <DAL.Entities.Product> productsToReturn = await _repo.GetProductsAsync(productEntities.Select(p => p.Id).ToList());

                string productIds = string.Join(",", productsToReturn.Select(p => p.Id));

                return(CreatedAtRoute("GetProducts", new { productIds }, productsToReturn));
            }
            catch (Exception ex)
            {
                _logger.LogCritical("error message here", ex);
                return(StatusCode(500, "error message here"));
            }
        }
コード例 #4
0
        public void AddProduct(ProductViewModel data)
        {
            //Product  >>>  ProductViewModel
            var prod = _mapper.Map <Product>(data);

            _productRepo.AddProduct(prod);
        }
コード例 #5
0
        private void OnAddCommandExecute()
        {
            IsDialogOpen = false;
            newProduct   = new Product
            {
                Id              = Guid.NewGuid(),
                Name            = NewProductName,
                Description     = NewProductDescription,
                ProductCategory = NewProductCategory
            };

            Products.Add(newProduct);
            _productsRepository.AddProduct(newProduct);
            _productsRepository.Save();
            RecipeProduct recipeProduct = new RecipeProduct
            {
                Id        = Guid.NewGuid(),
                RecipeId  = SelectedRecipe.Id,
                ProductId = newProduct.Id
            };

            SelectedRecipe.RecipeProducts.Add(recipeProduct);
            SelectedRecipeProductLookups.Add(new RecipeProductLookup
            {
                ProductId       = newProduct.Id,
                RecipeProductId = recipeProduct.Id,
                ProductName     = newProduct.Name
            });
        }
コード例 #6
0
        public async Task <IActionResult> CreateProduct(
            [FromBody] Models.ProductsForCreation productToCreate)
        {
            if (productToCreate == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(new UnprocessableEntityObjectResult(ModelState));
            }

            var productEntity = _mapper.Map <Products>(productToCreate);

            _productsRepository.AddProduct(productEntity);

            await _productsRepository.SaveChanges();

            await _productsRepository.GetProduct(productEntity.ProductId);

            return(Ok(CreatedAtRoute("GetProduct",
                                     new { productId = productEntity.ProductId },
                                     _mapper.Map <Models.Products>(productEntity))));
        }
コード例 #7
0
        public void AddProduct(ProductViewModel product)
        {
            //changing this using automapper later on

            //Converting from
            //ProductViewModel >> Product

            /*     Product newProduct = new Product()
             *   {
             *       Description = product.Description,
             *       Name = product.Name,
             *       Price = product.Price,
             *       CategoryId = product.Category.Id,
             *       ImageUrl = product.ImageUrl
             *   };
             *
             *   _productsRepo.AddProduct(newProduct);
             */

            var myProduct = _mapper.Map <Product>(product);

            myProduct.Category = null;

            _productsRepo.AddProduct(myProduct);
        }
コード例 #8
0
        public void AddProduct(ProductViewModel product)
        {
            //Changing this using automapper later on

            //Ctrl + .

            //Old Method

            /*
             * Product newProduct = new Product()
             * {
             *  Description = product.Description,
             *  Name = product.Name,
             *  Price = product.Price,
             *  CategoryId = product.Category.Id,
             *  ImageUrl = product.ImageUrl
             *
             * };
             */
            var myProduct = _mapper.Map <Product>(product);

            //This is done to avoid an error from the automapper, which is trying to insert a category
            myProduct.Category = null;
            _productsRepo.AddProduct(myProduct);
        }
コード例 #9
0
        public ActionResult <Product> CreateProduct(ProductForCreationDto product)
        {
            var productEntity = _mapper.Map <Entities.Product>(product);

            _productRepository.AddProduct(productEntity);
            _productRepository.Save();
            return(CreatedAtRoute("GetProduct", new { productId = productEntity.Id }, productEntity));
        }
コード例 #10
0
 public void AddProduct(ProductViewModel p)
 {
     /* Product pr = new Product()
      * {
      *   Name = p.Name,
      *   Price = p.Price
      * };*/
     productsRepository.AddProduct(_autoMapper.Map <Product>(p));
 }
コード例 #11
0
        public async Task <ActionResult> AddProduct(ProductCreateModel createProductModel)
        {
            var product = _mapper.Map <Product>(createProductModel);

            await _repository.AddProduct(product);

            await _repository.SaveChanges();

            return(Ok());
        }
コード例 #12
0
 public IActionResult AddProduct(Product product)
 {
     if (product != null)
     {
         return(Ok(_products.AddProduct(product)));
     }
     else
     {
         return(BadRequest("Please enter the product to add"));
     }
 }
コード例 #13
0
        public async Task <IActionResult> AddNewProduct(Product product)
        {
            if (ModelState.IsValid)
            {
                await _productsRepo.AddProduct(product);

                return(RedirectToAction(nameof(Index)));
            }

            return(PartialView("_CreateProductPartial", product));
        }
コード例 #14
0
        public void AddProduct(ProductViewModel data)
        {
            Product p = new Product();

            p.Description = data.Description;
            p.ImageUrl    = data.ImageUrl;
            p.Name        = data.Name;
            p.Price       = data.Price;
            p.CategoryId  = data.Category.Id;

            _productRepo.AddProduct(p);
        }
コード例 #15
0
        public async Task <ActionResult> Create([Bind(Include = "Id,Sku,Name,Price,Stock")] Product product)
        {
            if (ModelState.IsValid)
            {
                _productRepository.AddProduct(product);
                await _productRepository.SaveAsync();

                return(RedirectToAction("Index"));
            }

            return(View(product));
        }
コード例 #16
0
        public async Task <IActionResult> PostProduct(ATITransactionDto newTransaction)
        {
            var userId    = HttpContext.GetUserId();
            var isSuccess = await _repo.AddProduct(newTransaction, userId, newTransaction.Content.ProductId == -1);

            if (isSuccess)
            {
                return(RedirectToAction("Index", "Products"));
            }

            return(RedirectToAction("Error", "Home"));
        }
コード例 #17
0
        public Guid AddProduct(ProductDto dto)
        {
            var model = dto.ToDbModel();

            model.Id         = Guid.NewGuid();
            model.CreatedOn  = DateTime.Now;
            model.ModifiedOn = DateTime.Now;

            repository.AddProduct(model);

            return(model.Id);
        }
コード例 #18
0
        public void AddProduct(ProductViewModels product)
        {
            Product newProduct = new Product()
            {
                Desc       = product.Desc,
                Name       = product.Name,
                Price      = product.Price,
                CategoryID = product.category.id,
                ImageUrl   = product.ImageUrl
            };

            _productsRep.AddProduct(newProduct);
        }
コード例 #19
0
        public async Task <IActionResult> Post(ProductCreateInputModel model)
        {
            try
            {
                var response = await _repo.AddProduct(model);

                return(Ok(response));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
コード例 #20
0
 public void Post(Product product)
 {
     try
     {
         Product item = SanitizeInput(product.Id, product);
         _repository.AddProduct(item);
     }
     catch (Exception exception)
     {
         _logger.LogError(LoggingEvents.AddProduct, exception, "AddProduct Exception {id}", product.Id);
         throw;
     }
 }
コード例 #21
0
        public async Task <Guid> AddProduct(string Name, decimal Price)
        {
            Guid id      = Guid.NewGuid();
            var  product = await _productRepository.GetProductById(id);

            if (product != null)
            {
                throw new Exception($"Event with id: {id} already exists!");
            }

            product = new Product(id, Name, Price);
            await _productRepository.AddProduct(product);

            return(id);
        }
コード例 #22
0
 public HttpResponseMessage AddProduct([FromBody] ProductViewModel model)
 {
     try
     {
         var data = productrepository.AddProduct(model);
         if (data != null)
         {
             return(Request.CreateResponse(HttpStatusCode.OK, new { success = true, result = model, message = "The record Created Successfully" }));
         }
         return(Request.CreateResponse(HttpStatusCode.OK, new { success = false, message = "The was an error creating this record" }));
     }
     catch (Exception e)
     {
         return(Request.CreateResponse(HttpStatusCode.OK, new { success = false, message = $"there was an error creating this record {e.Message}" }));
     }
 }
コード例 #23
0
        public IActionResult AddProduct([FromBody] Product product)
        {
            if (product == null)
            {
                return(BadRequest());
            }
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }


            var NewCategory = _repository.AddProduct(product);

            return(CreatedAtAction("GetProducts", new { ProductId = product.ProductId }, product));
        }
コード例 #24
0
        public void AddProduct(ProductViewModel data)
        {
            //AutoMapper (NuGet Package)

            //ProductViewModel ====> Product

            Product p = new Product();

            p.Description = data.Description;
            p.ImageUrl    = data.ImageUrl;
            p.Name        = data.Name;
            p.Price       = data.Price;
            p.CategoryId  = data.Category.Id;

            _productRepo.AddProduct(p);
        }
コード例 #25
0
        public void AddProduct(ProductViewModel product)
        {
            /*
             *  Product newProduct = new Product()
             * {
             *   Description = product.Description,
             *   Name = product.Name,
             *   Price = product.Price,
             *   CategoryId = product.Category.Id,
             *   ImageUrl = product.ImageUrl
             * };
             *
             * _productsRepo.AddProduct(newProduct);*/

            _productsRepo.AddProduct(_mapper.Map <Product>(product));
        }
コード例 #26
0
        public void AddProduct(ProductViewModel product)
        {
            /*var newProduct = _mapper.Map<ProductViewModel, Product>(product);
             * _productsRepo.AddProduct(newProduct);*/

            Product newProduct = new Product()
            {
                Description = product.Description,
                Name        = product.Name,
                Price       = product.Price,
                CategoryId  = product.Category.Id,
                ImageUrl    = product.ImageUrl
            };

            _productsRepo.AddProduct(newProduct);
        }
コード例 #27
0
 public IActionResult Create(Product product)
 {
     var flag = false;
     if (ModelState.IsValid)
     {
         if (product != null)
         {
             
             flag = productService.AddProduct(product);
         }
         if (flag)
         {
             return RedirectToAction("Index");
         }
     }
     return View(product);
 }
コード例 #28
0
        public ActionResult <ProductDto> CreateProduct(ProductForCreationDto product)
        {
            if (product == null)
            {
                return(BadRequest());
            }

            var productEntity = _mapper.Map <Entities.Products>(product);

            _productRepository.AddProduct(productEntity);
            _productRepository.Save();

            var productToReturn = _mapper.Map <ProductDto>(productEntity);

            return(CreatedAtRoute("GetProduct",
                                  new { productId = productToReturn.productId },
                                  productToReturn));
        }
コード例 #29
0
        public async Task <ActionResult <Products> > CreateProduct([FromBody] Products product)
        {
            try
            {
                if (product == null)
                {
                    return(BadRequest());
                }

                var createdProduct = await productsRepository.AddProduct(product);

                return(CreatedAtAction(nameof(GetProduct), new { productId = createdProduct.ProductId }, createdProduct));
            }
            catch (Exception)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, "Error creating data"));
            }
        }
コード例 #30
0
        public void AddProduct(ProductViewModel product)
        {
            //changing this using automapper later on

            //Converting from
            //ProductViewModel >>> Product

            //Ctrl + .
            Product newProduct = new Product()
            {
                Description = product.Description,
                Name        = product.Name,
                Price       = product.Price,
                CategoryId  = product.Category.Id,
                ImageUrl    = product.ImageUrl
            };

            _productsRepo.AddProduct(newProduct);
        }