public async Task <ActionResult <TraCompras> > PostTraCompras(TraCompras traCompras) { _context.TraCompras.Add(traCompras); await _context.SaveChangesAsync(); return(CreatedAtAction("GetTraCompras", new { id = traCompras.Idcompra }, traCompras)); }
public async Task <IActionResult> PutTraCompras(int id, TraCompras traCompras) { if (id != traCompras.Idcompra) { return(BadRequest()); } _context.Entry(traCompras).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!TraComprasExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
// GET: Carrito /// <summary> /// Busca el carrito del usuario y retorna la vista de carrito con sus datos /// </summary> /// <param name="id">el id del cliente.</param> /// <returns></returns> public async Task <IActionResult> CarritoView(int?id) // id del cliente { // id = 1; if (id == null) { return(RedirectToAction("Error", new { error = "Error... \nUsuario nulo" })); } List <CarritoCompra> listaCarrito = new List <CarritoCompra>(); List <TraCompras> compras = new List <TraCompras>(); List <TraConceptoCompra> conceptoCompras = new List <TraConceptoCompra>(); TraCompras carrito = new TraCompras(); bool siHayCarrito = false; HttpClient cliente = _api.Initial(); HttpResponseMessage res; try { res = await cliente.GetAsync("api/MtoCatClientes"); } catch (Exception e) { return(RedirectToAction("Error", new { error = "No se puede conectar con el servidor :(" })); } if (res.IsSuccessStatusCode) { string result = res.Content.ReadAsStringAsync().Result; List <MtoCatCliente> clientes = JsonConvert.DeserializeObject <List <MtoCatCliente> >(result); bool clienteEncontrado = false; foreach (MtoCatCliente c in clientes) { if (c.Idcliente == id) { clienteEncontrado = true; } } if (!clienteEncontrado) { return(RedirectToAction("Error", new { error = "Error... \nUsuario Inexistente" })); } } try { res = await cliente.GetAsync("api/TraCompras/" + id); } catch (Exception e) { return(RedirectToAction("Error", new { error = "No se puede conectar con el servidor :(" })); } if (res.IsSuccessStatusCode) { string result = res.Content.ReadAsStringAsync().Result; compras = JsonConvert.DeserializeObject <List <TraCompras> >(result); foreach (var compra in compras) { if (!compra.Pagado) { carrito = compra; siHayCarrito = true; break; } } ViewData["carritoId"] = carrito.Idcompra; ViewData["clienteId"] = carrito.Idusuario; idCarrito = carrito.Idcompra; idCliente = carrito.Idusuario; if (siHayCarrito) { res = await cliente.GetAsync("api/TraConceptoCompras/" + carrito.Idcompra); result = res.Content.ReadAsStringAsync().Result; conceptoCompras = JsonConvert.DeserializeObject <List <TraConceptoCompra> >(result); List <MtoCatLibros> libros = new List <MtoCatLibros>(); foreach (TraConceptoCompra conceptoCompra in conceptoCompras) { res = await cliente.GetAsync("api/MtoCatLibros/" + conceptoCompra.Idlibro); result = res.Content.ReadAsStringAsync().Result; libros.Add(JsonConvert.DeserializeObject <MtoCatLibros>(result)); } for (int i = 0; i < conceptoCompras.Count; i++) { listaCarrito.Add(new CarritoCompra(conceptoCompras[i], libros[i])); } } else { return(RedirectToAction("Error", new { error = "Carrito vacio... \nAgrega algo en el!" })); } } else { return(RedirectToAction("Error", new { error = "Error al consultar el carrito :(" })); } return(View(listaCarrito)); }