From 029ba61098ca82a21c3364dd10e10be37e7cdea1 Mon Sep 17 00:00:00 2001 From: "Tamashevich, Dzmitry" Date: Wed, 25 Nov 2020 21:31:04 +0300 Subject: [PATCH] changing invoice request --- media-store/srv/browse-invoices-service.js | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/media-store/srv/browse-invoices-service.js b/media-store/srv/browse-invoices-service.js index fbd2dc08..bf19d66a 100644 --- a/media-store/srv/browse-invoices-service.js +++ b/media-store/srv/browse-invoices-service.js @@ -26,14 +26,13 @@ module.exports = async function () { const { tracks } = req.data; const newInvoicedTracks = tracks.map(({ ID }) => ID); const customerId = req.user.attr.ID; + const utcNowDateTime = moment().utc().format(UTC_DATE_TIME_FORMAT); const total = tracks.reduce( (acc, { unitPrice }) => acc + Number(unitPrice), 0 ); - const utcNowDateTime = moment().utc().format(UTC_DATE_TIME_FORMAT); const transaction = await db.tx(req); - // check if already exists const invoicedTracks = await transaction.run( SELECT.from(InvoiceItems) @@ -62,34 +61,27 @@ module.exports = async function () { SELECT.one(InvoiceItems).columns("ID").orderBy({ ID: "desc" }) ); - console.log("lastInvoiceId", lastInvoiceId); - console.log("lastInvoiceId", lastInvoiceId); - // creating invoice - const { - results: [{ lastID: invoiceID }], - } = await transaction.run( + const newInvoiceId = ++lastInvoiceId; + await transaction.run( INSERT.into(Invoices) .columns("ID", "customer_ID", "total", "invoiceDate") - .values(++lastInvoiceId, customerId, total, utcNowDateTime) + .values(newInvoiceId, customerId, total, utcNowDateTime) ); - console.log("invoiceID", invoiceID); - // creating invoice items - const result = await transaction.run( + await transaction.run( INSERT.into(InvoiceItems) .columns("ID", "invoice_ID", "track_ID", "unitPrice") .rows( tracks.map(({ ID: trackID, unitPrice }, index) => [ lastInvoiceItemId + index + 1, - invoiceID, + newInvoiceId, trackID, unitPrice, ]) ) ); - console.log("insert result", result); await transaction.commit(); });