public IActionResult Relatorio([FromQuery] FiltroServicoPrestadoDto filtroServicoPrestadoDto)
        {
            var idFornecedor = _userContext.ObterIdFornecedorLogado(HttpContext.User);

            if (!idFornecedor.HasValue || idFornecedor == default(long))
            {
                return(StatusCode(StatusCodes.Status405MethodNotAllowed, "Usuário não encontrado ou não é fornecedor!"));
            }

            filtroServicoPrestadoDto.Fornecedor = idFornecedor.Value;
            return(Ok(_servicoPrestadoService.ObterRelatorio(filtroServicoPrestadoDto)));
        }
Esempio n. 2
0
        public IEnumerable <RelatorioServicoPrestadoDto> ObterRelatorio(FiltroServicoPrestadoDto parametroFiltroRelatorio)
        {
            var queryServicoPrestado = _repository
                                       .ReadOnlyQuery <ServicoPrestado>()
                                       .Include(x => x.Fornecedor)
                                       .Include(x => x.Cliente)
                                       .Where(servico => servico.IdFornecedor == parametroFiltroRelatorio.Fornecedor);

            return(_filtroBuilderFactory
                   .CriarServicoPrestadoFiltroBuilder(queryServicoPrestado, parametroFiltroRelatorio)
                   .AplicarTodosFiltros()
                   .GetQueryable()
                   .AsEnumerable()
                   .Select(servico => new RelatorioServicoPrestadoDto
            {
                Bairro = servico.Cliente.Bairro,
                Cliente = $"{servico.IdCliente} - {servico.Cliente.Nome}",
                Cidade = servico.Cliente.Cidade,
                Estado = servico.Cliente.Estado,
                TipoServico = $"{(int)servico.TipoServico} - {servico.TipoServico.GetDescription()}",
                DataAtendimento = servico.DataAtendimento.ToString("dd/MM/yyyy"),
                Valor = $"R$ {string.Format("{0:0.00}", servico.ValorServico)}"
            }));
        }
Esempio n. 3
0
 public IServicoPrestadoFiltroBuilder CriarServicoPrestadoFiltroBuilder(IQueryable <ServicoPrestado> query, FiltroServicoPrestadoDto parametroFiltroRelatorio) =>
 new ServicoPrestadoFiltroBuilder(query, parametroFiltroRelatorio);
 public ServicoPrestadoFiltroBuilder(IQueryable <ServicoPrestado> query, FiltroServicoPrestadoDto parametroFiltroRelatorio)
 {
     _parametroFiltroRelatorio = parametroFiltroRelatorio;
     _query = query;
 }