Я новичок в JavaScript, NodeJS и Express.На самом деле, я импортировал массив счетов из модели аккаунта, и я хочу создать новую транзакцию.
Однако мне не удалось получить фактический номер счета из массива счетов и использовать его в моем новом объекте транзакции.Когда я пытаюсь получить к нему доступ, я получаю неопределенное.Я бы оценил вашу помощь.
Спасибо.
Модель моей учетной записи.
export default []
Контроллер моих учетных записей
import accounts from '../models/account';
class Account{
static createAccount(req, res){
let m = moment();
let real_date = m.format('dddd, MMMM Do YYYY, h:mm a');
const newAccount = {
created_on: real_date,
account_number: accounts.length + 1,
owner: req.body.owner,
type: req.body.type,
status: req.body.status,
balance: parseFloat(req.body.balance)
}
accounts.push(newAccount);
res.status(201).send({
status: 201,
data: newAccount
})
}
}
Модель транзакции
export default []
Контроллер транзакций
import accounts from '../models/account/'
class Transaction {
static debitAccount(req, res) {
let m = moment();
const created_on = m.format('dddd, MMMM Do YYYY, h:mm a');
const {
amount,
old_balance,
transaction_type,
cashier
} = req.body;
let x, y, sum;
x = amount
y = old_balance;
sum = parseFloat(x) + parseFloat(y);
accounts.forEach((account) => {
const account_id = account.account_number;
});
const newDebit = {
created_on: created_on,
transaction_id: transactions.length + 1,
account_number: account_id,
cashier: parseInt(cashier),
transaction_type: transaction_type,
old_balance: parseFloat(old_balance),
amount: parseFloat(amount),
new_balance: sum
}
console.log('New Debit', newDebit);
transactions.push(newDebit);
res.status(201).send({
status: 201,
message: 'Amount successfully debited!',
data: newDebit
})
}
NB: Как вы можете видеть, я использовал account_number вместо id.