コード例 #1
0
        public IQueryable <InformeRendimentoDTO> Execute(InformeFiltro filtro)
        {
            var consulta = from p in _db.Processamentos
                           where p.DataRegistro >= filtro.DataInicio && p.DataRegistro <= filtro.DataFinal
                           orderby p.Id
                           select new InformeRendimentoDTO()
            {
                Codigo       = p.Id,
                Ano          = p.AnoExercicio,
                Data         = p.DataRegistro,
                Descricao    = p.Descricao,
                IdSituacao   = p.SituacaoProcessamento,
                Contribuinte = new ContribuinteDTO()
                {
                    IdTipo = p.Contribuintes.FirstOrDefault().TipoContribuinteId
                }
            };

            if (filtro.AnoExercicio > 0)
            {
                consulta = consulta.Where(c => c.Ano == filtro.AnoExercicio);
            }

            if (filtro.TipoContribuinte != TipoContribuinte.Todos)
            {
                consulta = consulta.Where(c => c.Contribuinte.IdTipo == (short)filtro.TipoContribuinte);
            }

            return(consulta);
        }
コード例 #2
0
        public static InformeFiltro Converter(ConsultaInformeVM vm)
        {
            var filtro = new InformeFiltro()
            {
                DataInicio       = vm.DataInicio,
                DataFinal        = vm.DataFinal.AddSeconds(86399),
                AnoExercicio     = vm.AnoExercicio,
                TipoContribuinte = vm.TipoContribuinte
            };

            return(filtro);
        }