示例#1
0
        public List <Produccion> ReadAll()
        {
            List <Produccion>  listProduccion = new List <Produccion>();
            TipoUsuarioFactory factory        = new ProductorFactory();

            try
            {
                using (var db = new DBEntities())
                {
                    var query = db.PRODUCCION.ToList();
                    foreach (var dbProd in query)
                    {
                        Produccion produccion = new Produccion();
                        produccion.IdProduccion   = (int)dbProd.IDPRODUCCION;
                        produccion.PrecioPremium  = (float)dbProd.PRECIOPREMIUM;
                        produccion.PrecioEstandar = (float)dbProd.PRECIOESTANDAR;
                        produccion.PrecioLower    = (float)dbProd.PRECIOLOWER;
                        produccion.Producto       = MantenedorProducto.BuscarPorId((int)dbProd.IDPRODUCTO);

                        TipoUsuario productor   = factory.createTipoUsuario();
                        int         idProductor = (int)dbProd.IDPRODUCTOR;
                        productor.ObtenerDatosPorId(idProductor);
                        produccion.Productor = (Productor)productor;

                        listProduccion.Add(produccion);
                    }
                    return(listProduccion);
                }
            }
            catch (Exception ex)
            {
                ex.InnerException.ToString();
                return(new List <Produccion>());
            }
        }
示例#2
0
        /// <summary>
        /// Buscar contrato por la id asignada a la actual instancia
        /// </summary>
        /// <returns></returns>
        public bool Read()
        {
            try
            {
                bool obtenido = false;

                TipoUsuarioFactory factory = new ProductorFactory();
                using (var db = new DBEntities())
                {
                    CONTRATO contrato = db.CONTRATO.Where(c => c.IDCONTRATO == this.Id).FirstOrDefault();
                    if (contrato != null)
                    {
                        this.FechaCreacion = contrato.FECHACREACION;
                        this.FechaTermino  = contrato.FECHATERMINO;
                        this.PorcComision  = (float)contrato.PORCCOMISION;
                        this.Vigente       = contrato.VIGENTE.ToString();
                        TipoUsuario prod = factory.createTipoUsuario();
                        //Recuperar datos del cliente por su id
                        prod.ObtenerDatosPorId((int)contrato.IDPRODUCTOR);
                        this.Productor = (Productor)prod;

                        obtenido = true;
                    }

                    return(obtenido);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(false);
            }
        }
示例#3
0
        /// <summary>
        /// Obtener los detalles de un pedido por la ID de este ultimo
        /// </summary>
        /// <param name="idPedido"></param>
        /// <returns></returns>
        public static List <ItemPedido> ObtenerDetallePedido(int idPedido)
        {
            using (var db = new DBEntities())
            {
                TipoUsuarioFactory factory = new ProductorFactory();
                //Crear listado del detalle a devolver
                List <ItemPedido> detallePedido = new List <ItemPedido>();
                try
                {
                    //Realizar consulta del detalle de acuerdo a la id del pedido
                    var queryDetalle = db.DETALLEPEDIDO.Include("PRODUCTO").Where(detalle => detalle.IDPEDIDO == idPedido).ToList();

                    //Crear instancias ItemPedido con los datos obtenidos de la consulta
                    foreach (var detalle in queryDetalle)
                    {
                        ItemPedido item = new ItemPedido();
                        item.IdItemPedido = (int)detalle.IDDETALLEPEDIDO;
                        item.Cantidad     = (int)detalle.CANTIDAD;
                        item.Calidad      = detalle.CALIDAD;
                        item.Estado       = detalle.ESTADO;
                        item.Precio       = (float?)detalle.PRECIO;
                        item.Producto     = new Producto
                        {
                            IdProducto     = (int)detalle.IDPRODUCTO,
                            NombreProducto = detalle.PRODUCTO.NOMBREPRODUCTO,
                            PrecioEstimado = (float)detalle.PRODUCTO.PRECIOESTIMADO,
                            ImagenProducto = detalle.PRODUCTO.IMAGENPRODUCTO,
                            BannerProducto = detalle.PRODUCTO.BANNERPRODUCTO
                        };
                        item.Productor = (Productor)factory.createTipoUsuario();
                        if (!(detalle.IDPRODUCTOR is null))
                        {
                            item.Productor.ObtenerDatosPorId((int)detalle.IDPRODUCTOR);
                        }
                        //Agregar objeto a la lista
                        detallePedido.Add(item);
                    }
                    //Devolver listado
                    return(detallePedido);
                }catch (Exception ex)
                {
                    ex.Message.ToString();
                    return(null);
                }
            }
        }
示例#4
0
        public static List <ItemPedido> ListarPorIdProductor(int idProductor)
        {
            //Crear contexto de EF
            using (var db = new DBEntities())
            {
                TipoUsuarioFactory factory = new ProductorFactory();
                //Crear listado del detalle a devolver
                List <ItemPedido> detallePedido = new List <ItemPedido>();
                try
                {
                    var queryDetalle = db.DETALLEPEDIDO.Include("PRODUCTO").Where(det => det.IDPRODUCTOR == idProductor).ToList();
                    foreach (var detalle in queryDetalle)
                    {
                        ItemPedido item = new ItemPedido();
                        item.IdItemPedido = (int)detalle.IDDETALLEPEDIDO;
                        item.Cantidad     = (int)detalle.CANTIDAD;
                        item.Calidad      = detalle.CALIDAD;
                        item.Estado       = detalle.ESTADO;
                        item.Precio       = (float?)detalle.PRECIO;
                        item.Producto     = new Producto
                        {
                            IdProducto     = (int)detalle.IDPRODUCTO,
                            NombreProducto = detalle.PRODUCTO.NOMBREPRODUCTO,
                            PrecioEstimado = (float)detalle.PRODUCTO.PRECIOESTIMADO,
                            ImagenProducto = detalle.PRODUCTO.IMAGENPRODUCTO,
                            BannerProducto = detalle.PRODUCTO.BANNERPRODUCTO
                        };

                        item.Productor = (Productor)factory.createTipoUsuario();
                        if (!(detalle.IDPRODUCTOR is null))
                        {
                            item.Productor.ObtenerDatosPorId((int)detalle.IDPRODUCTOR);
                        }
                        //Agregar objeto a la lista
                        detallePedido.Add(item);
                    }
                    //Devolver listado
                    return(detallePedido);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                    return(null);
                }
            }
        }
示例#5
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public static List <ItemPedido> ReadByIdPedido(int idPedido)
        {
            try
            {
                TipoUsuarioFactory factory = new ProductorFactory();
                //Crear listado del detalle a devolver
                List <ItemPedido> list = new List <ItemPedido>();
                using (var db = new DBEntities())
                {
                    var listadoDetalle = db.DETALLEPEDIDO.Where(d => d.IDPEDIDO == idPedido).ToList();
                    if (listadoDetalle.Count > 0)
                    {
                        foreach (var det in listadoDetalle)
                        {
                            ItemPedido item = new ItemPedido();
                            item.IdItemPedido = (int)det.IDDETALLEPEDIDO;
                            item.Calidad      = det.CALIDAD;
                            item.Cantidad     = (int)det.CANTIDAD;
                            item.Estado       = det.ESTADO;
                            item.Precio       = (float?)det.PRECIO;

                            item.Producto = MantenedorProducto.BuscarPorId((int)det.IDPRODUCTO);

                            TipoUsuario productor = factory.createTipoUsuario();
                            productor.ObtenerDatosPorId((int)det.IDPRODUCTOR.GetValueOrDefault());

                            item.Productor = (Productor)productor;

                            list.Add(item);
                        }
                    }
                    return(list);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(new List <ItemPedido>());
            }
        }
示例#6
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);
            }
        }
示例#7
0
        public List <Participacion> ReadAll()
        {
            try
            {
                TipoUsuarioFactory factory = new ProductorFactory();

                List <Participacion> list = new List <Participacion>();
                using (var db = new DBEntities())
                {
                    var listado = db.PARTICIPACION.ToList();
                    if (listado.Count > 0)
                    {
                        foreach (var par in listado)
                        {
                            Participacion participacion = new Participacion();
                            participacion.IdParticipacion     = (int)par.IDPARTICIPACION;
                            participacion.IdPedido            = (int)par.PEDIDO.IDPEDIDO;
                            participacion.EstadoParticipacion = par.ESTADOPARTICIPACION;

                            TipoUsuario productor   = factory.createTipoUsuario();
                            int         idProductor = (int)par.IDPRODUCTOR;
                            productor.ObtenerDatosPorId(idProductor);
                            participacion.Productor = (Productor)productor;



                            list.Add(participacion);
                        }
                    }
                    return(list);
                }
            }catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(new List <Participacion>());
            }
        }
示例#8
0
        /// <summary>
        /// Obtener todos los contratos de los productores
        /// </summary>
        /// <returns></returns>
        public List <Contrato> ReadAll()
        {
            try
            {
                TipoUsuarioFactory factory = new ProductorFactory();

                List <Contrato> list = new List <Contrato>();
                using (var db = new DBEntities())
                {
                    var listaContrato = db.CONTRATO.ToList();
                    if (listaContrato.Count > 0)
                    {
                        foreach (var c in listaContrato)
                        {
                            Contrato contrato = new Contrato();
                            contrato.Id            = (int)c.IDCONTRATO;
                            contrato.FechaCreacion = c.FECHACREACION;
                            contrato.FechaTermino  = c.FECHATERMINO;
                            contrato.PorcComision  = (float)c.PORCCOMISION;
                            contrato.Vigente       = c.VIGENTE.ToString();
                            TipoUsuario prod = factory.createTipoUsuario();
                            //Recuperar datos del cliente por su id
                            prod.ObtenerDatosPorId((int)c.IDPRODUCTOR);
                            contrato.Productor = (Productor)prod;

                            list.Add(contrato);
                        }
                    }

                    return(list);
                }
            }catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(new List <Contrato>());
            }
        }