public bool Read() { TipoUsuarioFactory factory = new ClienteFactory(); using (var db = new DBEntities()) { try { //Realizar consulta para obtener datos del pedido var pedido = db.PEDIDO.Where(p => p.IDPEDIDO == this.IdPedido).FirstOrDefault(); //Devolver null si la consulta no entrega resultados if (pedido != null) { this.FechaPedido = pedido.FECHAPEDIDO; this.FechaEntrega = pedido.FECHAENTREGA; this.Direccion = pedido.DIRECCIONPEDIDO; this.Ciudad = pedido.CIUDAD; this.Pais = pedido.PAIS; //Crear una instancia cliente con el uso de ClienteFactory TipoUsuario cli = factory.createTipoUsuario(); //Recuperar datos del cliente por su id cli.ObtenerDatosPorId((int)pedido.IDCLIENTE); this.Cliente = (Cliente)cli; //Obtener el estado del pedido por su id EstadoPedido estado = new EstadoPedido(); estado.IdEstado = (int)pedido.IDESTADOPEDIDO; estado.Read(); this.EstadoPedido = estado; //Obtener el detalle del pedido por id this.DetallePedido = ItemPedido.ReadByIdPedido(this.IdPedido); return(true); } return(false); } catch (Exception ex) { Console.WriteLine(ex.Message); return(false); } } }
public static List <Pedido> ReadAll() { try { TipoUsuarioFactory factory = new ClienteFactory(); List <Pedido> list = new List <Pedido>(); using (var db = new DBEntities()) { var listPedido = db.PEDIDO.ToList(); if (listPedido.Count > 0) { foreach (var p in listPedido) { Pedido pedido = new Pedido(); pedido.IdPedido = (int)p.IDPEDIDO; pedido.FechaPedido = p.FECHAPEDIDO; pedido.FechaEntrega = p.FECHAENTREGA; pedido.Ciudad = p.CIUDAD; pedido.Direccion = p.DIRECCIONPEDIDO; pedido.Pais = p.PAIS; pedido.EstadoPedido = RepositorioEstadoPedido.ObtenerEstadoPedidoById((int)p.IDESTADOPEDIDO); pedido.DetallePedido = RepositorioDetallePedido.ObtenerDetallePedido(pedido.IdPedido); //Crear una instancia cliente con el uso de ClienteFactory TipoUsuario cli = factory.createTipoUsuario(); //Recuperar datos del cliente por su id cli.ObtenerDatosPorId((int)p.IDCLIENTE); pedido.Cliente = (Cliente)cli; //Obtener detalle del pedido pedido.DetallePedido = RepositorioDetallePedido.ObtenerDetallePedido(pedido.IdPedido); list.Add(pedido); } } return(list); } } catch (Exception ex) { Console.WriteLine(ex.Message); return(new List <Pedido>()); } }
/// <summary> /// Obtener datos del Pedido segun su id de pedido /// </summary> /// <param name="idPedido"></param> /// <returns></returns> public static Pedido ObtenerPedidoPorId(int idPedido) { //Creacion de una factory de Cliente TipoUsuarioFactory factory = new ClienteFactory(); using (var db = new DBEntities()) { try { //Realizar consulta para obtener datos del pedido var queryPedido = db.PEDIDO.Include("CLIENTE").Where(pedido => pedido.IDPEDIDO == idPedido).FirstOrDefault(); //Devolver null si la consulta no entrega resultados if (queryPedido == null) { return(null); } Pedido p = new Pedido(); p.IdPedido = (int)queryPedido.IDPEDIDO; p.FechaPedido = queryPedido.FECHAPEDIDO; p.FechaEntrega = queryPedido.FECHAENTREGA; p.Direccion = queryPedido.DIRECCIONPEDIDO; p.Ciudad = queryPedido.CIUDAD; p.Pais = queryPedido.PAIS; //Crear una instancia cliente con el uso de ClienteFactory TipoUsuario cli = factory.createTipoUsuario(); //Recuperar datos del cliente por su id cli.ObtenerDatosPorId((int)queryPedido.IDCLIENTE); p.Cliente = (Cliente)cli; //Obtener el estado del pedido por su id p.EstadoPedido = RepositorioEstadoPedido.ObtenerEstadoPedidoById((int)queryPedido.IDESTADOPEDIDO); //Obtener el detalle del pedido por id p.DetallePedido = RepositorioDetallePedido.ObtenerDetallePedido((int)p.IdPedido); return(p); }catch (Exception ex) { return(null); } } }
public static TipoUsuario GetTipoUsuario(string rol, int idUsr) { TipoUsuario tipoUsuario; TipoUsuarioFactory factory; try { switch (rol) { case "Cliente": factory = new ClienteFactory(); tipoUsuario = factory.createTipoUsuario(); tipoUsuario.ReadById(idUsr); break; case "Productor": factory = new ProductorFactory(); tipoUsuario = factory.createTipoUsuario(); tipoUsuario.ReadById(idUsr); break; case "Transportista": factory = new TransportistaFactory(); tipoUsuario = factory.createTipoUsuario(); tipoUsuario.ReadById(idUsr); break; default: tipoUsuario = null; break; } return(tipoUsuario); } catch (Exception ex) { return(null); } }