コード例 #1
0
        ///<summary>
        ///   Lista todos los artículos registrados en la base de datos que fueron entregados al beneficiario (id_beneficiario)
        /// </summary>
        /// <returns>Retorna una lista de objetos de la clase ArticulosClass</returns>
        /// <param name="id_beneficiario">Id del beneficiario al que se le entrego artículos</param>
        /// <returns>Retorna una lista de objetos de la clase ArticulosClass</returns>
        public static List <ArticuloClass> ListarArticulosPorBeneficiario(long id_beneficiario)
        {
            List <ArticuloClass> r    = new List <ArticuloClass>();
            saluddbEntities      mctx = new saluddbEntities();
            ArticuloClass        x;

            //une las tablas articulos, itemEntregas y ordenEntregas mediante un Join para obtener los articulos de un determinado beneficiario
            var cur = from ord in mctx.ordenentregas

                      join item in mctx.itementregas
                      on ord.id_orden equals item.id_orden

                      join art in mctx.articuloes
                      on item.id_articulo equals art.id_articulo

                      where ord.id_beneficiario == id_beneficiario
                      select art;


            foreach (var f in cur)
            {
                x = new ArticuloClass();

                x._id_articulo          = f.id_articulo;
                x._nombre_articulo      = f.nombre;
                x._descripcion_articulo = f.descripcion;
                x._tipo_articulo        = TipoArticuloClass.BuscarTipoArticuloPorId(f.id_tipo_articulo);

                r.Add(x);
            }


            return(r);
        }
コード例 #2
0
        /// <summary>
        /// Lista los artículos de la base de datos que contiene el nombre pasado como parametro en su nombre
        /// </summary>
        /// <param name="tipo">nombre del tipo de articulo</param>
        /// <returns>Retorna una lista (ordenada por nombre de artículo) con los artículos de ese tipo</returns>
        public static List <ArticuloClass> ListarArticulosPorNombre(string nombre)
        {
            List <ArticuloClass> r    = new List <ArticuloClass>();
            saluddbEntities      mctx = new saluddbEntities();
            ArticuloClass        x;

            var cur = from a in mctx.articuloes
                      where a.nombre.Contains(nombre)
                      orderby a.nombre
                      select a;

            foreach (var f in cur)
            {
                x = new ArticuloClass();

                x._id_articulo          = f.id_articulo;
                x._nombre_articulo      = f.nombre;
                x._descripcion_articulo = f.descripcion;
                x._tipo_articulo        = TipoArticuloClass.BuscarTipoArticuloPorId(f.id_tipo_articulo);

                r.Add(x);
            }


            return(r);
        }
コード例 #3
0
        /// <summary>
        /// Lista los articulos por criterio
        /// </summary>
        /// <param name="parametro">Parámetro con el que se compara para listar</param>
        /// <param name="criterio">Criterio de búsqueda</param>
        /// <returns>Lista de Artículos</returns>
        public static List <ArticuloClass> ListarAticulosPorCriterio(string parametro, CriterioBusqueda criterio)
        {
            List <ArticuloClass> r    = new List <ArticuloClass>();
            saluddbEntities      mctx = new saluddbEntities();
            ArticuloClass        x;


            var cur = from b in mctx.articuloes
                      select b;

            foreach (var f in cur)
            {
                bool agregar = false;
                switch (criterio)
                {
                case CriterioBusqueda.Busqueda_Nombre:
                    agregar = f.nombre.Contains(parametro);
                    break;
                }

                if (agregar)
                {
                    x = new ArticuloClass();

                    x._id_articulo          = f.id_articulo;
                    x._nombre_articulo      = f.nombre;
                    x._descripcion_articulo = f.descripcion;
                    x._tipo_articulo        = TipoArticuloClass.BuscarTipoArticuloPorId(f.id_tipo_articulo);

                    r.Add(x);
                }
            }

            return(r);
        }
コード例 #4
0
        /// <summary>
        /// Busca un artículo por Id_articulo
        /// </summary>
        /// <param name="id_articulo">ID del artículo a buscar</param>
        /// <returns>Retorna un objeto ArticuloClass</returns>
        public static ArticuloClass BuscarArticuloPorId(int id_articulo)
        {
            ArticuloClass r = new ArticuloClass();

            saluddbEntities ctx = new saluddbEntities();

            var cur = from a in ctx.articuloes
                      where a.id_articulo == id_articulo
                      select a;

            if (cur.Count() > 0)
            {
                var f = cur.First();

                r._id_articulo          = f.id_articulo;
                r._nombre_articulo      = f.nombre;
                r._descripcion_articulo = f.descripcion;
                r._tipo_articulo        = TipoArticuloClass.BuscarTipoArticuloPorId(f.id_tipo_articulo);
            }
            else
            {
                r = null;
            }

            return(r);
        }
コード例 #5
0
        /// <summary>
        /// Busca un tipo artículo por Id_tipo_articulo
        /// </summary>
        /// <param name="id_tipo_articulo">ID del tipo de artículo a buscar</param>
        /// <returns>Retorna un objeto TipoArticuloClass</returns>
        public static TipoArticuloClass BuscarTipoArticuloPorId(int id_tipo_articulo)
        {
            TipoArticuloClass r = new TipoArticuloClass();

            saluddbEntities ctx = new saluddbEntities();

            var cur = from t in ctx.tipoarticuloes
                      where t.id_tipo_articulo == id_tipo_articulo
                      select t;

            if (cur.Count() > 0)
            {
                var f = cur.First();

                r._id_tipo_articulo     = f.id_tipo_articulo;
                r._nombre_tipo_articulo = f.nombre_tipo;
                r._es_dinero            = (bool)f.es_dinero;
            }
            else
            {
                r = null;
            }

            return(r);
        }
コード例 #6
0
 /// <summary>
 /// Constructor de la clase ArticuloClass
 /// </summary>
 /// <param name="id_articulo"></param>
 /// <param name="nombre_articulo"></param>
 /// <param name="descripcion_articulo"></param>
 /// <param name="tipo_articulo"></param>
 public ArticuloClass(int id_articulo, String nombre_articulo, String descripcion_articulo, TipoArticuloClass tipo_articulo)
 {
     this.ctx                   = new saluddbEntities();
     this._id_articulo          = id_articulo;
     this._nombre_articulo      = nombre_articulo;
     this._descripcion_articulo = descripcion_articulo;
     this._tipo_articulo        = tipo_articulo;
 }
コード例 #7
0
 /// <summary>
 /// Constructor por defecto de la clase ArticuloClass
 /// Crea una instancia de la clase, con todas las propiedades en cero o vacias
 /// </summary>
 public ArticuloClass()
 {
     this.ctx                   = new saluddbEntities();
     this._id_articulo          = 0;
     this._nombre_articulo      = "";
     this._descripcion_articulo = "";
     this._tipo_articulo        = new TipoArticuloClass();
 }
コード例 #8
0
        /// <summary>
        /// Lista los artículos por beneficiario en las fechas determinadas. Tenieniendo en cuenta el estado de los articulos
        /// </summary>
        /// <param name="id_beneficiario">Id del beneficiario</param>
        /// <param name="fechaDesde">Fecha desde la cual se seleccionan los artículos</param>
        /// <param name="fechaHasta">Fecha hasta la cual se seleccionan los artículos</param>
        /// <param name="estado">Estado de los articulos relacionados con la orden y el beneficiario</param>
        /// <param name="completo">Lista los artículos completos</param>
        /// <returns></returns>
        public static List <ArticuloClass> ListarArticulosPorBeneficiarioEntreFechas(long id_beneficiario, DateTime fecha_desde, DateTime fecha_hasta, int estado, bool completo = false)
        {
            DateTime             fechaDesde = new DateTime(fecha_desde.Year, fecha_desde.Month, fecha_desde.Day, 0, 0, 0);
            DateTime             fechaHasta = new DateTime(fecha_hasta.Year, fecha_hasta.Month, fecha_hasta.Day, 23, 59, 59);
            List <ArticuloClass> r          = new List <ArticuloClass>();
            saluddbEntities      mctx       = new saluddbEntities();
            ArticuloClass        x;

            //une las tablas articulos, itemEntrega, ordenEntregas y ordenEstado mediante un Join para obtener los articulos de un determinado beneficiario
            var cur = from ord in mctx.ordenentregas

                      join item in mctx.itementregas
                      on ord.id_orden equals item.id_orden

                      join art in mctx.articuloes
                      on item.id_articulo equals art.id_articulo

                      join ordE in mctx.ordenestadoes
                      on ord.id_orden equals ordE.id_orden

                      where ord.id_beneficiario == id_beneficiario && ordE.estado == estado && ordE.fecha >= fechaDesde && ordE.fecha <= fechaHasta
                      select art;


            foreach (var f in cur)
            {
                x = new ArticuloClass();

                x._id_articulo          = f.id_articulo;
                x._nombre_articulo      = f.nombre;
                x._descripcion_articulo = f.descripcion;
                x._tipo_articulo        = TipoArticuloClass.BuscarTipoArticuloPorId(f.id_tipo_articulo);

                r.Add(x);
            }


            return(r);
        }
コード例 #9
0
        /// <summary>
        ///Busca todos los tipos de artículos registrados en la base de datos que contengan como nombre, el nombre pasado como parametro
        /// </summary>
        /// <returns>Retorna una lista de objetos de la clase TipoArticulosClass</returns>
        public static List <TipoArticuloClass> BuscarTipoArticuloPorNombre(string nombre)
        {
            List <TipoArticuloClass> r    = new List <TipoArticuloClass>();
            saluddbEntities          mctx = new saluddbEntities();
            TipoArticuloClass        x;

            var cur = from t in mctx.tipoarticuloes
                      where t.nombre_tipo.Contains(nombre)
                      select t;

            foreach (var f in cur)
            {
                x = new TipoArticuloClass();
                x._nombre_tipo_articulo = f.nombre_tipo;
                x._id_tipo_articulo     = f.id_tipo_articulo;
                x._es_dinero            = (bool)f.es_dinero;

                r.Add(x);
            }


            return(r);
        }
コード例 #10
0
        /// <summary>
        /// Lista todos los tipos de artículos registrados en la base de datos
        /// </summary>
        /// <returns>Retorna una lista de objetos de la clase TipoArticulosClass</returns>
        public static List <TipoArticuloClass> ListarTipoArticulos()
        {
            List <TipoArticuloClass> r    = new List <TipoArticuloClass>();
            saluddbEntities          mctx = new saluddbEntities();
            TipoArticuloClass        x;

            var cur = from t in mctx.tipoarticuloes
                      orderby t.nombre_tipo
                      select t;

            foreach (var f in cur)
            {
                x = new TipoArticuloClass();
                x._nombre_tipo_articulo = f.nombre_tipo;
                x._id_tipo_articulo     = f.id_tipo_articulo;
                x._es_dinero            = (bool)f.es_dinero;

                r.Add(x);
            }


            return(r);
        }
コード例 #11
0
        public static List <GrillaReporteEntregaGruClass> ListarArticulosPorGrupoEntreFechasParaGrilla(int id_grupo, DateTime fecha_desde, DateTime fecha_hasta, int estado, bool completo = false)
        {
            DateTime fechaDesde = new DateTime(fecha_desde.Year, fecha_desde.Month, fecha_desde.Day, 0, 0, 0);
            DateTime fechaHasta = new DateTime(fecha_hasta.Year, fecha_hasta.Month, fecha_hasta.Day, 23, 59, 59);
            List <GrillaReporteEntregaGruClass> r = new List <GrillaReporteEntregaGruClass>();
            saluddbEntities mctx = new saluddbEntities();
            GrillaReporteEntregaGruClass x;

            /* List<BeneficiarioClass> listaBeneficiarios = BeneficiarioClass.ListarBeneficiariosPorGrupo(id_grupo);
             *
             * foreach(BeneficiarioClass b in listaBeneficiarios)
             * {
             *
             * }*/


            //une las tablas articulos, itemEntrega, ordenEntregas y ordenEstado mediante un Join para obtener los articulos de un determinado beneficiario
            var cur = from ord in mctx.ordenentregas

                      join item in mctx.itementregas
                      on ord.id_orden equals item.id_orden


                      join art in mctx.articuloes
                      on item.id_articulo equals art.id_articulo

                      join ordE in mctx.ordenestadoes
                      on ord.id_orden equals ordE.id_orden

                      join bg in mctx.beneficiario_grupo
                      on ord.id_beneficiario equals bg.id_beneficiario

                      join g in mctx.grupoes
                      on bg.id_gupo equals g.id_grupo

                      join b in mctx.beneficiarios
                      on bg.id_beneficiario equals b.id_beneficiario

                      where g.id_grupo == id_grupo && ordE.estado == estado && ordE.fecha >= fechaDesde && ordE.fecha <= fechaHasta
                      select new
            {
                id_articulo                = art.id_articulo,
                cantidad_articulo          = item.cantidad,
                nombre_articulo            = art.nombre,
                descripcion_articulo       = art.descripcion,
                id_tipo_articulo           = art.id_tipo_articulo,
                id_orden_entrega           = ord.id_orden,
                fechaEntrega_orden_entrega = ordE.fecha,
                id_autorizado              = ord.id_usu_autoriza,
                id_entrega      = ord.id_usu_entrega,
                nombre_grupo    = g.nombre,
                nombre_benef    = b.nombre,
                documento_benef = b.documento
            };

            foreach (var f in cur)
            {
                x = new GrillaReporteEntregaGruClass();

                x.Id_articulo                = f.id_articulo;
                x.Cantidad_articulo          = f.cantidad_articulo.ToString();
                x.Nombre_articulo            = f.nombre_articulo;
                x.Descripcion_articulo       = f.descripcion_articulo;
                x.Tipo_articulo              = TipoArticuloClass.BuscarTipoArticuloPorId(f.id_tipo_articulo).Nombre_TipoArticulo;
                x.Id_orden_entrega           = f.id_orden_entrega;
                x.FechaEntrega_orden_entrega = ((DateTime)f.fechaEntrega_orden_entrega).Date.ToShortDateString();
                //x.HoraEntrega_orden_entrega = ((DateTime)f.fechaEntrega_orden_entrega).Date.ToShortTimeString();
                x.HoraEntrega_orden_entrega = ((DateTime)f.fechaEntrega_orden_entrega).ToShortTimeString();
                x.Nombre_grupo           = f.nombre_grupo;
                x.Nombre_beneficiario    = f.nombre_benef;
                x.Documento_beneficiario = f.documento_benef;
                if ((int)f.id_autorizado != 0)
                {
                    x.Autorizado_por = UsuarioClass.BuscarUsuarioPorId((int)f.id_autorizado).Nombre_completo.ToString();
                }
                else
                {
                    x.Autorizado_por = "NO AUTORIZADO";
                }

                if ((int)f.id_entrega != 0)
                {
                    x.Entregado_por = UsuarioClass.BuscarUsuarioPorId((int)f.id_entrega).Nombre_completo.ToString();
                }
                else
                {
                    x.Entregado_por = "NO ENTREGADO";
                }

                r.Add(x);
            }


            return(r);
        }