public JsonResult agregarProducto(ItemCarritomodel model) { ClienteClient servicio = new ClienteClient(); AdministradorClient admin = new AdministradorClient(); var _carrito = (Session["carritos"] as Dictionary <int, int?>)[model.IdTipo]; var _producto = admin.cargarProducto(new ProductoRequest { Id = model.IdProducto }); if (!_carrito.HasValue) { CarritoResponse _nuevoCarrito = servicio.nuevoCarrito(new CarritoRequest { IdTipo = model.IdTipo, Fecha = DateTime.Today, IdCliente = (Session["usuario"] as loginmodel).usrguid, IdEstatus = 6, IdPaqueteria = 7 }); (Session["carritos"] as Dictionary <int, int?>)[model.IdTipo] = _nuevoCarrito.Folio; } var _agregado = servicio.agregarACarrito(new ItemCarritoRequest { IdNota = (Session["carritos"] as Dictionary <int, int?>)[model.IdTipo].Value, Id = model.Id, IdProducto = model.IdProducto, PrecioMXN = _producto.PrecioMXN, PrecioUSD = _producto.PrecioUSD, Cantidad = model.Cantidad }); return(Json(new { data = _agregado }, JsonRequestBehavior.AllowGet)); }
private CarritoCompletoModel detalleNota(int id) { ClienteClient servicio = new ClienteClient(); AdministradorClient servicioAdmin = new AdministradorClient(); CarritoResponse response = servicio.verPedido(new CarritoRequest { Folio = id }); var responseCarrito = servicio.listarPedidos(new CarritoRequest { Folio = id, //IdEstatus = 6, IdCliente = (Session["usuario"] as loginmodel).usrguid }).Items.FirstOrDefault(i => i.Folio == id); var responseTipos = servicioAdmin.listarCatalogo(new CatalogoRequest { Id = 0, IdTipoCatalogo = 0 }); var responseEstatus = servicioAdmin.listarEstatus(new EstatusRequest { Id = 0, IdTipoEstatus = 0 }); var productos = servicioAdmin.listarProductos(new ProductoRequest { Id = 0 }); var responseCatalogo = servicioAdmin.listarCatalogo(new CatalogoRequest { Id = 0 }); CarritoCompletoModel model = new CarritoCompletoModel { Cliente = responseCarrito.IdCliente.ToString(), Estatus = (responseCarrito.IdEstatus != 0) ? responseEstatus.Items.FirstOrDefault(e => e.Id == responseCarrito.IdEstatus).Nombre : string.Empty, Fecha = responseCarrito.Fecha, FechaEnvio = responseCarrito.FechaEnvio, Folio = responseCarrito.Folio, Guia = string.IsNullOrEmpty(response.Guia) ? string.Empty : response.Guia, IdCliente = responseCarrito.IdCliente, IdEstatus = responseCarrito.IdEstatus, IdPaqueteria = responseCarrito.IdPaqueteria, IdTipo = responseCarrito.IdTipo, MontoMXN = responseCarrito.MontoMXN, MontoUSD = responseCarrito.MontoUSD, Paqueteria = (responseCarrito.IdPaqueteria != 0) ? responseCatalogo.Items.FirstOrDefault(c => c.Id == responseCarrito.IdPaqueteria).Nombre : string.Empty, SaldoMXN = responseCarrito.SaldoMXN, SaldoUSD = responseCarrito.SaldoUSD, Tipo = (responseCarrito.IdTipo != 0) ? responseTipos.Items.FirstOrDefault(t => t.Id == responseCarrito.IdTipo).Nombre : string.Empty }; model.Items.AddRange(response.Items.Select(i => new detallenotaModel { Cantidad = i.Cantidad, Id = i.Id, IdNota = i.IdNota, IdProducto = i.IdProducto, PrecioMXN = i.PrecioMXN, PrecioUSD = i.PrecioUSD, Producto = productos.Items.FirstOrDefault(p => p.Id == i.IdProducto).Nombre })); return(model); }
public CarritoResponse verPedido(CarritoRequest request) { DataAccess da = new DataAccess { CadenaConexion = ConfigurationManager.ConnectionStrings["jadetBD"].ConnectionString }; var _response = da.listarDetalle(0, request.Folio, 0); var _pedido = da.listarNota(new Nota { Folio = request.Folio }).FirstOrDefault(); CarritoResponse respuesta = new CarritoResponse { ErrorMensaje = "No implementado", ErrorNumero = 1, Fecha = _pedido.Fecha, FechaEnvio = _pedido.FechaEnvio, Folio = _pedido.Folio, Guia = _pedido.Guia, IdCliente = _pedido.IdCliente, IdEstatus = _pedido.IdEstatus, IdPaqueteria = _pedido.IdPaqueteria, IdTipo = _pedido.IdTipo, MontoMXN = _pedido.MontoMXN, MontoUSD = _pedido.MontoUSD, SaldoMXN = _pedido.SaldoMXN, SaldoUSD = _pedido.SaldoUSD }; respuesta.Items.AddRange(_response.Select(i => new ItemCarritoResponse { Id = i.Id, Cantidad = i.Cantidad, IdNota = i.IdNota, IdProducto = i.IdProducto, PrecioMXN = i.PrecioMXN, PrecioUSD = i.PrecioUSD })); return(respuesta); }