예제 #1
0
        public NewProductResultSet CreateProduct(ProductDTO newProductDTO)
        {
            var currentUser            = ClaimsPrincipal.Current.Identity.Name;
            NewProductResultSet result = new NewProductResultSet();

            try
            {
                var newProductResultSet = _unitOfWork.ProductRepository.CreateNewProduct(newProductDTO);
                if (newProductResultSet != null && newProductResultSet.Status == Enums.UpdateStatus.Success)
                {
                    _unitOfWork.Commit();
                }
                result = newProductResultSet;
            }
            catch
            {
                result.Status = Enums.UpdateStatus.Error;
            }
            return(result);
        }
예제 #2
0
        public static NewProductResultSet CreateNewProduct(this IGenericRepository <Product> productRepository, ProductDTO newProductDTO)
        {
            NewProductResultSet result = new NewProductResultSet();

            try
            {
                var product = productRepository.Find(x => x.Name == newProductDTO.Name && x.Category == newProductDTO.Category).ToList();
                if (product.Count == 0)
                {
                    Product newProduct = new Product();
                    Mapper.Map <ProductDTO, Product>(newProductDTO, newProduct);
                    newProduct.CreatedOnUtc = DateTime.UtcNow;
                    newProduct.UpdatedOnUtc = DateTime.UtcNow;
                    newProduct.Size1        = newProductDTO.Size1;
                    newProduct.Size2        = newProductDTO.Size2;
                    newProduct.Size3        = newProductDTO.Size3;
                    newProduct.Size4        = newProductDTO.Size4;
                    newProduct.Size5        = newProductDTO.Size5;
                    newProduct.Size6        = newProductDTO.Size6;
                    productRepository.Add(newProduct);
                    result.NewProduct = newProduct;
                    result.Status     = Enums.UpdateStatus.Success;
                    return(result);
                }
                else
                {
                    result.Status = Enums.UpdateStatus.AlreadyExist;
                    return(result);
                }
            }
            catch
            {
                result.Status = Enums.UpdateStatus.Error;
                return(result);
            }
        }