public IActionResult TotalCost([FromBody] List <ProductOrder> productorder)

        {
            ProductResponseBase _response = _applicationPriceCalculatorService.CalculatePrice(_products, _promotions, productorder);

            return(Ok(_response));
        }
Exemplo n.º 2
0
        /// <summary>
        /// This methid responsible for Calculate Product Price
        /// </summary>
        /// <param name="Products"></param>
        /// <param name="Promotions"></param>
        /// <param name="Productsorders"></param>
        /// <returns></returns>
        public ProductResponseBase CalculatePrice(List <Product> Products, List <Promotion> Promotions, List <ProductOrder> Productsorders)
        {
            var     _reponse = new ProductResponseBase();
            decimal _totalCost;

            try
            {
                if (Products.Count == 0)
                {
                    _reponse.Success = false;
                    _reponse.Message = "Product master  can't be empty.";
                    return(_reponse);
                }

                if (Productsorders.Count == 0)
                {
                    _reponse.Success = false;
                    _reponse.Message = "Product cart can't be empty.";
                    return(_reponse);
                }



                _totalCost = _priceCalculatorService.GetTotalPrice(Products, Promotions, Productsorders);

                _reponse.Success   = _priceCalculatorService.Status;
                _reponse.Message   = _priceCalculatorService.Message;
                _reponse.TotalCost = _totalCost;
            }

            catch (Exception ex)
            {
                _reponse.Success = false;
                _reponse.Message = "Failed -  " + ex.Message;
            }


            return(_reponse);
        }