Gostaria de saber se esta implementação de transacao manual está correta?
Controller.js
async criaNovo(req, res) {
const transacao = await sequelize.transaction();
const dadosParaCriacao = req.body;
try {
const novoRegistroCriado = await this.entidadeService.criaRegistro(dadosParaCriacao, transacao);
await transacao.commit();
return res.status(200).json(novoRegistroCriado);
} catch (erro) {
await transacao.rollback();
return res.status(500).json({ erro: erro.message });
}
}
Service.js:
async criaRegistro(dadosDoRegistro, transacao) {
return dataSource[this.model].create(dadosDoRegistro, {transaction: transacao});
}
Só fiz essa modificações dentre todos os arquivos. Isso está correto e bem estruturado?