Я пытаюсь запустить функцию updatefirst, но снова и снова получаю ту же ошибку, даже когда я передаю предопределенное значение в функцию разрешения в get_plo_amount. Строка console.log (result) запускается, которая показывает, что не было проблем в получение данных. Я не знаю, что я делаю не так :(. Любая помощь будет оценена. Спасибо.
const get_plo_amount = function(p){
plo.findOne({phone : p}).then((result) => {
console.log(result) //this line is running
return new Promise((resolve,reject) => {
resolve(result.daily_amount)
})
}).catch((e) => {
console.log("catch")
return new Promise((resolve,reject) => {
reject(e)
})
})
}
//updatefirst
const updatefirst = function(plo,date){
driver.find({associated_plo : plo}).then((result) => {
//console.log(result)//delete this
get_plo_amount(plo).then((amount) => {
console.log(amount)
var arr
for(i=0;i<result.length;i++){
var pdue = parseInt(result[i].balance) + amount
var d_obj = {
driver : result[i].name,
phone : result[i].phone,
auto_number : result[i].auto_number,
amount : pdue,
}
// console.log(d_obj)//delete this
arr[i] = d_obj
}
const obj = {
associated_plo : plo,
date : date,
earning : "0",
payments : arr
}
const t = new transactions(obj)
t.save().then(() => {
return "success"
}).catch((e) => {
return e
})
}).catch((e) => {
console.log(e)
return e
})
}).catch((e) => {
console.log(e)
return e
})
}