/// <summary> /// Lista todos los beneficiarios que se encuentran en la base de datos /// </summary> /// <returns>Lista de beneficiarios</returns> public static List <BeneficiarioClass> ListarBeneficiarios() { List <BeneficiarioClass> r = new List <BeneficiarioClass>(); saluddbEntities mctx = new saluddbEntities(); BeneficiarioClass x; var cur = from b in mctx.beneficiarios orderby b.nombre select b; foreach (var f in cur) { x = new BeneficiarioClass(); x._id_beneficiario = f.id_beneficiario; x._nombre = f.nombre; x._direccion = f.direccion; x._documento = f.documento; x._telefono = f.telefono; x._fecha_nac = (DateTime)f.fecha_nac; x._cuit_cuil = f.cuit_cuil; x._barrio = BarrioClass.BuscarBarrioPorId((int)f.id_barrio); x._beneficios = BeneficioBeneficiarioClass.ListarBeneficioPorBeneficiario((int)x._id_beneficiario); r.Add(x); } return(r); }
/// <summary> /// Lista los beneficiarios 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 beneficiarios</returns> public static List <BeneficiarioClass> ListarBeneficiarioPorCriterio(string parametro, CriterioBusqueda criterio) { List <BeneficiarioClass> r = new List <BeneficiarioClass>(); saluddbEntities mctx = new saluddbEntities(); BeneficiarioClass x; var cur = from b in mctx.beneficiarios select b; foreach (var f in cur) { bool agregar = false; switch (criterio) { case CriterioBusqueda.Busqueda_Dni: agregar = f.documento.Contains(parametro); break; case CriterioBusqueda.Busqueda_ID: int id = 0; Int32.TryParse(parametro, out id); if (f.id_beneficiario == id) { agregar = true; } else { agregar = false; } break; case CriterioBusqueda.Busqueda_Nombre: agregar = f.nombre.Contains(parametro); break; } if (agregar) { x = new BeneficiarioClass(); x._id_beneficiario = f.id_beneficiario; x._nombre = f.nombre; x._direccion = f.direccion; x._documento = f.documento; x._telefono = f.telefono; x._fecha_nac = (DateTime)f.fecha_nac; x._cuit_cuil = f.cuit_cuil; x._barrio = BarrioClass.BuscarBarrioPorId((int)f.id_barrio); x._beneficios = BeneficioBeneficiarioClass.ListarBeneficioPorBeneficiario((int)x._id_beneficiario); r.Add(x); } } return(r); }
/// <summary> /// Lista los beneficiarios que adquirieron el articulo pasado como parametro. /// </summary> /// <param name="id_articulo">id del articulo al que se va a buscar el beneficiario</param> /// <returns>Lista de beneficiarios</returns> public static List <BeneficiarioClass> ListarBeneficiarioPorArticulo(int id_articulo) { List <BeneficiarioClass> r = new List <BeneficiarioClass>(); saluddbEntities mctx = new saluddbEntities(); BeneficiarioClass x; //une las tablas itemEntregas, ordenEntregas y beneficiari mediante un Join para obtener los beneficiarios que adquirieron un cierto articulo var cur = from ben in mctx.beneficiarios join ord in mctx.ordenentregas on ben.id_beneficiario equals ord.id_beneficiario join item in mctx.itementregas on ord.id_orden equals item.id_orden where item.id_articulo == id_articulo select ben; foreach (var f in cur) { x = new BeneficiarioClass(); x._id_beneficiario = f.id_beneficiario; x._nombre = f.nombre; x._direccion = f.direccion; x._documento = f.documento; x._telefono = f.telefono; x._fecha_nac = (DateTime)f.fecha_nac; x._cuit_cuil = f.cuit_cuil; x._barrio = BarrioClass.BuscarBarrioPorId((int)f.id_barrio); x._beneficios = BeneficioBeneficiarioClass.ListarBeneficioPorBeneficiario((int)x._id_beneficiario); r.Add(x); } return(r); }
/// <summary> /// Busca el beneficiario según el criterio de busqueda y el parametro /// </summary> /// <param name="criterio"></param> /// <returns>Retorna el Beneficiario. Null en otro caso</returns> public static BeneficiarioClass BuscarBeneficiario(String parametro, CriterioBusqueda criterio) { BeneficiarioClass r = new BeneficiarioClass(); saluddbEntities ctx = new saluddbEntities(); switch (criterio) { case CriterioBusqueda.Busqueda_ID: int id = 0; Int32.TryParse(parametro, out id); var cur = from b in ctx.beneficiarios where b.id_beneficiario == id select b; if (cur.Count() > 0) { var f = cur.First(); r._id_beneficiario = f.id_beneficiario; r._documento = f.documento; r._direccion = f.direccion; r._telefono = f.telefono; r._nombre = f.nombre; r._fecha_nac = (DateTime)f.fecha_nac; r._cuit_cuil = f.cuit_cuil; r._barrio = BarrioClass.BuscarBarrioPorId((int)f.id_barrio); r._beneficios = BeneficioBeneficiarioClass.ListarBeneficioPorBeneficiario((int)r._id_beneficiario); return(r); } break; case CriterioBusqueda.Busqueda_Dni: var cur2 = from b in ctx.beneficiarios where b.documento == parametro select b; if (cur2.Count() > 0) { var f = cur2.First(); r._id_beneficiario = f.id_beneficiario; r._documento = f.documento; r._direccion = f.direccion; r._telefono = f.telefono; r._nombre = f.nombre; r._fecha_nac = (DateTime)f.fecha_nac; r._cuit_cuil = f.cuit_cuil; r._barrio = BarrioClass.BuscarBarrioPorId((int)f.id_barrio); r._beneficios = BeneficioBeneficiarioClass.ListarBeneficioPorBeneficiario((int)r._id_beneficiario); return(r); } break; case CriterioBusqueda.Busqueda_Nombre: var cur3 = from b in ctx.beneficiarios where b.nombre == parametro select b; if (cur3.Count() > 0) { var f = cur3.First(); r._id_beneficiario = f.id_beneficiario; r._documento = f.documento; r._direccion = f.direccion; r._telefono = f.telefono; r._nombre = f.nombre; r._fecha_nac = (DateTime)f.fecha_nac; r._cuit_cuil = f.cuit_cuil; r._barrio = BarrioClass.BuscarBarrioPorId((int)f.id_barrio); r._beneficios = BeneficioBeneficiarioClass.ListarBeneficioPorBeneficiario((int)r._id_beneficiario); return(r); } break; } return(null); }