public ApiResponse GenerarPedido(Factura factura) { try{ Pedido pedido = new Pedido(); using (var db = new TuyaContext()) { pedido.FacturaId = factura.FacturaId; //pedido.Clienteid = factura.ClienteId; //la fecha de entrega serian dos dias despues de la compra pedido.FechaEntrega = factura.FechaFactura.AddDays(2); //crear primero la factura db.Add(pedido); db.SaveChanges(); Console.WriteLine("Pedido generada. PedidoId: " + pedido.PedidoId); } return(new ApiResponse { code = 200, message = "" + pedido.PedidoId, type = "Pedido Generado" }); }catch (Exception e) { return(new ApiResponse { code = 201, message = e.Message, type = "Error" }); } }
public ApiResponse GenerarFactura(Factura factura) { try{ using (var db = new TuyaContext()) { //crear primero la factura db.Add(factura); db.SaveChanges(); int total = 0; //luego crear la descipcion de la factura foreach (DescripcionFactura descripcionFactura in factura.DescripcionFacturas) { //Obtener el producto Producto producto = db.Producto .Where(b => b.ProductoId == descripcionFactura.ProductoId) .FirstOrDefault(); descripcionFactura.FacturaId = factura.FacturaId; descripcionFactura.Subtotal = descripcionFactura.Cantidad * producto.Precio; total += descripcionFactura.Subtotal; //db.Add(descripcionFactura); } factura.TotalFactura = total; db.SaveChanges(); Console.WriteLine("Factura generada. FacturaId: " + factura.FacturaId); } return(new ApiResponse { code = 200, message = "" + factura.FacturaId, type = "Succes" }); }catch (Exception e) { return(new ApiResponse { code = 201, message = e.Message, type = "Error" }); } }