summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authortrisusilo <tri.susilo@altama.co.id>2023-07-26 07:30:33 +0000
committertrisusilo <tri.susilo@altama.co.id>2023-07-26 07:30:33 +0000
commitc96f30a60d8ef7ebc949d2124abdd91d5a1dafc5 (patch)
tree7480cd7aa34293cdd357dfbb73296a45d0dc695a /src/lib
parentcea5468a29e70aec335e2e80c7fa03e35a3c73bf (diff)
parent02fbca0f66aac32e562364ddfda9c5bae4177e96 (diff)
Merged in Hotfix/action_click_button_beli (pull request #29)
Hotfix/action click button beli
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/product/components/Product/ProductMobile.jsx10
-rw-r--r--src/lib/quotation/components/Quotation.jsx41
2 files changed, 35 insertions, 16 deletions
diff --git a/src/lib/product/components/Product/ProductMobile.jsx b/src/lib/product/components/Product/ProductMobile.jsx
index 91de173a..2edd1a5f 100644
--- a/src/lib/product/components/Product/ProductMobile.jsx
+++ b/src/lib/product/components/Product/ProductMobile.jsx
@@ -137,7 +137,15 @@ const ProductMobile = ({ product, wishlist, toggleWishlist }) => {
const handleClickBuy = () => {
if (!validAction()) return
- router.push(`/shop/checkout?productId=${activeVariant.id}&quantity=${quantity}`)
+
+ updateItemCart({
+ productId: activeVariant.id,
+ quantity,
+ programLineId: promotionActiveId,
+ selected: true,
+ source : 'buy'
+ })
+ router.push(`/shop/checkout?source=buy`)
}
const productSimilarQuery = [
diff --git a/src/lib/quotation/components/Quotation.jsx b/src/lib/quotation/components/Quotation.jsx
index 9ffc2fbb..c2a36001 100644
--- a/src/lib/quotation/components/Quotation.jsx
+++ b/src/lib/quotation/components/Quotation.jsx
@@ -9,17 +9,23 @@ import _ from 'lodash'
import { deleteItemCart, getCart, getItemCart } from '@/core/utils/cart'
import currencyFormat from '@/core/utils/currencyFormat'
import { toast } from 'react-hot-toast'
-import checkoutApi from '@/lib/checkout/api/checkoutApi'
+// import checkoutApi from '@/lib/checkout/api/checkoutApi'
import { useRouter } from 'next/router'
import VariantGroupCard from '@/lib/variant/components/VariantGroupCard'
import MobileView from '@/core/components/views/MobileView'
import DesktopView from '@/core/components/views/DesktopView'
import Image from '@/core/components/elements/Image/Image'
+import { useQuery } from 'react-query'
+
+const { checkoutApi } = require('@/lib/checkout/api/checkoutApi')
+const { getProductsCheckout } = require('@/lib/checkout/api/checkoutApi')
const Quotation = () => {
const router = useRouter()
const auth = useAuth()
+ const { data: cartCheckout } = useQuery('cartCheckout', () => getProductsCheckout())
+
const [products, setProducts] = useState(null)
const [totalAmount, setTotalAmount] = useState(0)
const [totalDiscountAmount, setTotalDiscountAmount] = useState(0)
@@ -43,10 +49,14 @@ const Quotation = () => {
})
}
}
- loadProducts()
+ // loadProducts()
}, [])
useEffect(() => {
+ setProducts(cartCheckout?.products)
+ }, [cartCheckout])
+
+ useEffect(() => {
if (products) {
let calculateTotalAmount = 0
let calculateTotalDiscountAmount = 0
@@ -118,26 +128,26 @@ const Quotation = () => {
<div className='flex flex-col gap-y-4'>
<div className='flex gap-x-2 justify-between'>
<div className='text-gray_r-11'>Total Belanja</div>
- <div>{currencyFormat(totalAmount)}</div>
+ <div>{currencyFormat(cartCheckout?.totalPurchase)}</div>
</div>
<div className='flex gap-x-2 justify-between'>
- <div className='text-gray_r-11'>Total Diskon</div>
- <div className='text-danger-500'>- {currencyFormat(totalDiscountAmount)}</div>
+ <div className='text-gray_r-11'>Diskon Produk</div>
+ <div className='text-danger-500'>- {currencyFormat(cartCheckout?.totalDiscount)}</div>
</div>
<div className='flex gap-x-2 justify-between'>
<div className='text-gray_r-11'>Subtotal</div>
- <div>{currencyFormat(totalAmount - totalDiscountAmount)}</div>
+ <div>{currencyFormat(cartCheckout?.subtotal)}</div>
</div>
<div className='flex gap-x-2 justify-between'>
<div className='text-gray_r-11'>PPN 11%</div>
- <div>{currencyFormat(taxTotal)}</div>
+ <div>{currencyFormat(cartCheckout?.tax)}</div>
</div>
</div>
<hr className='my-4 border-gray_r-6' />
<div className='flex gap-x-2 justify-between mb-4'>
<div>Grand Total</div>
<div className='font-semibold text-gray_r-12'>
- {currencyFormat(totalAmount - totalDiscountAmount + taxTotal)}
+ {currencyFormat(cartCheckout?.grandTotal)}
</div>
</div>
<p className='text-caption-2 text-gray_r-10 mb-2'>*) Belum termasuk biaya pengiriman</p>
@@ -237,23 +247,24 @@ const Quotation = () => {
</div>
<hr className='my-4 border-gray_r-6' />
-
<div className='flex flex-col gap-y-4'>
<div className='flex gap-x-2 justify-between'>
<div className='text-gray_r-11'>Total Belanja</div>
- <div>{currencyFormat(totalAmount)}</div>
+ <div>{currencyFormat(cartCheckout?.totalPurchase)}</div>
</div>
<div className='flex gap-x-2 justify-between'>
- <div className='text-gray_r-11'>Total Diskon</div>
- <div className='text-danger-500'>- {currencyFormat(totalDiscountAmount)}</div>
+ <div className='text-gray_r-11'>Diskon Produk</div>
+ <div className='text-danger-500'>
+ - {currencyFormat(cartCheckout?.totalDiscount)}
+ </div>
</div>
<div className='flex gap-x-2 justify-between'>
<div className='text-gray_r-11'>Subtotal</div>
- <div>{currencyFormat(totalAmount - totalDiscountAmount)}</div>
+ <div>{currencyFormat(cartCheckout?.subtotal)}</div>
</div>
<div className='flex gap-x-2 justify-between'>
<div className='text-gray_r-11'>PPN 11%</div>
- <div>{currencyFormat(taxTotal)}</div>
+ <div>{currencyFormat(cartCheckout?.tax)}</div>
</div>
</div>
@@ -262,7 +273,7 @@ const Quotation = () => {
<div className='flex gap-x-2 justify-between mb-4'>
<div>Grand Total</div>
<div className='font-semibold text-gray_r-12'>
- {currencyFormat(totalAmount - totalDiscountAmount + taxTotal)}
+ {currencyFormat(cartCheckout?.grandTotal)}
</div>
</div>
<p className='text-caption-2 text-gray_r-11 mb-2'>