From ca6d29414a0aec201571a1464364398f6d3b6194 Mon Sep 17 00:00:00 2001 From: Surya Paolo Date: Thu, 28 Dec 2023 15:53:00 +0100 Subject: [PATCH] - Email Ordine da template HTML --- emails/ecommerce/makeorder/it/html.pug | 14 ++++++++---- emails/ecommerce/order_confirmed/it/html.pug | 18 +++++++++++---- src/server/modules/Cart.js | 24 ++++++++++++++++---- 3 files changed, 44 insertions(+), 12 deletions(-) diff --git a/emails/ecommerce/makeorder/it/html.pug b/emails/ecommerce/makeorder/it/html.pug index bf7a46c..dac233b 100755 --- a/emails/ecommerce/makeorder/it/html.pug +++ b/emails/ecommerce/makeorder/it/html.pug @@ -25,9 +25,14 @@ html tr td(class="whitespace", height="10") p   + if (orders.items && orders.items.length > 0) + - var mystorehouse = orders.items[0].order.storehouse + else + - var mystorehouse = null + tr td(class="emailContainer", valign="top") - - var mioheader = orders.storehouse.email_html_header + - var mioheader = mystorehouse.email_html_header if (mioheader) p!= mioheader else @@ -90,7 +95,8 @@ html td(class="sectionContent", valign="top") p Totale: #{TotalPriceProduct} € - p Note Aggiuntive: #{note} + if (note) + p Note Aggiuntive: #{note} p.sectionContentTitle.boldhigh.sectionTotal Totale Ordine: #{totalPrice} € tr @@ -98,14 +104,14 @@ html tr td - - var miomakeorder = orders.storehouse.email_html_makeorder + - var miomakeorder = mystorehouse.email_html_makeorder if (miomakeorder) p!= miomakeorder else p Ti arriverà una email quando i prodotti saranno disponibili per poterli venire a ritirare. p Il pagamento, se non diversamente comunicato, potrai farlo direttamente in sede. - - var miofooter = orders.storehouse.email_html_footer + - var miofooter = mystorehouse.email_html_footer if (miofooter) p!= miofooter else diff --git a/emails/ecommerce/order_confirmed/it/html.pug b/emails/ecommerce/order_confirmed/it/html.pug index b6a1af8..347852c 100755 --- a/emails/ecommerce/order_confirmed/it/html.pug +++ b/emails/ecommerce/order_confirmed/it/html.pug @@ -25,11 +25,21 @@ html tr td(class="whitespace", height="10") p   + + if (orders.items && orders.items.length > 0) + - var mystorehouse = orders.items[0].order.storehouse + else + - var mystorehouse = null + tr td(class="emailContainer", valign="top") - p Ciao #{name}, - p L'ordine dei seguenti prodotti è stato Confermato: + - var mioheader = mystorehouse.email_html_header + if (mioheader) + p!= mioheader + else + p Ciao #{name}, + p L'ordine dei seguenti prodotti è stato Confermato: tr td(class="whitespace", height="10") @@ -97,13 +107,13 @@ html tr td - - var miordconfirmed = orders.storehouse.email_html_order_confirmed + - var miordconfirmed = mystorehouse.email_html_order_confirmed if (miordconfirmed) p!= miordconfirmed else p Puoi pertanto venire a ritirarli direttamente in sede, negli orari che ti sono stati indicati. - - var miofooter = orders.storehouse.email_html_footer + - var miofooter = mystorehouse.email_html_footer if (miofooter) p!= miofooter else diff --git a/src/server/modules/Cart.js b/src/server/modules/Cart.js index 67342be..acaaac7 100755 --- a/src/server/modules/Cart.js +++ b/src/server/modules/Cart.js @@ -96,15 +96,31 @@ class Cart { } } + qtaNextSub(myorder, myproduct) { + let step = 1 + let minqta = myproduct.minBuyQty | 1 + if (myproduct.quantityAvailable > 0) { + if (myorder.quantity === minqta) + step = minqta + } else { + if (myorder.quantitypreordered === minqta) + step = minqta + } + + return step + } + + async subqty(itemorder) { try { const myitem = this.items.find((rec) => rec.order._id.toString() === itemorder._id) if (!!myitem) { - if (myitem.order.quantitypreordered > 0) { - myitem.order.quantitypreordered--; + let step = this.qtaNextSub(myitem.order, myitem.order.product); + if (myitem.order.quantitypreordered - step >= 0) { + myitem.order.quantitypreordered -= step; } else { - if (myitem.order.quantity > 0) { - myitem.order.quantity--; + if (myitem.order.quantity - step >= 0) { + myitem.order.quantity -= step; } } this.updatetotals();