summaryrefslogtreecommitdiff
path: root/src/lib/transaction/components
diff options
context:
space:
mode:
authorMiqdad <ahmadmiqdad27@gmail.com>2025-08-16 08:16:10 +0700
committerMiqdad <ahmadmiqdad27@gmail.com>2025-08-16 08:16:10 +0700
commit91b73f89b35874df3e0b88c67cf906df06965782 (patch)
tree8a4bac4fb6e67c086a493e6683ce43f733468eba /src/lib/transaction/components
parent0fa70adbf4a9fab74337d35dcfd21722370ac93e (diff)
parent1a68a24e9fb58ecc1ade9d1d792ea06b432e4989 (diff)
Merge branch 'new-release' of https://bitbucket.org/altafixco/next-indoteknik into fix-map
Diffstat (limited to 'src/lib/transaction/components')
-rw-r--r--src/lib/transaction/components/Transactions.jsx43
1 files changed, 24 insertions, 19 deletions
diff --git a/src/lib/transaction/components/Transactions.jsx b/src/lib/transaction/components/Transactions.jsx
index de93d742..5e37be50 100644
--- a/src/lib/transaction/components/Transactions.jsx
+++ b/src/lib/transaction/components/Transactions.jsx
@@ -345,10 +345,9 @@ const Transactions = ({ context = '' }) => {
}, []);
const handleBuyBack = async (products) => {
- // if (status === 'success') return;
-
try {
// setStatus('loading');
+ console.log("Products to add:", products);
const results = await Promise.all(
products.map((product) =>
@@ -358,32 +357,38 @@ const Transactions = ({ context = '' }) => {
id: product.id,
qty: product.quantity,
selected: true,
- source: 'buy', // Tetap gunakan 'buy' agar bisa masuk ke halaman pembelian
- qtyAppend: false,
+ source: 'add_to_cart',
+ qtyAppend: true,
+ }).catch(error => {
+ return { error, product };
})
)
);
- // ✅ Panggil setRefreshCart(true) setiap kali satu produk berhasil ditambahkan
+ const failedOperations = results.filter(result => result && result.error);
+ // console.log(results);
+
+ if (failedOperations.length > 0) {
+ console.error('Some products failed to add to cart:', failedOperations);
+ toast.error(`${failedOperations.length} produk gagal ditambahkan ke keranjang`);
+
+ // You might want to proceed with the successful ones or handle differently
+ if (failedOperations.length < products.length) {
+ toast.success(`${products.length - failedOperations.length} produk berhasil ditambahkan ke keranjang`);
+ setRefreshCart(true);
+ router.push('/shop/cart');
+ }
+ return;
+ }
+ // All operations succeeded
setRefreshCart(true);
-
- // setStatus('idle');
toast.success('Semua produk berhasil ditambahkan ke keranjang belanja');
- // Tampilkan notifikasi
- // toast({
- // title: 'Tambah ke keranjang',
- // description: 'Semua produk berhasil ditambahkan ke keranjang belanja',
- // status: 'success',
- // duration: 3000,
- // isClosable: true,
- // position: 'top',
- // });
-
- // Redirect ke halaman checkout
- router.push('/shop/checkout?source=buy');
+ router.push('/shop/cart');
+
} catch (error) {
console.error('Gagal menambahkan produk ke keranjang:', error);
+ toast.error('Terjadi kesalahan saat menambahkan produk ke keranjang');
// setStatus('error');
}
};