protected void CargarGridPedidos() { DataTable dtPedidos = new DataTable(); dtPedidos.Columns.Add(new DataColumn("Numero")); dtPedidos.Columns.Add(new DataColumn("Fecha")); dtPedidos.Columns.Add(new DataColumn("PrecioTotal")); dtPedidos.Columns.Add(new DataColumn("Enviado")); dtPedidos.Columns.Add(new DataColumn("AltEnviado")); List <Pedido> pedidos = LogicaPedido.ListarPedidosPorUsuario(((Usuario)Session["Usuario"]).Cedula); //lista enviados y pendientes en base de datos foreach (Pedido p in pedidos) { DataRow drwPedido = dtPedidos.NewRow(); drwPedido["Numero"] = p.Numero; drwPedido["Fecha"] = p.Fecha; drwPedido["PrecioTotal"] = p.PrecioTotal; drwPedido["Enviado"] = p.Enviado ? "~/Imagenes/iconos/tick.png" : "~/Imagenes/iconos/clock.png"; drwPedido["AltEnviado"] = p.Enviado ? "Enviado" : "Pendiente"; dtPedidos.Rows.Add(drwPedido); } if (dtPedidos.Rows.Count == 0) { lblMensaje.Text = "No hay pedidos para mostrar."; Panel1.Visible = false; } gvMisPedidos.DataSource = dtPedidos; gvMisPedidos.DataBind(); }
protected void btnBuscar_Click(object sender, EventArgs e) { try { int cedula; try { cedula = Convert.ToInt32(txtCedula.Text.Trim()); } catch { throw new ExcepcionPresentacion("Ingrese una cédula válida, sin puntos ni guiones para realizar la busqueda."); } List <Pedido> Pedidos = LogicaPedido.ListarPedidosPorUsuario(cedula); Session["BuscadoPorCedula"] = cedula; CargarGridView(Pedidos); txtCedula.Text = ""; } catch (ApplicationException ex) { lblMensaje.ForeColor = System.Drawing.Color.Red; lblMensaje.Text = "¡Error! " + ex.Message; } catch { lblMensaje.ForeColor = System.Drawing.Color.Red; lblMensaje.Text = "¡Error! Al cargar la pagina."; } }
protected void Page_Load(object sender, EventArgs e) { try { Response.CacheControl = "no-cache"; lblMensaje.Text = ""; List <Pedido> Pedidos; if (Session["BuscadoPorCedula"] != null) { Pedidos = LogicaPedido.ListarPedidosPorUsuario((int)Session["BuscadoPorCedula"]); Session.Remove("BuscadoPorCedula"); } else { string tipoListado = ddlEstadoPedido.SelectedValue; switch (tipoListado) { case "Todos": Pedidos = LogicaPedido.ListarTodosLosPedidos(); CargarGridView(Pedidos); break; case "Pendientes": Pedidos = LogicaPedido.ListarPedidosPendientes(); CargarGridView(Pedidos); break; case "Enviados": Pedidos = LogicaPedido.ListarPedidosEnviados(); CargarGridView(Pedidos); break; } } } catch (ApplicationException ex) { lblMensaje.ForeColor = System.Drawing.Color.Red; lblMensaje.Text = "¡Error! " + ex.Message; } catch { lblMensaje.ForeColor = System.Drawing.Color.Red; lblMensaje.Text = "¡Error! Al cargar la pagina."; } }
protected void Page_Load(object sender, EventArgs e) { try { if ((Usuario)Session["Usuario"] == null) { Session["Mensaje"] = "Debes iniciar sesión para ver tus pedidos."; Response.Redirect("Error.aspx"); } else if ((Usuario)Session["Usuario"] is Administrador) { Session["Mensaje"] = "Página disponible sólo para clientes. Ingrese a la administración para ver los pedidos de un usuario."; Response.Redirect("Error.aspx"); } if (!((Usuario)Session["Usuario"] is UsuarioRegistrado)) { Session["Mensaje"] = "Página disponible sólo para clientes."; Response.Redirect("Error.aspx"); } List <Pedido> pedidosdelusuario = LogicaPedido.ListarPedidosPorUsuario(((Usuario)Session["Usuario"]).Cedula); int pedidosEntregados = 0; int pedidosPendientes = 0; int pedidosTotales = 0; double costoTotal = 0; foreach (Pedido p in pedidosdelusuario) { pedidosTotales++; if (p.Enviado) { pedidosEntregados++; } else { pedidosPendientes++; } costoTotal += p.PrecioTotal; } string tarjeta = "******" + ((UsuarioRegistrado)Session["Usuario"]).NumeroTarjeta.ToString().Substring(((UsuarioRegistrado)Session["Usuario"]).NumeroTarjeta.ToString().Length - 4, 4); lblNombreUsuario.Text = ((Usuario)Session["Usuario"]).NombreUsuario; imgFotoPerfil.ImageUrl = ((Usuario)Session["Usuario"]).Imagen; lblNombreCompleto.Text = ((Usuario)Session["Usuario"]).NombreCompleto; lblCedula.Text = ((Usuario)Session["Usuario"]).Cedula.ToString(); lblDireccion.Text = ((UsuarioRegistrado)Session["Usuario"]).DireccionEnvio; lblTarjeta.Text = tarjeta; lblTelefono.Text = ((UsuarioRegistrado)Session["Usuario"]).Telefono.ToString(); lblCdadPedidos.Text = pedidosTotales.ToString(); lblPedidosEntregados.Text = pedidosEntregados.ToString(); lblPedidosPendientes.Text = pedidosPendientes.ToString(); lblCostoTotal.Text = costoTotal.ToString(); } catch { lblMensaje.Text = "¡Error! No se pudo desplegar los detalles del pedido."; } }