Мне нужно понять правильный способ каскадных обещаний с помощью мангусты.
Моя функция createCustomerBills
с получением списка идентификаторов клиентов, для которых мне нужно создать простой счет.
Вот код:
const createCustomerBill = (customer) => {
return BillModel.create({
customer_id: customer.id,
value: 100
});
}
const createCustomerBills => (customerIds) => {
let criteria = {
_id: { $in: customerIds }
};
return CustomerModel.find(criteria)
.then(result => {
return result.map(customer => {
return createCustomerBill(customer);
}
})
.then(result => {
return CustomerModel.update(
{ _id: customer.id },
{ status: "BillCreated" }
);
});
}
Вот шаги:
1. Получить список всех клиентов
2. Для каждого клиента создайте счет
3. Для каждого созданного счета обновите статус клиента
Мне нужен совет, если это правильный способ сделать это и возможные недостатки.