Beispiel #1
0
        public async Task <IActionResult> ListarPeriodos(ProcurarPeriodo filtro)
        {
            if (filtro == null)
            {
                return(new FeedbackResult(new Feedback(TipoFeedback.Atencao, "As informações para a procura não foram preenchidas.", tipoAcao: TipoAcaoAoOcultarFeedback.Ocultar)));
            }

            PeriodoOrdenarPor ordenarPor;

            switch (_datatablesHelper.OrdenarPor)
            {
            case "nome":
                ordenarPor = PeriodoOrdenarPor.Nome;
                break;

            case "dataInicio":
                ordenarPor = PeriodoOrdenarPor.DataInicio;
                break;

            default:
                ordenarPor = PeriodoOrdenarPor.DataFim;
                break;
            }

            filtro.Nome           = _datatablesHelper.PalavraChave;
            filtro.OrdenarPor     = ordenarPor;
            filtro.OrdenarSentido = _datatablesHelper.OrdenarSentido;
            filtro.PaginaIndex    = _datatablesHelper.PaginaIndex;
            filtro.PaginaTamanho  = _datatablesHelper.PaginaTamanho;

            var saida = await _proxy.ProcurarPeriodos(filtro);

            if (!saida.Sucesso)
            {
                return(new FeedbackResult(new Feedback(TipoFeedback.Erro, "Não foi possível obter a relação de períodos cadastrados.", saida.Mensagens)));
            }

            return(new DatatablesResult(_datatablesHelper.Draw, saida.Retorno.TotalRegistros, saida.Retorno.Registros?.Select(x => new {
                id = x.Id,
                nome = x.Nome,
                dataInicio = x.DataInicio.ToString("dd/MM/yyyy HH:mm:ss"),
                dataFim = x.DataFim.ToString("dd/MM/yyyy HH:mm:ss"),
                quantidadeDias = x.QuantidadeDias
            })));
        }
Beispiel #2
0
        public async Task <IActionResult> ObterPeriodosPorPalavraChave(string palavraChave)
        {
            var filtro = new ProcurarPeriodo
            {
                Nome           = palavraChave,
                OrdenarPor     = PeriodoOrdenarPor.DataInicio,
                OrdenarSentido = "DESC",
                PaginaIndex    = 1,
                PaginaTamanho  = 10
            };

            var saida = await _proxy.ProcurarPeriodos(filtro);

            return(new JsonResult(saida.Retorno.Registros?.Select(x => new
            {
                id = x.Id,
                nome = x.Nome,
                dataInicio = x.DataInicio.ToString("dd/MM/yyyy HH:mm:ss"),
                dataFim = x.DataFim.ToString("dd/MM/yyyy HH:mm:ss"),
                quantidadeDias = x.QuantidadeDias
            }).ToArray()));
        }