Exemplo n.º 1
0
        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);
                }
            }
        }
Exemplo n.º 4
0
        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);
            }
        }