У меня есть узел js, и я хочу сгенерировать код для кода_ действия, я хочу сгенерировать такой код: LA0000000001, LA0000000002, LA0000000003 и т. Д. Последовательно. Я пробовал вот так, но в некоторых случаях, когда я отправляю 2 действия одновременно, одно из действий будет потеряно и не будет отправлено, иногда также код, который вводится дважды и вызывает следующее действие, не может быть отправлено. Что не так с моим кодом? Спасибо за помощь:)
this.insertMasterActivity = function(req, res) {
var id = uuidv1();
var activity_kode = null;
var activity_subject = req.body.activity_subject;
var created = new Date();
connection.acquire(function(err, con) {
con.query('select activity_kode from activities order by created desc limit 1', function(err, result) {
con.release();
if (err) {
res.send({ status: 400, message: 'Activities Failed' });
} else {
// for generate activity_kode
if (result.length != 0) {
var test = result[0].activity_kode;
} else {
var test = "LA00000000000"
}
var pieces = test.split('LA');
var lastNum = pieces[1];
lastNum = parseInt(lastNum, 10);
lastNum++;
activity_kode = "LA" + ("00000000000" + lastNum).substr(-10);
console.log(activity_kode);
connection.acquire(function(err, con) {
con.query('INSERT INTO activities (id, activity_kode,activity_subject,created) VALUES (?,?,?,?)', [id, activity_kode, activity_subject, created], function(err, result) {
con.release();
// console.log(err);
if (err) {
res.send({ status: 400, message: 'creation failed' });
} else {
res.send({ status: 200, message: 'created successfully' });
}
});
});
};
});
});
}