Example #1
0
 //This method always convert to dollar
 // 1 dollar = 0,9 euro
 public static Product convertPriceFromUnit(Product product, CurrencyUnitEnum.Units productUnits)
 {
     switch (productUnits)
     {
         case CurrencyUnitEnum.Units.Euro:
             product.Price = Math.Round(product.Price*(decimal) (0.90),2);
             return product;
         default: //case productUnits is empty or dollar no convertion needed
             return product;
     }
 }
Example #2
0
        // PUT: api/Products/5
        public IHttpActionResult Put(int id, CurrencyUnitEnum.Units priceUnit,  [FromBody]Product product)
        {
            try
            {
                if (product == null)
                {
                    return BadRequest("Product cannot be null");
                }

                if (!ModelState.IsValid)
                {
                    return BadRequest(ModelState);
                }

                product = CurrencyUtils.convertPriceFromUnit(product, priceUnit);

                var updatedProduct = repository.Save(id, product);

                if (updatedProduct == null)
                {
                    return NotFound();
                }

                return Ok();
            }
            catch (Exception e)
            {
                return InternalServerError(e);
            }
        }