Preciso inserir um array no banco via Node JS, segue o código abaixo. Ao fazer isso diretamente conforme bloco 1 não tenho nenhum problema. Mas ao tentar inserir via req.body no postman os dados ficam como undefined e na query consequentemente nulos. Alguem poderia me ajudar?
[
{
"os": 123456789,
"dt_saida": "2021-03-09T03:00:00.000Z",
"patrimonio": "12912 | 97117 ",
"descricao": "NOBREAK 600VA",
"modelo": "NOBREAK MCM UPS 600VA STD TI PRETO",
"dt_cadastro": "2021-05-31"
},
{
"os": 123456789,
"dt_saida": "2021-03-09T03:00:00.000Z",
"patrimonio": "12912 | 97117 ",
"descricao": "NOBREAK 600VA",
"modelo": "NOBREAK MCM UPS 600VA STD TI PRETO",
"dt_cadastro": "2021-05-31"
}
]
{
// POST
router.post("/item", (req, res, next) => {
mysql.getConnection((error, conn) => {
if (error) {
return res.status(500).send({ error: error });
}
// Bloco 1
const mockRecords = [
[
46085,
"2021-03-09 00:00:00",
"12912 | 97117 ",
"NOBREAK 600VA",
"NOBREAK MCM UPS 600VA STD TI PRETO",
"2021-05-31 00:00:00",
],
[
46086,
"2021-03-09 00:00:00",
"12912 | 97117 ",
"NOBREAK 600VA",
"NOBREAK MCM UPS 600VA STD TI PRETO",
"2021-05-31 00:00:00",
],
];
// Bloco 2
let bodyRecords = [
[ req.body.os,
req.body.dt_saida,
req.body.patrimonio,
req.body.descricao,
req.body.modelo,
req.body.dt_cadastro,
]
,
];
let arrayNovo = [];
for (let index = 0; index < bodyRecords.length; index++) {
arrayNovo.push(bodyRecords);
}
console.log(bodyRecords);
const sql =
"INSERT into item (os, dt_saida, patrimonio, descricao, modelo, dt_cadastro) values ?";
conn.query(sql, arrayNovo, (error, resultado, field) => {
conn.release();
if (error) {
return res.status(500).send({ error: error });
}
res.status(201).send({
mensagem: "Inserido com sucesso",
id_feedback: resultado.insertId,
});
});
});
});