From 6fed35e4f877e92b417fb0828d2418f96ee7018a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B3=A0=EB=8F=99=EC=98=81?= Date: Wed, 19 Feb 2025 15:09:24 +0900 Subject: [PATCH] =?UTF-8?q?[=EC=A3=BC=EB=AC=B8=EA=B2=B0=EC=A0=9C=20SHOPTIM?= =?UTF-8?q?E-3971]=20ShopLC=20=EB=9D=BC=EC=9D=B4=EB=B8=8C=20full=20?= =?UTF-8?q?=ED=99=94=EB=A9=B4=20QR=EC=BD=94=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [수정사항] Player Full 화면에서 ShopLC라이브 상품 QRCode는 해당 브랜드 페이지가아닌 ShopTime 구매페이지로 연결되도록 QRCode 수정 --- .../PlayerOverlay/PlayerOverlayQRCode.jsx | 38 +++++++++++++++++-- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/com.twin.app.shoptime/src/views/PlayerPanel/PlayerOverlay/PlayerOverlayQRCode.jsx b/com.twin.app.shoptime/src/views/PlayerPanel/PlayerOverlay/PlayerOverlayQRCode.jsx index 7af1d584..adec69cb 100644 --- a/com.twin.app.shoptime/src/views/PlayerPanel/PlayerOverlay/PlayerOverlayQRCode.jsx +++ b/com.twin.app.shoptime/src/views/PlayerPanel/PlayerOverlay/PlayerOverlayQRCode.jsx @@ -5,10 +5,19 @@ import { useSelector } from "react-redux"; import TQRCode from "../../../components/TQRCode/TQRCode"; import css from "./PlayerOverlayQRCode.module.less"; -import { scaleH, scaleW } from "../../../utils/helperMethods"; +import { getQRCodeUrl, scaleH, scaleW } from "../../../utils/helperMethods"; -export default function PlayerOverlayQRCode({ qrCurrentItem, type, modalScale }) { +export default function PlayerOverlayQRCode({ + qrCurrentItem, + type, + modalScale, +}) { const { cntry_cd } = useSelector((state) => state.common.httpHeader); + const deviceInfo = useSelector((state) => state.device.deviceInfo); + + const serverHOST = useSelector((state) => state.common.appStatus.serverHOST); + const serverType = useSelector((state) => state.localSettings.serverType); + const { entryMenu, nowMenu } = useSelector((state) => state.common.menu); const label = useMemo(() => { let text = ""; @@ -76,9 +85,30 @@ export default function PlayerOverlayQRCode({ qrCurrentItem, type, modalScale }) return { width: "156", height: "156" }; }, [cntry_cd]); + const { detailUrl } = useMemo(() => { + return getQRCodeUrl({ + serverHOST, + serverType, + index: deviceInfo?.dvcIndex, + patnrId: qrCurrentItem?.patnrId, + prdtId: qrCurrentItem?.prdtId, + entryMenu: entryMenu, + nowMenu: nowMenu, + liveFlag: "Y", + qrType: "billingDetail", + }); + }, [serverHOST, serverType, deviceInfo, entryMenu, nowMenu, qrCurrentItem]); + + const QRCodeUrl = useMemo(() => { + if (type === "LIVE" && qrCurrentItem?.patncNm === "ShopLC") { + return detailUrl; + } + return qrCurrentItem?.qrcodeUrl; + }, [detailUrl, qrCurrentItem, type]); + return ( <> - {innerStylePosition && qrCurrentItem?.qrcodeUrl && ( + {innerStylePosition && QRCodeUrl && (