From 708eb1aa30d4ef32636ce2fd37d63ed299150e5a Mon Sep 17 00:00:00 2001 From: Rafi Zadanly Date: Fri, 30 Dec 2022 11:09:12 +0700 Subject: to_process -> selected in cart --- src/helpers/cart.js | 4 ++-- src/pages/shop/cart.js | 36 ++++++++++++++++++++---------------- src/pages/shop/checkout.js | 8 ++++---- 3 files changed, 26 insertions(+), 22 deletions(-) (limited to 'src') diff --git a/src/helpers/cart.js b/src/helpers/cart.js index 2cd8da7b..a3b43e96 100644 --- a/src/helpers/cart.js +++ b/src/helpers/cart.js @@ -14,9 +14,9 @@ const getItemCart = (product_id) => { return cart[product_id]; } -const createOrUpdateItemCart = (product_id, quantity, to_process = false) => { +const createOrUpdateItemCart = (product_id, quantity, selected = false) => { let cart = getCart(); - cart[product_id] = { product_id, quantity, to_process }; + cart[product_id] = { product_id, quantity, selected }; setCart(cart); return true; } diff --git a/src/pages/shop/cart.js b/src/pages/shop/cart.js index c003502d..b2dbba3e 100644 --- a/src/pages/shop/cart.js +++ b/src/pages/shop/cart.js @@ -53,7 +53,7 @@ export default function Cart() { dataProducts = dataProducts.map((product) => ({ ...product, quantity: cart[product.id].quantity, - to_process: cart[product.id].to_process, + selected: cart[product.id].selected, })); setProducts(dataProducts); } @@ -64,13 +64,13 @@ export default function Cart() { useEffect(() => { for (const product of products) { - if (product.quantity != '') createOrUpdateItemCart(product.id, product.quantity, product.to_process); + if (product.quantity != '') createOrUpdateItemCart(product.id, product.quantity, product.selected); } - const productsToProcess = products.filter((product) => product.to_process == true); + const productsSelected = products.filter((product) => product.selected == true); let calculateTotalPriceBeforeTax = 0; let calculateTotalTaxAmount = 0; let calculateTotalDiscountAmount = 0; - productsToProcess.forEach(product => { + productsSelected.forEach(product => { let priceBeforeTax = product.price.price / 1.11; calculateTotalPriceBeforeTax += priceBeforeTax * product.quantity; calculateTotalTaxAmount += (product.price.price - priceBeforeTax) * product.quantity; @@ -81,8 +81,8 @@ export default function Cart() { setTotalDiscountAmount(calculateTotalDiscountAmount); }, [products]); - const getProductsToProcess = () => { - return products.filter((product) => product.to_process == true); + const getProductsSelected = () => { + return products.filter((product) => product.selected == true); } const updateCart = (productId, quantity) => { @@ -143,10 +143,10 @@ export default function Cart() { toast.success('Berhasil menghapus 1 barang dari keranjang', { duration: 1500 }); } - const toggleProductToProcess = (productId) => { + const toggleProductSelected = (productId) => { let productIndexToUpdate = products.findIndex((product) => product.id == productId); let productsToUpdate = products; - productsToUpdate[productIndexToUpdate].to_process = !productsToUpdate[productIndexToUpdate].to_process; + productsToUpdate[productIndexToUpdate].selected = !productsToUpdate[productIndexToUpdate].selected; setProducts([...productsToUpdate]); } @@ -198,12 +198,16 @@ export default function Cart() {
+
+

Daftar Produk Belanja

+ Cari Produk Lain +
{products.map((product, index) => (

Total

-

{getProductsToProcess().length > 0 && ( - <>({ getProductsToProcess().length } Barang) +

{getProductsSelected().length > 0 && ( + <>({ getProductsSelected().length } Barang) )}

{currencyFormat(totalPriceBeforeTax + totalTaxAmount - totalDiscountAmount)}

@@ -273,16 +277,16 @@ export default function Cart() {
diff --git a/src/pages/shop/checkout.js b/src/pages/shop/checkout.js index 5a47dd5e..54b9d598 100644 --- a/src/pages/shop/checkout.js +++ b/src/pages/shop/checkout.js @@ -47,7 +47,7 @@ export default function Checkout() { let cart = getCart(); let productIds = Object .values(cart) - .filter((itemCart) => itemCart.to_process == true) + .filter((itemCart) => itemCart.selected == true) .map((itemCart) => itemCart.product_id); if (productIds.length > 0) { productIds = productIds.join(','); @@ -55,7 +55,7 @@ export default function Checkout() { dataProducts = dataProducts.map((product) => ({ ...product, quantity: cart[product.id].quantity, - to_process: cart[product.id].to_process, + selected: cart[product.id].selected, })); setProducts(dataProducts); } @@ -69,11 +69,11 @@ export default function Checkout() { useEffect(() => { if (products) { - const productsToProcess = products.filter((product) => product.to_process == true); + const productsSelected = products.filter((product) => product.selected == true); let calculateTotalPriceBeforeTax = 0; let calculateTotalTaxAmount = 0; let calculateTotalDiscountAmount = 0; - productsToProcess.forEach(product => { + productsSelected.forEach(product => { let priceBeforeTax = product.price.price / 1.11; calculateTotalPriceBeforeTax += priceBeforeTax * product.quantity; calculateTotalTaxAmount += (product.price.price - priceBeforeTax) * product.quantity; -- cgit v1.2.3