Это моя работа cron api:
var job = new cronJob('* * * * * *', function () {
Draft.find().then(data => {
var finalData = data;
Profsms.create({
phoneno: draftData.contacts.gsm,
sender: senderName,
message: message
}).then(function (data) {
if (data) {
console.log("successfully moved in profsms mysql");
} else {
console.log("failed");
}
})
});
}, function () {
console.log('DelCron Job finished.');
}, true, 'Asia/Calcutta');
В переменной finalData я получаю этот тип json-объекта:
{
"draftType" : "contactdraft",
"scheduledTime" : null,
"senderdata" : "",
"draftData" : {
"contacts" : [
{
"updatedAt" : "2017-12-07T12:09:10.000Z",
"createdAt" : "2017-12-07T12:09:10.000Z",
"data3" : "",
"data2" : "",
"data1" : "",
"country" : "",
"url" : "",
"company" : "",
"email" : "[email protected]",
"dob" : null,
"postcode" : "",
"region" : "",
"city" : "",
"street" : "",
"lastName" : "Sameer",
"firstName" : "Mohamed",
"gsm" : "123344",
"id" : 12
},
{
"updatedAt" : "2017-12-07T12:09:58.000Z",
"createdAt" : "2017-12-07T12:09:58.000Z",
"data3" : "",
"data2" : "",
"data1" : "",
"country" : "",
"url" : "",
"company" : "",
"email" : "[email protected]",
"dob" : null,
"postcode" : "",
"region" : "",
"city" : "",
"street" : "",
"lastName" : "Pandiyan",
"firstName" : "Ganesh",
"gsm" : "1233",
"id" : 13
}
]
},
"senderName" : "ifelse",
"message" : "hey...",
"draftName" : "December 9",
}
Я хочу вставить номер gsm из draftData и senderName и значений сообщений в db
Хотите сохранить
phoneno: draftData.contacts.gsm,
sender: senderName,
message: message
Как это сделать?
Я использую sequelize ORM с mysql.
Можете ли вы помочь мне решить эту проблему с помощью for или foreach или любой другой функции в javascript?
Я, наконец, написал свой собственный код и получил ответ:
var job = new cronJob('* * * * * *', function () {
Draft.find().then(data => {
var finalData = data;
var array = [];
for (var i = 0; i < finalData.length; i++) {
for (var j = 0; j < finalData[i].draftData.contacts.length; j++) {
array.push({
phoneno: finalData[i].draftData.contacts[j].gsm,
sender: finalData[i].senderName,
message: finalData[i].message
})
}
}
Profsms.bulkCreate(array).then(function (data) {
if (data) {
console.log("successfully moved in profsms mysql");
} else {
console.log("failed");
}
})
});
}, function () {
console.log('DelCron Job finished.');
}, true, 'Asia/Calcutta');
Это хороший подход?