Enfileira a geração de um relatório
POST/user/report
Cria um pedido de geração de relatório para o tipo (IDTypeCompanyReport) e filtros (Query) informados. O processamento é assíncrono: o handler insere o registro em UserReport com status pendente, envia a mensagem para a fila SQS reports.fifo (com MessageGroupId igual ao subdomínio da empresa, garantindo serialização por empresa) e devolve a lista atualizada de relatórios do usuário. O worker consome a fila, executa a query, gera o arquivo, sobe para o storage e atualiza Link no registro.
Duplicidade: o sistema bloqueia se já existe um relatório do mesmo tipo, com a mesma query, do mesmo usuário, ainda sem Link e com IDTypeStatusUserReport=1 (pendente), criado nas últimas 3 horas — para evitar gerar o mesmo relatório duas vezes em paralelo. Mensagem: Relatório já esta em processamento, favor aguardar.
Quando SendEmail=1, o worker envia o link do arquivo para o e-mail do usuário ao terminar a geração.
Request
Responses
- 200
- 400
- 500
Relatório enfileirado. Retorna o histórico atualizado de relatórios do usuário (mesmo formato de GET /user/report).
Erros (prefixo [BadRequest]):
Empresa não existeRelatório já esta em processamento, favor aguardarProblema ao gerar relatório(falha ao enfileirar na SQS)
Erro interno (prefixo Error:).