示例#1
0
 /// <summary>
 /// saving stock object
 /// </summary>
 /// <param name="stock">stock object</param>
 /// <param name="products">product object</param>
 /// <returns>saved stock</returns>
 public Domain.Stock.Model.Stock SaveStock(Domain.Stock.Model.Stock stock, IList <Domain.Products.Model.Product> products)
 {
     foreach (Domain.Products.Model.Product product in products)
     {
         Domain.Products.Model.Product selectedProduct =
             _breadShopDatabaseContext.Products.Find(product.ProductId);
         selectedProduct.Quantity  = selectedProduct.Quantity + product.Quantity;
         selectedProduct.UpdatedOn = DateTime.Now;
     }
     _breadShopDatabaseContext.Stocks.Add(stock);
     _breadShopDatabaseContext.SaveChanges();
     return(stock);
 }
示例#2
0
        /// <summary>
        /// saving the stock object.
        /// </summary>
        /// <param name="stockDto">stock object that want to save.</param>
        /// <returns>saved stock object</returns>
        public Domain.Stock.Model.Stock SaveStock(StockDto stockDto)
        {
            StockValidator validator   = new StockValidator();
            bool           isValid     = validator.IsPostValid(stockDto);
            StockMapper    modelMapper = new StockMapper();

            Domain.Stock.Model.Stock stockEntity = modelMapper.EntityFrom(stockDto);
            if (!isValid || stockEntity == null)
            {
                throw new NullReferenceException();
            }

            IList <Domain.Products.Model.Product> productEntities = modelMapper.ProductDtoFrom(stockDto);

            stockEntity.CreatedOn = DateTime.Now;
            Domain.Stock.Model.Stock result = this._stockRepository.SaveStock(stockEntity, productEntities);
            return(stockEntity);
        }