public bool IniciarSesionClick() { int miembroSecundarioId = registroMiembro.ObtenerId(); if (miembroSecundarioId > 0) { ManejadorDeCelulas manejadorDeCelulas = new ManejadorDeCelulas(); List <int> celulasPermitidas = manejadorDeCelulas.ObtenerCelulasPermitidasPorMiembroComoIds(SesionActual.Instance.UsuarioId); Miembro miembroSecundario = (from o in SesionActual.Instance.getContexto <IglesiaEntities>().Miembro where o.MiembroId == miembroSecundarioId && o.Borrado == false select o).SingleOrDefault(); if (miembroSecundario != null && celulasPermitidas.Contains(miembroSecundario.CelulaId)) { Miembro miembroActual = ManejadorDeMiembros.ObtenerMiembroActual(); log.InfoFormat("El usuario {0} [{1}] iniciara sesion como {2} [{3}]", miembroActual.Email, miembroActual.MiembroId, miembroSecundario.Email, miembroSecundario.MiembroId); this.RestablecerCacheDeSesion(); ManejadorDeMiembros manejadorDeMiembros = new ManejadorDeMiembros(); manejadorDeMiembros.IniciarSesion(miembroSecundario.Email, string.Empty, true); return(true); } else { X.Msg.Alert(Generales.nickNameDeLaApp, "Miembro inexistente o no pertenece a la red").Show(); } } else { X.Msg.Alert(Generales.nickNameDeLaApp, "Es necesario establecer un miembro").Show(); } return(false); }
void ICatalogo.Buscar() { ManejadorDeCelulas manejadorCelulas = new ManejadorDeCelulas(); List <int> idsDiasDeLaSemana = filtroDiaDeLaSemana.ObtenerIds(); List <int> idsHorasDelDia = filtroHoraDelDia.ObtenerIds(); List <int> idCategorias = filtroCategoria.ObtenerIds(); int idMunicipio = filtroMunicipio.ObtenerId(); List <int> idsCelulasPermitidas = manejadorCelulas.ObtenerCelulasPermitidasPorMiembroComoIds(SesionActual.Instance.UsuarioId); List <int> idsCelulasSinLider = manejadorCelulas.ObtenerCelulasSinLideresComoCelulas().Select(o => o.CelulaId).ToList <int>(); StoreResultados.Cargar(( from o in SesionActual.Instance.getContexto <IglesiaEntities>().Celula where ((o.CelulaId == (filtroId.Number > 0 ? filtroId.Number : o.CelulaId)) && ((o.Descripcion.Contains(filtroDescripcion.Text)) || (o.Descripcion == null)) && (idsDiasDeLaSemana.Contains(o.DiaSemanaId) || (idsDiasDeLaSemana.Count == 0)) && (idsHorasDelDia.Contains(o.HoraDiaId) || (idsHorasDelDia.Count == 0)) && (idCategorias.Contains(o.CategoriaId) || (idCategorias.Count == 0)) && (o.UbicacionMunicipioId == (idMunicipio > 0 ? idMunicipio : o.UbicacionMunicipioId)) && ((o.Colonia.Contains(filtroColonia.Text)) || (o.Colonia == null)) && ((o.Direccion.Contains(filtroDireccion.Text)) || (o.Direccion == null)) && (o.Borrado == false) && //Registros NO borrados (idsCelulasPermitidas.Contains(o.CelulaId) || idsCelulasSinLider.Contains(o.CelulaId))) //Dentro de las celulas permitidas para el usuario actual... o aquellas celulas sin lider asignado (para poderlas BORRAR) orderby o.Descripcion select new { Id = o.CelulaId, Descripcion = o.Descripcion, DiaSemanaDesc = o.DiaSemana.Descripcion, HoraDiaDesc = o.HoraDia.Descripcion, Municipio = o.UbicacionMunicipio.Descripcion, Colonia = o.Colonia, Direccion = o.Direccion, Categoria = o.CelulaCategoria.Descripcion, Coordenadas = o.Coordenadas, RowColor = idsCelulasSinLider.Contains(o.CelulaId) ? "red" : string.Empty })); }
protected void cmdBuscarConcepto_Click(object sender, DirectEventArgs e) { ManejadorDeCelulas manejadorCelulas = new ManejadorDeCelulas(); int usuarioId = SesionActual.Instance.UsuarioId; List <int> idsCelulasPermitidas = manejadorCelulas.ObtenerCelulasPermitidasPorMiembroComoIds(usuarioId); List <int> idsCelulasSinLider = manejadorCelulas.ObtenerCelulasSinLideresComoCelulas().Select(o => o.CelulaId).ToList <int>(); //Obtemenos todos los conceptos a buscar (separados por espacios) string[] conceptosABuscar = registroConceptoABuscar.Text.Trim().Split(' '); //Guarda los resultados obtenidos de las busquedas IQueryable <object> resultados = null; switch (tipoDeBusqueda) { case ManejadorDeBusquedas.TipoDeObjeto.Celula: { var busqueda = Celula.BuscarV1(conceptosABuscar, idsCelulasPermitidas.Union(idsCelulasSinLider).ToList <int>()); //Dentro de las celulas permitidas para el usuario actual... o aquellas celulas sin lider asignado (para poderlas ASGINAR) resultados = (( from o in SesionActual.Instance.getContexto <IglesiaEntities>().Celula.Where(busqueda) orderby o.Descripcion select new { Id = o.CelulaId, Descripcion = o.Descripcion, RowColor = idsCelulasSinLider.Contains(o.CelulaId) ? "red" : string.Empty })).AsExpandable(); break; } case ManejadorDeBusquedas.TipoDeObjeto.Miembro: { var busqueda = Miembro.BuscarV1(conceptosABuscar, idsCelulasPermitidas.ToList <int>()); //Dentro de las celulas permitidas para el usuario actual... o el mismo usuario actual resultados = (( from o in SesionActual.Instance.getContexto <IglesiaEntities>().Miembro.Where(busqueda) orderby o.Primer_Nombre, o.Segundo_Nombre, o.Apellido_Paterno, o.Apellido_Materno select new { Id = o.MiembroId, Descripcion = o.Primer_Nombre + " " + o.Segundo_Nombre + " " + o.Apellido_Paterno + " " + o.Apellido_Materno + " (" + o.Email + ")" })).AsExpandable(); break; } } if (resultados != null) { int numeroDeResultadosMax = 75; //Es el numero maximo de resultados a regresar al cliente... int numeroDeResultados = resultados.Count(); if (numeroDeResultados > numeroDeResultadosMax) { X.Msg.Alert(Generales.nickNameDeLaApp, string.Format(Resources.Literales.LimiteDeResultadosExcedido, numeroDeResultados, numeroDeResultadosMax)).Show(); numeroDeResultados = numeroDeResultadosMax; } StoreObjetosEncontrados.Cargar(resultados.Take(numeroDeResultadosMax)); registroNumeroDeResultados.Text = string.Format("{0} Resultados", numeroDeResultados); } //Ponemos el foco el el grid... GridDeListadoDeObjetos.Focus(); }
void ICatalogo.Buscar() { List <int> idsGenero = filtroGenero.ObtenerIds(); int? invitadoPorMiembroId = filtroInvitadoPorMiembro.ObtenerId(true); List <int> idsCulto = filtroCulto.ObtenerIds(); List <int> idsRazonDeVisita = filtroRazonDeVisita.ObtenerIds(); List <int> idsRazonParaCerrar = filtroEstatus.ObtenerIds(); List <int> idsCategorias = filtroCategoria.ObtenerIds(); int idMunicipio = filtroMunicipio.ObtenerId(); List <int> idsEstadoCivil = filtroEstadoCivil.ObtenerIds(); int? asignadaACelulaId = filtroCelulaAsignada.ObtenerId(true); int? asignadaAMiembroId = filtroMiembroAsignada.ObtenerId(true); bool verTodasLasBoletasDeConsolidacion = SesionActual.Instance.ValidarPermisoEspecial((int)PermisosEspeciales.VerTodasLasBoletasDeConsolidacion, false); List <int> idsCelulasPermitidas = manejadorCelulas.ObtenerCelulasPermitidasPorMiembroComoIds(SesionActual.Instance.UsuarioId); var query = ( from o in SesionActual.Instance.getContexto <IglesiaEntities>().ConsolidacionBoleta where (o.Id == (filtroId.Number > 0 ? filtroId.Number : o.Id)) && (o.Email.Contains(filtroEmail.Text)) && (o.PrimerNombre.Contains(filtroPrimerNombre.Text)) && (o.SegundoNombre.Contains(filtroSegundoNombre.Text)) && (o.ApellidoPaterno.Contains(filtroApellidoPaterno.Text)) && (o.ApellidoMaterno.Contains(filtroApellidoMaterno.Text)) && (idsGenero.Contains(o.GeneroId) || (idsGenero.Count == 0)) && ((o.InvitadoPorMiembroId == invitadoPorMiembroId) || (invitadoPorMiembroId == null)) && (idsCulto.Contains(o.CultoId) || (idsCulto.Count == 0)) && (idsRazonDeVisita.Contains(o.BoletaRazonVisitaId) || (idsRazonDeVisita.Count == 0)) && (idsRazonParaCerrar.Contains(o.BoletaEstatusId.Value) || (idsRazonParaCerrar.Count == 0)) && (idsCategorias.Contains(o.CategoriaBoletaId) || (idsCategorias.Count == 0)) && (o.UbicacionMunicipioId == (idMunicipio > 0 ? idMunicipio : o.UbicacionMunicipioId)) && ((o.Colonia.Contains(filtroColonia.Text)) || (o.Colonia == null)) && ((o.Direccion.Contains(filtroDireccion.Text)) || (o.Direccion == null)) && (idsEstadoCivil.Contains(o.EstadoCivilId) || (idsEstadoCivil.Count == 0)) && ((o.AsignadaACelulaId == asignadaACelulaId) || (asignadaACelulaId == null)) && ((o.AsignadaAMiembroId == asignadaAMiembroId) || (asignadaAMiembroId == null)) && (((o.TelefonoCasa.Contains(filtroTel.Text)) || (o.TelefonoCasa == null)) || ((o.TelefonoMovil.Contains(filtroTel.Text)) || (o.TelefonoMovil == null)) || ((o.TelefonoTrabajo.Contains(filtroTel.Text)) || (o.TelefonoTrabajo == null)) && ((o.Observaciones.Contains(filtroObservaciones.Text)) || (o.Observaciones == null))) && ((verTodasLasBoletasDeConsolidacion == true) || (idsCelulasPermitidas.Contains(o.AsignadaACelulaId.Value) || o.AsignadaAMiembroId.Value == SesionActual.Instance.UsuarioId)) && (o.Borrado == false) //Registros NO borrados orderby o.PrimerNombre, o.SegundoNombre, o.ApellidoPaterno, o.ApellidoMaterno select new { Boleta = o }); // Agregamos los filtros complejos if (filtroFechaDeCulto.SelectedValue != null) { query = query.Where(o => o.Boleta.FechaDeCulto == filtroFechaDeCulto.SelectedDate); } if (filtroEdad.Value != null) { int edad = Convert.ToInt32(filtroEdad.Number); query = query.Where(o => o.Boleta.Edad == edad); } // Executamos el query, y luego modificamos ciertos campos StoreResultados.Cargar(query.AsEnumerable().Select(o => new { Id = o.Boleta.Id, Email = o.Boleta.Email, PrimerNombre = o.Boleta.PrimerNombre, SegundoNombre = o.Boleta.SegundoNombre, ApellidoPaterno = o.Boleta.ApellidoPaterno, ApellidoMaterno = o.Boleta.ApellidoMaterno, Genero = o.Boleta.Genero.Descripcion, Estatus = ConsolidacionBoleta.Estatus.Lista().Where(x => x.Key == o.Boleta.BoletaEstatusId).FirstOrDefault().Value, InvitadoPorMiembroId = o.Boleta.InvitadoPorMiembroId, Culto = o.Boleta.Culto.Descripcion, FechaDeCulto = o.Boleta.FechaDeCulto, RazonDeVisita = o.Boleta.ConsolidacionBoletaRazonVisita.Descripcion, Municipio = o.Boleta.UbicacionMunicipio.Descripcion, Colonia = o.Boleta.Colonia, Direccion = o.Boleta.Direccion, Nacimiento = o.Boleta.FechaDeNacimiento, Edad = o.Boleta.Edad, EstadoCivil = o.Boleta.EstadoCivil.Descripcion, AsignadaACelula = o.Boleta.AsignadaACelulaId, AsignadaAMiembro = o.Boleta.AsignadaAMiembroId, TelCasa = o.Boleta.TelefonoCasa, TelMovil = o.Boleta.TelefonoMovil, TelTrabajo = o.Boleta.TelefonoTrabajo, Observaciones = o.Boleta.Observaciones, Categoria = o.Boleta.ConsolidacionBoletaCategoria.Descripcion })); registroNumeroDeBoletas.Value = string.Format("Total de boletas: {0}", query.Count()); }
public void BuscarMiembros() { ManejadorDeCelulas manejadorCelulas = new ManejadorDeCelulas(); int usuarioId = SesionActual.Instance.UsuarioId; List <int> idsCelulas = filtroCelula.ObtenerIds(); List <int> idGeneros = filtroGenero.ObtenerIds(); List <int> idsEstadosCiviles = filtroEstadoCivil.ObtenerIds(); int idMunicipio = filtroMunicipio.ObtenerId(); List <int> idsCelulasPermitidas = manejadorCelulas.ObtenerCelulasPermitidasPorMiembroComoIds(usuarioId); List <int> idsCelulasSinLider = manejadorCelulas.ObtenerCelulasSinLideresComoIds(); List <int> idsCelulasEliminadasConMiembros = manejadorCelulas.ObtenerCelulasEliminadasConMiembrosComoIds(); bool registrosBorrados = filtroBorrado.Checked; bool registrosSinCelula = filtroSinCelula.Checked; int? conyugeId = filtroConyuge.ObtenerId(true); //Guarda los resultados obtenidos de las busquedas IQueryable <object> resultados = null; switch (tipoDeMiembro) { case TipoDeMiembroABuscar.Miembro: { resultados = ( from o in SesionActual.Instance.getContexto <IglesiaEntities>().Miembro where ((o.MiembroId == (filtroId.Number > 0 ? filtroId.Number : o.MiembroId)) && ((o.Primer_Nombre.Contains(filtroPrimerNombre.Text)) || (o.Primer_Nombre == null)) && ((o.Segundo_Nombre.Contains(filtroSegundoNombre.Text)) || (o.Segundo_Nombre == null)) && ((o.Apellido_Paterno.Contains(filtroApellidoPaterno.Text)) || (o.Apellido_Paterno == null)) && ((o.Apellido_Materno.Contains(filtroApellidoMaterno.Text)) || (o.Apellido_Materno == null)) && ((o.Email.Contains(filtroEmail.Text)) || (o.Email == null)) && (idsCelulas.Contains(o.CelulaId) || (idsCelulas.Count == 0)) && (idGeneros.Contains(o.GeneroId) || (idGeneros.Count == 0)) && (idsEstadosCiviles.Contains(o.EstadoCivilId) || (idsEstadosCiviles.Count == 0)) && (o.UbicacionMunicipioId == (idMunicipio > 0 ? idMunicipio : o.UbicacionMunicipioId)) && ((o.Colonia.Contains(filtroColonia.Text)) || (o.Colonia == null)) && ((o.Direccion.Contains(filtroDireccion.Text)) || (o.Direccion == null)) && (((o.Tel_Casa.Contains(filtroTel.Text)) || (o.Tel_Casa == null)) || ((o.Tel_Movil.Contains(filtroTel.Text)) || (o.Tel_Movil == null)) || ((o.Tel_Trabajo.Contains(filtroTel.Text)) || (o.Tel_Trabajo == null))) && (o.Fecha_Nacimiento == (filtroFechaDeNacimiento.SelectedDate > DateTime.MinValue ? filtroFechaDeNacimiento.SelectedDate : o.Fecha_Nacimiento)) && ((o.ConyugeId == conyugeId) || (conyugeId == null)) && (o.Borrado == registrosBorrados) && (((idsCelulasPermitidas.Contains(o.CelulaId)) && !registrosSinCelula) || //Dentro de las celulas permitidas para el usuario actual ((idsCelulasSinLider.Contains(o.CelulaId)) || (idsCelulasEliminadasConMiembros.Contains(o.CelulaId)) && registrosSinCelula) || //Dentro de los usuarios cuya celula no tiene lider ((mostrarUsuarioActual) && (o.MiembroId == usuarioId)))) //El mismo usuario actual... orderby o.Primer_Nombre ascending, o.Apellido_Paterno ascending select new { GUID = o.MiembroId, Id = o.MiembroId, PrimerNombre = o.Primer_Nombre, SegundoNombre = o.Segundo_Nombre, ApellidoPaterno = o.Apellido_Paterno, ApellidoMaterno = o.Apellido_Materno, Email = o.Email, Celula = (idsCelulasEliminadasConMiembros.Contains(o.CelulaId) ? string.Empty : o.Celula.Descripcion), EstadoCivil = o.EstadoCivil.Descripcion, Municipio = o.UbicacionMunicipio.Descripcion, Colonia = o.Colonia, TelCasa = o.Tel_Casa, TelMovil = o.Tel_Movil, TelTrabajo = o.Tel_Trabajo, Nacimiento = o.Fecha_Nacimiento, AsisteIglesia = o.AsisteIglesia, Genero = o.Genero.Descripcion, RowColor = (idsCelulasSinLider.Contains(o.CelulaId) || idsCelulasEliminadasConMiembros.Contains(o.CelulaId)) ? "red" : string.Empty }); break; } case TipoDeMiembroABuscar.ServidorCoordinador: { resultados = ( from o in SesionActual.Instance.getContexto <IglesiaEntities>().ServidorCoordinador where ((o.Miembro.MiembroId == (filtroId.Number > 0 ? filtroId.Number : o.Miembro.MiembroId)) && ((o.Miembro.Primer_Nombre.Contains(filtroPrimerNombre.Text)) || (o.Miembro.Primer_Nombre == null)) && ((o.Miembro.Segundo_Nombre.Contains(filtroSegundoNombre.Text)) || (o.Miembro.Segundo_Nombre == null)) && ((o.Miembro.Apellido_Paterno.Contains(filtroApellidoPaterno.Text)) || (o.Miembro.Apellido_Paterno == null)) && ((o.Miembro.Apellido_Materno.Contains(filtroApellidoMaterno.Text)) || (o.Miembro.Apellido_Materno == null)) && ((o.Miembro.Email.Contains(filtroEmail.Text)) || (o.Miembro.Email == null)) && (idsCelulas.Contains(o.Miembro.CelulaId) || (idsCelulas.Count == 0)) && (idGeneros.Contains(o.Miembro.GeneroId) || (idGeneros.Count == 0)) && (idsEstadosCiviles.Contains(o.Miembro.EstadoCivilId) || (idsEstadosCiviles.Count == 0)) && (o.Miembro.UbicacionMunicipioId == (idMunicipio > 0 ? idMunicipio : o.Miembro.UbicacionMunicipioId)) && ((o.Miembro.Colonia.Contains(filtroColonia.Text)) || (o.Miembro.Colonia == null)) && ((o.Miembro.Direccion.Contains(filtroDireccion.Text)) || (o.Miembro.Direccion == null)) && (((o.Miembro.Tel_Casa.Contains(filtroTel.Text)) || (o.Miembro.Tel_Casa == null)) || ((o.Miembro.Tel_Movil.Contains(filtroTel.Text)) || (o.Miembro.Tel_Movil == null)) || ((o.Miembro.Tel_Trabajo.Contains(filtroTel.Text)) || (o.Miembro.Tel_Trabajo == null))) && (o.Miembro.Fecha_Nacimiento == (filtroFechaDeNacimiento.SelectedDate > DateTime.MinValue ? filtroFechaDeNacimiento.SelectedDate : o.Miembro.Fecha_Nacimiento)) && (o.Miembro.Borrado == registrosBorrados) && //Registros NO borrados (o.Borrado == false)) //Registros NO borrados orderby o.Miembro.Primer_Nombre ascending, o.Miembro.Apellido_Paterno ascending select new { GUID = o.Id, Id = o.Miembro.MiembroId, PrimerNombre = o.Miembro.Primer_Nombre, SegundoNombre = o.Miembro.Segundo_Nombre, ApellidoPaterno = o.Miembro.Apellido_Paterno, ApellidoMaterno = o.Miembro.Apellido_Materno, Email = o.Miembro.Email, Celula = o.Miembro.Celula.Descripcion, EstadoCivil = o.Miembro.EstadoCivil.Descripcion, Municipio = o.Miembro.UbicacionMunicipio.Descripcion, Colonia = o.Miembro.Colonia, TelCasa = o.Miembro.Tel_Casa, TelMovil = o.Miembro.Tel_Movil, TelTrabajo = o.Miembro.Tel_Trabajo, Nacimiento = o.Miembro.Fecha_Nacimiento, AsisteIglesia = o.Miembro.AsisteIglesia, Genero = o.Miembro.Genero.Descripcion }); break; } case TipoDeMiembroABuscar.ServidorCapitan: { resultados = ( from o in SesionActual.Instance.getContexto <IglesiaEntities>().ServidorCapitan where ((o.Miembro.MiembroId == (filtroId.Number > 0 ? filtroId.Number : o.Miembro.MiembroId)) && ((o.Miembro.Primer_Nombre.Contains(filtroPrimerNombre.Text)) || (o.Miembro.Primer_Nombre == null)) && ((o.Miembro.Segundo_Nombre.Contains(filtroSegundoNombre.Text)) || (o.Miembro.Segundo_Nombre == null)) && ((o.Miembro.Apellido_Paterno.Contains(filtroApellidoPaterno.Text)) || (o.Miembro.Apellido_Paterno == null)) && ((o.Miembro.Apellido_Materno.Contains(filtroApellidoMaterno.Text)) || (o.Miembro.Apellido_Materno == null)) && ((o.Miembro.Email.Contains(filtroEmail.Text)) || (o.Miembro.Email == null)) && (idsCelulas.Contains(o.Miembro.CelulaId) || (idsCelulas.Count == 0)) && (idGeneros.Contains(o.Miembro.GeneroId) || (idGeneros.Count == 0)) && (idsEstadosCiviles.Contains(o.Miembro.EstadoCivilId) || (idsEstadosCiviles.Count == 0)) && (o.Miembro.UbicacionMunicipioId == (idMunicipio > 0 ? idMunicipio : o.Miembro.UbicacionMunicipioId)) && ((o.Miembro.Colonia.Contains(filtroColonia.Text)) || (o.Miembro.Colonia == null)) && ((o.Miembro.Direccion.Contains(filtroDireccion.Text)) || (o.Miembro.Direccion == null)) && (((o.Miembro.Tel_Casa.Contains(filtroTel.Text)) || (o.Miembro.Tel_Casa == null)) || ((o.Miembro.Tel_Movil.Contains(filtroTel.Text)) || (o.Miembro.Tel_Movil == null)) || ((o.Miembro.Tel_Trabajo.Contains(filtroTel.Text)) || (o.Miembro.Tel_Trabajo == null))) && (o.Miembro.Fecha_Nacimiento == (filtroFechaDeNacimiento.SelectedDate > DateTime.MinValue ? filtroFechaDeNacimiento.SelectedDate : o.Miembro.Fecha_Nacimiento)) && (o.Miembro.Borrado == registrosBorrados) && //Registros NO borrados (o.Borrado == false)) //Registros NO borrados orderby o.Miembro.Primer_Nombre ascending, o.Miembro.Apellido_Paterno ascending select new { GUID = o.Id, Id = o.Miembro.MiembroId, PrimerNombre = o.Miembro.Primer_Nombre, SegundoNombre = o.Miembro.Segundo_Nombre, ApellidoPaterno = o.Miembro.Apellido_Paterno, ApellidoMaterno = o.Miembro.Apellido_Materno, Email = o.Miembro.Email, Celula = o.Miembro.Celula.Descripcion, EstadoCivil = o.Miembro.EstadoCivil.Descripcion, Municipio = o.Miembro.UbicacionMunicipio.Descripcion, Colonia = o.Miembro.Colonia, TelCasa = o.Miembro.Tel_Casa, TelMovil = o.Miembro.Tel_Movil, TelTrabajo = o.Miembro.Tel_Trabajo, Nacimiento = o.Miembro.Fecha_Nacimiento, AsisteIglesia = o.Miembro.AsisteIglesia, Genero = o.Miembro.Genero.Descripcion }); break; } case TipoDeMiembroABuscar.AlabanzaMiembro: { resultados = ( from o in SesionActual.Instance.getContexto <IglesiaEntities>().AlabanzaMiembro where ((o.Miembro.MiembroId == (filtroId.Number > 0 ? filtroId.Number : o.Miembro.MiembroId)) && ((o.Miembro.Primer_Nombre.Contains(filtroPrimerNombre.Text)) || (o.Miembro.Primer_Nombre == null)) && ((o.Miembro.Segundo_Nombre.Contains(filtroSegundoNombre.Text)) || (o.Miembro.Segundo_Nombre == null)) && ((o.Miembro.Apellido_Paterno.Contains(filtroApellidoPaterno.Text)) || (o.Miembro.Apellido_Paterno == null)) && ((o.Miembro.Apellido_Materno.Contains(filtroApellidoMaterno.Text)) || (o.Miembro.Apellido_Materno == null)) && ((o.Miembro.Email.Contains(filtroEmail.Text)) || (o.Miembro.Email == null)) && (idsCelulas.Contains(o.Miembro.CelulaId) || (idsCelulas.Count == 0)) && (idGeneros.Contains(o.Miembro.GeneroId) || (idGeneros.Count == 0)) && (idsEstadosCiviles.Contains(o.Miembro.EstadoCivilId) || (idsEstadosCiviles.Count == 0)) && (o.Miembro.UbicacionMunicipioId == (idMunicipio > 0 ? idMunicipio : o.Miembro.UbicacionMunicipioId)) && ((o.Miembro.Colonia.Contains(filtroColonia.Text)) || (o.Miembro.Colonia == null)) && ((o.Miembro.Direccion.Contains(filtroDireccion.Text)) || (o.Miembro.Direccion == null)) && (((o.Miembro.Tel_Casa.Contains(filtroTel.Text)) || (o.Miembro.Tel_Casa == null)) || ((o.Miembro.Tel_Movil.Contains(filtroTel.Text)) || (o.Miembro.Tel_Movil == null)) || ((o.Miembro.Tel_Trabajo.Contains(filtroTel.Text)) || (o.Miembro.Tel_Trabajo == null))) && (o.Miembro.Fecha_Nacimiento == (filtroFechaDeNacimiento.SelectedDate > DateTime.MinValue ? filtroFechaDeNacimiento.SelectedDate : o.Miembro.Fecha_Nacimiento)) && (o.Miembro.Borrado == registrosBorrados) && //Registros NO borrados (o.Borrado == false)) //Registros NO borrados orderby o.Miembro.Primer_Nombre ascending, o.Miembro.Apellido_Paterno ascending select new { GUID = o.Id, Id = o.Miembro.MiembroId, PrimerNombre = o.Miembro.Primer_Nombre, SegundoNombre = o.Miembro.Segundo_Nombre, ApellidoPaterno = o.Miembro.Apellido_Paterno, ApellidoMaterno = o.Miembro.Apellido_Materno, Email = o.Miembro.Email, Celula = o.Miembro.Celula.Descripcion, EstadoCivil = o.Miembro.EstadoCivil.Descripcion, Municipio = o.Miembro.UbicacionMunicipio.Descripcion, Colonia = o.Miembro.Colonia, TelCasa = o.Miembro.Tel_Casa, TelMovil = o.Miembro.Tel_Movil, TelTrabajo = o.Miembro.Tel_Trabajo, Nacimiento = o.Miembro.Fecha_Nacimiento, AsisteIglesia = o.Miembro.AsisteIglesia, Genero = o.Miembro.Genero.Descripcion }); break; } } if (resultados != null) { //int numeroDeResultadosMax = 75; //Es el numero maximo de resultados a regresar al cliente... //int numeroDeResultados = resultados.Count(); //if (numeroDeResultados > numeroDeResultadosMax) { X.Msg.Alert(Generales.nickNameDeLaApp, string.Format(Resources.Literales.LimiteDeResultadosExcedido, numeroDeResultados, numeroDeResultadosMax)).Show(); } //StoreResultados.Cargar(resultados.Take(numeroDeResultadosMax)); StoreResultados.Cargar(resultados); } }
private void mostrarAnunciosYAlertas() { ManejadorDeCelulas manejadorCelulas = new ManejadorDeCelulas(); int miembroId = SesionActual.Instance.UsuarioId; List <int> idsCelulasPermitidas = manejadorCelulas.ObtenerCelulasPermitidasPorMiembroComoIds(SesionActual.Instance.UsuarioId); DateTime fechaInicioDeSemana = DateTime.Now.GetFirstDateOfWeek(); DateTime fechaFinDeSemana = DateTime.Now.GetLastDateOfWeek(); IglesiaEntities contexto = SesionActual.Instance.getContexto <IglesiaEntities>(); // Obtenemos las boletas de consolidacion sin reportes en esta semana int numDeBoletasSinReporteSemanal = (from o in contexto.ConsolidacionBoleta where o.Borrado == false && o.BoletaEstatusId > 100 && o.AsignadaACelulaId != null && idsCelulasPermitidas.Contains(o.AsignadaACelulaId.Value) && !contexto.ConsolidacionBoletaReporte.Any(t => t.Borrado == false && t.ConsolidacionBoletaId == o.Id && t.Creacion >= fechaInicioDeSemana && t.Creacion <= fechaFinDeSemana) select o).Count(); if (numDeBoletasSinReporteSemanal > 0) { generarAlerta(string.Format("Tienes {0} boleta(s) de consolidación sin reportar esta semana!", numDeBoletasSinReporteSemanal)); } // Obtenemos las celulas directas que no tienen asistencia registrada esta semana int numDeCelulasSinAsistenciaSemanal = (from o in contexto.Celula where o.Borrado == false && contexto.CelulaLider.Any(t => t.Borrado == false && t.CelulaId == o.CelulaId && t.MiembroId == miembroId ) && !contexto.CelulaMiembroAsistencia.Any(t => t.CelulaId == o.CelulaId && t.Dia >= fechaInicioDeSemana.Day && t.Mes >= fechaInicioDeSemana.Month && t.Anio >= fechaInicioDeSemana.Year && t.Dia <= fechaFinDeSemana.Day && t.Mes <= fechaFinDeSemana.Month && t.Anio <= fechaFinDeSemana.Year ) && !contexto.CelulaCancelacionAsistencia.Any(t => t.CelulaId == o.CelulaId && t.Dia >= fechaInicioDeSemana.Day && t.Mes >= fechaInicioDeSemana.Month && t.Anio >= fechaInicioDeSemana.Year && t.Dia <= fechaFinDeSemana.Day && t.Mes <= fechaFinDeSemana.Month && t.Anio <= fechaFinDeSemana.Year ) select o).Count(); if (numDeCelulasSinAsistenciaSemanal > 0) { generarAlerta("Esta semana no has registrado asistencia en todas tus células!"); } }