コード例 #1
0
        public async Task <QueryResponse <EventoCalendario> > ConsultarAsync(EncuestaGamEventoCalendarioConsultar modeloConsultar,
                                                                             IRequest peticion)
        {
            var alivioEmocional = GetValores(peticion).AlivioEmocionalParametros;
            var sesion          = peticion.GetUserSession();

            modeloConsultar.LineaDeAccionId.SiEsCero_O_NullEntonces(() => modeloConsultar.LineaDeAccionId = alivioEmocional.LineaDeAccionId);
            modeloConsultar.EncargadoId.SiEsCero_O_NullEntonces(() => modeloConsultar.EncargadoId         = sesion.GetPersonaId());
            modeloConsultar.ProyectoId.SiEsCero_O_NullEntonces(() => modeloConsultar.ProyectoId           = alivioEmocional.ProyectoId);
            //var filtro = await ConstruirFiltro(modeloConsultar, peticion,sesion);

            return(await repositorio.ConsultarAsync(modeloConsultar, peticion.GetRequestParams()));
        }
コード例 #2
0
        async Task <Expression <Func <EventoCalendario, bool> > > ConstruirFiltro(EncuestaGamEventoCalendarioConsultar modelo, IRequest peticion, CustomUserSession sesion)
        {
            IList <int> regionalIds = new List <int>();

            if (modelo.EncargadoId == sesion.GetPersonaId())
            {
                regionalIds = sesion.Regionales.ConvertAll(x => x.Id);
            }
            else
            {
                var regionales = peticion.TryResolve <IRegionalGestorConsultas>();
                regionalIds = await regionales.ConsultarRegionalIdsAsignadosAsync(modelo.EncargadoId.Value);
            }

            Expression <Func <EventoCalendario, bool> > filtro = entidad => regionalIds.Contains(entidad.RegionalId);

            return(filtro);
        }
コード例 #3
0
 public async Task <QueryResponse <EventoCalendario> > ConsultarAsync(EncuestaGamEventoCalendarioConsultar modelo,
                                                                      Dictionary <string, string> peticion,
                                                                      Expression <Func <EventoCalendario, bool> > filtro = null)
 {
     return(await repositorio.ConsultarAsync(modelo, peticion, filtro));
 }
コード例 #4
0
 public QueryResponse <EventoCalendario> Get(EncuestaGamEventoCalendarioConsultar modelo)
 {
     return(Gestor.ConsultarAsync(modelo, Request).Result);
 }