Config.js 충돌 해결

This commit is contained in:
Dev TWIN0906
2025-05-15 16:34:00 +09:00
parent 43271e1a35
commit 72cc440d07
9 changed files with 78 additions and 13 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@@ -437,7 +437,6 @@ export default function MobileSendPopUp({
) { ) {
const logParams = { const logParams = {
status: 'send', status: 'send',
entryMenu: entryMenu,
nowMenu: nowMenu, nowMenu: nowMenu,
partner: patncNm, partner: patncNm,
contextName: LOG_CONTEXT_NAME.SHOPBYMOBILE, contextName: LOG_CONTEXT_NAME.SHOPBYMOBILE,

View File

@@ -590,6 +590,7 @@ export const LOG_CONTEXT_NAME = {
SHOW: "shoptime.show", SHOW: "shoptime.show",
SHOPBYMOBILE: "shoptime.shopbymobile", SHOPBYMOBILE: "shoptime.shopbymobile",
GNB: "shoptime.gnb", GNB: "shoptime.gnb",
DETAILPAGE: "shoptime.detailpage",
}; };
export const LOG_MESSAGE_ID = { export const LOG_MESSAGE_ID = {
@@ -601,4 +602,5 @@ export const LOG_MESSAGE_ID = {
SHELF: "AL_SHELF_LIST_SHOWN", SHELF: "AL_SHELF_LIST_SHOWN",
SMB: "AL_SBM", SMB: "AL_SBM",
GNB: "AL_GNB_CLICK", GNB: "AL_GNB_CLICK",
BUTTONCLICK: "AL_BUTTON_CLICK",
}; };

View File

@@ -9,8 +9,9 @@ import {
sendLogGNB, sendLogGNB,
sendLogProductDetail, sendLogProductDetail,
sendLogShopByMobile, sendLogShopByMobile,
sendLogTotalRecommend,
} from "../../../actions/logActions"; } from "../../../actions/logActions";
import { LOG_MENU, LOG_TP_NO } from "../../../utils/Config"; import { LOG_CONTEXT_NAME, LOG_MENU, LOG_MESSAGE_ID, LOG_TP_NO } from "../../../utils/Config";
import { import {
formatGMTString, formatGMTString,
formatLocalDateTime, formatLocalDateTime,
@@ -104,6 +105,31 @@ export default function GroupProduct({
}, [productData]); }, [productData]);
const handleMobileSendPopupOpen = useCallback(() => { const handleMobileSendPopupOpen = useCallback(() => {
if (productData && Object.keys(productData).length > 0) {
const regularPrice = productData?.priceInfo?.split("|")[0];
const discountPrice = productData?.priceInfo?.split("|")[1];
const discountRate = productData?.priceInfo?.split("|")[4];
const logParams = {
status: 'open',
nowMenu: nowMenu,
partner: productData?.patncNm,
productId: productData?.prdtId,
productTitle: productData?.prdtNm,
price: discountRate ? discountPrice : regularPrice,
brand: productData?.brndNm,
discount: discountRate,
category: productData?.catNm,
contextName: LOG_CONTEXT_NAME.SHOPBYMOBILE,
messageId: LOG_MESSAGE_ID.SMB
}
dispatch(sendLogTotalRecommend(logParams))
dispatch(sendLogTotalRecommend({
menu: LOG_MENU.DETAIL_PAGE_GROUP_DETAIL,
buttonTitle: 'Shop By Mobile',
contextName: LOG_CONTEXT_NAME.DETAILPAGE,
messageId: LOG_MESSAGE_ID.BUTTONCLICK
}))
}
if (productData && Object.keys(productData).length > 0) { if (productData && Object.keys(productData).length > 0) {
const params = { const params = {
befPrice: productData?.priceInfo?.split("|")[0], befPrice: productData?.priceInfo?.split("|")[0],

View File

@@ -9,7 +9,7 @@ import {
sendLogGNB, sendLogGNB,
sendLogProductDetail, sendLogProductDetail,
sendLogShopByMobile, sendLogShopByMobile,
sendLogTotalRecommend, sendLogTotalRecommend
} from "../../../actions/logActions"; } from "../../../actions/logActions";
import { LOG_CONTEXT_NAME, LOG_MENU, LOG_MESSAGE_ID, LOG_TP_NO } from "../../../utils/Config"; import { LOG_CONTEXT_NAME, LOG_MENU, LOG_MESSAGE_ID, LOG_TP_NO } from "../../../utils/Config";
import { import {
@@ -42,7 +42,6 @@ export default function SingleProduct({
const productData = useSelector((state) => state.main.productData); const productData = useSelector((state) => state.main.productData);
const nowMenu = useSelector((state) => state.common.menu.nowMenu); const nowMenu = useSelector((state) => state.common.menu.nowMenu);
const entryMenu = useSelector((state) => state.common.menu.entryMenu);
const entryMenuRef = useRef(null); const entryMenuRef = useRef(null);
@@ -102,7 +101,7 @@ export default function SingleProduct({
patncNm: productData?.patncNm ?? "", patncNm: productData?.patncNm ?? "",
patnrId: productData?.patnrId ?? "", patnrId: productData?.patnrId ?? "",
}; };
console.log ('###detail button click', params)
dispatch(sendLogDetail(params)); dispatch(sendLogDetail(params));
} }
}, [productData]); }, [productData]);
@@ -114,7 +113,6 @@ export default function SingleProduct({
const discountRate = productData?.priceInfo?.split("|")[4]; const discountRate = productData?.priceInfo?.split("|")[4];
const logParams = { const logParams = {
status: 'open', status: 'open',
entryMenu: entryMenu,
nowMenu: nowMenu, nowMenu: nowMenu,
partner: productData?.patncNm, partner: productData?.patncNm,
productId: productData?.prdtId, productId: productData?.prdtId,
@@ -127,6 +125,12 @@ export default function SingleProduct({
messageId: LOG_MESSAGE_ID.SMB messageId: LOG_MESSAGE_ID.SMB
} }
dispatch(sendLogTotalRecommend(logParams)) dispatch(sendLogTotalRecommend(logParams))
dispatch(sendLogTotalRecommend({
menu: LOG_MENU.DETAIL_PAGE_BILLING_PRODUCT_DETAIL,
buttonTitle: 'Shop By Mobile',
contextName: LOG_CONTEXT_NAME.DETAILPAGE,
messageId: LOG_MESSAGE_ID.BUTTONCLICK
}))
} }
if (productData && Object.keys(productData).length > 0) { if (productData && Object.keys(productData).length > 0) {
const params = { const params = {

View File

@@ -17,6 +17,7 @@ import {
sendLogGNB, sendLogGNB,
sendLogProductDetail, sendLogProductDetail,
sendLogShopByMobile, sendLogShopByMobile,
sendLogTotalRecommend,
} from "../../../actions/logActions"; } from "../../../actions/logActions";
import TButton from "../../../components/TButton/TButton"; import TButton from "../../../components/TButton/TButton";
import TQRCode from "../../../components/TQRCode/TQRCode"; import TQRCode from "../../../components/TQRCode/TQRCode";
@@ -51,7 +52,7 @@ export default function HotelOption({
(state) => state.home.themeCurationHotelDetailData (state) => state.home.themeCurationHotelDetailData
); );
const hotelData = useSelector((state) => state.home.hotelData); const hotelData = useSelector((state) => state.home.hotelData);
const nowMenu = useSelector((state) => state.common.nowMenu);
const { popupVisible } = useSelector((state) => state.common.popup); const { popupVisible } = useSelector((state) => state.common.popup);
const [label, setLabel] = useState(""); const [label, setLabel] = useState("");
const [amenitiesInfos, setAmenitiesInfos] = useState(); const [amenitiesInfos, setAmenitiesInfos] = useState();
@@ -162,6 +163,23 @@ export default function HotelOption({
const handleSMSClick = useCallback(() => { const handleSMSClick = useCallback(() => {
dispatch(setShowPopup(Config.ACTIVE_POPUP.smsPopup)); dispatch(setShowPopup(Config.ACTIVE_POPUP.smsPopup));
const logParams = {
status: 'open',
nowMenu: nowMenu,
partner: selectedHotelInfo.patncNm,
price: selectedHotelInfo.hotelInfo?.hotelDetailInfo?.price,
productTitle: selectedHotelInfo.hotelInfo?.hotelDetailInfo?.hotelNm,
productId: selectedHotelInfo.hotelInfo?.hotelDetailInfo?.hotelId,
contextName: Config.LOG_CONTEXT_NAME.SHOPBYMOBILE,
messageId: Config.LOG_MESSAGE_ID.SMB
}
dispatch(sendLogTotalRecommend(logParams))
dispatch(sendLogTotalRecommend({
menu: Config.LOG_MENU.DETAIL_PAGE_TRAVEL_THEME_DETAIL,
buttonTitle: 'Shop By Mobile',
contextName: Config.LOG_CONTEXT_NAME.DETAILPAGE,
messageId: Config.LOG_MESSAGE_ID.BUTTONCLICK
}))
const params = { const params = {
befPrice: selectedHotelInfo.hotelInfo?.hotelDetailInfo?.price, befPrice: selectedHotelInfo.hotelInfo?.hotelDetailInfo?.price,

View File

@@ -166,7 +166,6 @@ export default function ShowOption({
const discountRate = productData?.priceInfo?.split("|")[4]; const discountRate = productData?.priceInfo?.split("|")[4];
const logParams = { const logParams = {
status: 'open', status: 'open',
entryMenu: entryMenu,
nowMenu: nowMenu, nowMenu: nowMenu,
partner: productData?.patncNm, partner: productData?.patncNm,
productId: productData?.prdtId, productId: productData?.prdtId,
@@ -179,6 +178,12 @@ export default function ShowOption({
messageId: LOG_MESSAGE_ID.SMB messageId: LOG_MESSAGE_ID.SMB
} }
dispatch(sendLogTotalRecommend(logParams)) dispatch(sendLogTotalRecommend(logParams))
dispatch(sendLogTotalRecommend({
menu: LOG_MENU.DETAIL_PAGE_THEME_DETAIL,
buttonTitle: 'Shop By Mobile',
contextName: LOG_CONTEXT_NAME.DETAILPAGE,
messageId: LOG_MESSAGE_ID.BUTTONCLICK
}))
} }
if (showProductInfo && Object.keys(showProductInfo).length > 0) { if (showProductInfo && Object.keys(showProductInfo).length > 0) {
const params = { const params = {

View File

@@ -40,7 +40,7 @@ export default function UnableProduct({
const productData = useSelector((state) => state.main.productData); const productData = useSelector((state) => state.main.productData);
const nowMenu = useSelector((state) => state.common.menu.nowMenu); const nowMenu = useSelector((state) => state.common.menu.nowMenu);
const entryMenu = useSelector((state) => state.common.menu.entryMenu);
const entryMenuRef = useRef(null); const entryMenuRef = useRef(null);
const isProductSoldOut = useMemo(() => { const isProductSoldOut = useMemo(() => {
@@ -99,7 +99,10 @@ export default function UnableProduct({
patncNm: productData?.patncNm ?? "", patncNm: productData?.patncNm ?? "",
patnrId: productData?.patnrId ?? "", patnrId: productData?.patnrId ?? "",
}; };
console.log ('###panelInfo', panelInfo)
console.log ('###productData', productData)
console.log ('###entryMenuRef', entryMenuRef)
console.log ('###entryMenuRef.current', entryMenuRef.current)
dispatch(sendLogDetail(params)); dispatch(sendLogDetail(params));
} }
}, [productData]); }, [productData]);
@@ -111,7 +114,6 @@ export default function UnableProduct({
const discountRate = productData?.priceInfo?.split("|")[4]; const discountRate = productData?.priceInfo?.split("|")[4];
const logParams = { const logParams = {
status: 'open', status: 'open',
entryMenu: entryMenu,
nowMenu: nowMenu, nowMenu: nowMenu,
partner: productData?.patncNm, partner: productData?.patncNm,
productId: productData?.prdtId, productId: productData?.prdtId,
@@ -124,6 +126,12 @@ export default function UnableProduct({
messageId: LOG_MESSAGE_ID.SMB messageId: LOG_MESSAGE_ID.SMB
} }
dispatch(sendLogTotalRecommend(logParams)) dispatch(sendLogTotalRecommend(logParams))
dispatch(sendLogTotalRecommend({
menu: LOG_MENU.DETAIL_PAGE_PRODUCT_DETAIL,
buttonTitle: 'Shop By Mobile',
contextName: LOG_CONTEXT_NAME.DETAILPAGE,
messageId: LOG_MESSAGE_ID.BUTTONCLICK
}))
} }
if (productData && Object.keys(productData).length > 0) { if (productData && Object.keys(productData).length > 0) {
const params = { const params = {
@@ -152,7 +160,7 @@ export default function UnableProduct({
trmsAgrFlag: "N", trmsAgrFlag: "N",
tsvFlag: productData?.todaySpclFlag ?? "", tsvFlag: productData?.todaySpclFlag ?? "",
}; };
console.log('###params is unableProduct', params);
dispatch(sendLogShopByMobile(params)); dispatch(sendLogShopByMobile(params));
shopByMobileLogRef.current = params; shopByMobileLogRef.current = params;
} }
@@ -176,6 +184,7 @@ export default function UnableProduct({
<IndicatorOptions <IndicatorOptions
handleIndicatorOptions={handleIndicatorOptions} handleIndicatorOptions={handleIndicatorOptions}
isCall isCall
nowMenu={nowMenu}
isDescription isDescription
productInfo={productData} productInfo={productData}
thumbnailUrl={productData.imgUrls600[0]} thumbnailUrl={productData.imgUrls600[0]}

View File

@@ -40,6 +40,7 @@ export default function IndicatorOptions({
productInfo, productInfo,
thumbnailUrl, thumbnailUrl,
detailQRCodeUrl, detailQRCodeUrl,
nowMenu
}) { }) {
const [tabLabel, setTabLabel] = useState(""); const [tabLabel, setTabLabel] = useState("");
const [description, setDescription] = useState(""); const [description, setDescription] = useState("");
@@ -75,6 +76,7 @@ export default function IndicatorOptions({
const descriptionClick = useCallback( const descriptionClick = useCallback(
(label, description) => { (label, description) => {
console.log('###descriptionClick', productInfo?.prdtDesc)
setTabLabel([label]); setTabLabel([label]);
setDescription(description); setDescription(description);
dispatch(setShowPopup(Config.ACTIVE_POPUP.descriptionPopup)); dispatch(setShowPopup(Config.ACTIVE_POPUP.descriptionPopup));