From a2746073a636706b0e214eca84055735417680f3 Mon Sep 17 00:00:00 2001 From: "web@ppanel" Date: Mon, 29 Dec 2025 08:34:15 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix:=20Update=20quantity=20handl?= =?UTF-8?q?ing=20in=20Purchase=20and=20Renewal=20components=20based=20on?= =?UTF-8?q?=20showOriginalPrice=20prop?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/user/src/sections/subscribe/duration-selector.tsx | 4 +++- apps/user/src/sections/subscribe/purchase.tsx | 7 ++++++- apps/user/src/sections/subscribe/renewal.tsx | 7 ++++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/apps/user/src/sections/subscribe/duration-selector.tsx b/apps/user/src/sections/subscribe/duration-selector.tsx index 6ecdb39..17da97a 100644 --- a/apps/user/src/sections/subscribe/duration-selector.tsx +++ b/apps/user/src/sections/subscribe/duration-selector.tsx @@ -15,6 +15,7 @@ interface DurationSelectorProps { unitTime?: string; discounts?: Array<{ quantity: number; discount: number }>; onChange: (value: number) => void; + showOriginalPrice?: boolean; } const DurationSelector: React.FC = ({ @@ -22,6 +23,7 @@ const DurationSelector: React.FC = ({ unitTime = "Month", discounts = [], onChange, + showOriginalPrice = true, }) => { const { t } = useTranslation("subscribe"); const handleChange = useCallback( @@ -61,7 +63,7 @@ const DurationSelector: React.FC = ({ onValueChange={handleChange} value={String(quantity)} > - {unitTime !== "Minute" && ( + {showOriginalPrice && unitTime !== "Minute" && ( )} {discounts?.map((item) => ( diff --git a/apps/user/src/sections/subscribe/purchase.tsx b/apps/user/src/sections/subscribe/purchase.tsx index f629c98..af89b68 100644 --- a/apps/user/src/sections/subscribe/purchase.tsx +++ b/apps/user/src/sections/subscribe/purchase.tsx @@ -74,9 +74,13 @@ export default function Purchase({ useEffect(() => { if (subscribe) { + const defaultQuantity = + subscribe.show_original_price === false && subscribe.discount?.[0] + ? subscribe.discount[0].quantity + : 1; setParams((prev) => ({ ...prev, - quantity: 1, + quantity: defaultQuantity, subscribe_id: subscribe?.id, })); } @@ -146,6 +150,7 @@ export default function Purchase({ handleChange("quantity", value); }} quantity={params.quantity as number} + showOriginalPrice={subscribe?.show_original_price} unitTime={subscribe?.unit_time} /> ) { useEffect(() => { if (subscribe.id && id) { + const defaultQuantity = + subscribe.show_original_price === false && subscribe.discount?.[0] + ? subscribe.discount[0].quantity + : 1; setParams((prev) => ({ ...prev, - quantity: 1, + quantity: defaultQuantity, subscribe_id: subscribe.id, user_subscribe_id: id, })); @@ -145,6 +149,7 @@ export default function Renewal({ id, subscribe }: Readonly) { handleChange("quantity", value); }} quantity={params.quantity!} + showOriginalPrice={subscribe?.show_original_price} unitTime={subscribe?.unit_time} />