[HttpPut("update/{id}")] //http:localhost:5000/order_products/update public async Task <IActionResult> UpdateOrder_Products(long id, Order_ProductsModel order_Products) { try { if (id != order_Products.IdOrder_Products) { return(BadRequest()); } else { dBContext.Entry(order_Products).State = EntityState.Modified; // await dBContext.SaveChangesAsync(); return(NoContent()); } } catch (Exception e) { bool existOrder_Products = dBContext.Orders_Products.Any(e => e.IdOrder_Products == id); if (!existOrder_Products) { return(NotFound()); } else { return(StatusCode(410)); } } }
[HttpPost("create")] //http:localhost:5000/order_products/create public async Task <ActionResult <Order_ProductsModel> > CreateOrder_Products(Order_ProductsModel order_products) { try { dBContext.Orders_Products.Add(order_products); await dBContext.SaveChangesAsync(); return(Ok(order_products)); } catch (Exception e) { return(StatusCode(410)); } }
[HttpPost("create")] //http:localhost:5000/order/create public async Task <ActionResult <OrderModel> > CreateOrder(Object order) { try { //Console.WriteLine(order.ToString()); var jsonString = order.ToString(); var dic = JsonConvert.DeserializeObject <Dictionary <string, object> >(jsonString); Console.WriteLine(dic["TotalValue"]); OrderModel newOrder = Parsing(dic); dBContext.Orders.Add(newOrder); await dBContext.SaveChangesAsync(); var idNewOrder = newOrder.IdOrder; var listDic = JsonConvert.DeserializeObject <List <Dictionary <string, string> > >(dic["Products"].ToString()); foreach (Dictionary <string, string> d in listDic) { Order_ProductsModel newOrder_Product = new Order_ProductsModel(); newOrder_Product.IdOrder = idNewOrder; newOrder_Product.IdProduct = long.Parse(d["IdProduct"]); newOrder_Product.QuantityBought = int.Parse(d["QuantityBought"]); ProductModel pm = await pC.GetProductModel(newOrder_Product.IdProduct); pm.QuantityAvailable -= newOrder_Product.QuantityBought; await pC.UpdateProduct(pm, newOrder_Product.IdProduct); dBContext.Orders_Products.Add(newOrder_Product); } await dBContext.SaveChangesAsync(); return(Ok(order)); } catch (Exception e) { return(StatusCode(410)); } }