Tenho uma página de solicitação de orçamento, nesta página eu tenho um campo escondido chamado "numeroOrcamento" e uma rotina que a cada 2 segundos roda na página com setInterval() para verificar qual é o próximo número de orçamento deve ser gerado para aquele formulário. Mas talvez, essa não seja a melhor abordagem.
O que eu considero a melhor abordagem seria, que ao clicar no botão submit do formulário a aplicação fizesse o request perguntando qual é o próximo número de orçamento, pois assim eu não ficaria onerando o BD do site com essas requisições.
Eu tentei primeiramente criando um um evento de Click para o botão, mas como a chamada ao Web Module resulta numa Promisse, às vezes, isso causa problemas, porque a promisse pode não ter sido totalmente executada e aí eu não tenho o número do orçamento que eu preciso e o submit do form já aconteceu.
Eu também tentei via Hook, no beforeInsert ali funcionou muito bem, mas o e-mail enviado ao cliente vali sem a informação de número de Orçamento.
Aí fica a pergunta, é possível submeter o form apenas se ele uma determinada condição for verdadeira, no meu caso, se eu conseguir gerar o número do orçamento?
Como interceptar o click no botão para que eu adicione meu código e posteriormente liberar a aplicação para gravar no BD e mandar email para o cliente?