Recently Viewed, Favorite 상품 클릭시 정보 수집

This commit is contained in:
Dev TWIN0906
2025-05-19 16:36:16 +09:00
parent c66da09b53
commit 248e4d4d7a
4 changed files with 45 additions and 19 deletions

View File

@@ -608,4 +608,5 @@ export const LOG_MESSAGE_ID = {
BUTTONCLICK: "AL_BUTTON_CLICK",
TOGGLE_CLICK: "AL_TOGGLE_CLICK",
MYPAGE_DELETE: "AL_MYPAGE_DELETE",
MYPAGE_CLICK: "AL_MYPAGE_CLICK",
};

View File

@@ -22,7 +22,6 @@ import {
clearThemeDetail,
getThemeCurationDetailInfo,
getThemeHotelDetailInfo,
updateHomeInfo,
} from "../../actions/homeActions";
import {
getMainCategoryDetail,
@@ -218,18 +217,6 @@ export default function DetailPanel({ panelInfo, isOnTop, spotlightId }) {
);
}
//홈에서 디테일페이지로 진입했을 경우
if (panelInfo.nowShelf) {
dispatch(
updateHomeInfo({
name: panel_names.HOME_PANEL,
panelInfo: {
nowShelf: panelInfo.nowShelf,
},
})
);
}
if (isCancelClick) {
ev.stopPropagation();
}

View File

@@ -216,7 +216,17 @@ export default function Favorites({ title, panelInfo, isOnTop }) {
}, [favoritesDatas, activeDelete]);
const handleItemClick = useCallback(
(patnrId, prdtId) => (ev) => {
(patnrId, prdtId, prdtNm, patncNm) => (ev) => {
const params = {
menu: "Favorite",
productId: prdtId,
productTitle: prdtNm,
partner: patncNm,
contextName: LOG_CONTEXT_NAME.MYPAGE,
messageId: LOG_MESSAGE_ID.MYPAGE_CLICK,
};
dispatch(sendLogTotalRecommend(params));
const target = ev.currentTarget;
let currentSpotId = null;
@@ -325,7 +335,12 @@ export default function Favorites({ title, panelInfo, isOnTop }) {
soldOutYn={item.soldOutYn}
activeDelete={activeDelete}
selected={selectedItems[item.prdtId]}
onClick={handleItemClick(item.patnrId, item.prdtId)}
onClick={handleItemClick(
item.patnrId,
item.prdtId,
item.prdtNm,
item.patncNm
)}
onToggle={handleItemToggle(item.prdtId)}
length={favoritesDatas.length}
index={index}

View File

@@ -13,10 +13,15 @@ import { pushPanel } from "../../../../actions/panelActions";
import { startVideoPlayer } from "../../../../actions/playActions";
import useScrollReset from "../../../../hooks/useScrollReset";
import useScrollTo from "../../../../hooks/useScrollTo";
import { panel_names } from "../../../../utils/Config";
import {
LOG_CONTEXT_NAME,
LOG_MESSAGE_ID,
panel_names,
} from "../../../../utils/Config";
import { $L } from "../../../../utils/helperMethods";
import MyPageItemCard from "../../MyPageItemCard/MyPageItemCard";
import css from "../RecentlyViewed/RecentlyViewedContents.module.less";
import { sendLogTotalRecommend } from "../../../../actions/logActions";
const ContainerBasic = SpotlightContainerDecorator({ enterTo: null }, "div");
export default function RecentlyViewedContents({
@@ -59,7 +64,17 @@ export default function RecentlyViewedContents({
}, [mainContainerId, recentDataInfoItem, scrollLeft]);
const handleItemClick = useCallback(
(showId, patnrId, lgCatCd, prdtId) => () => {
(showId, patnrId, lgCatCd, prdtId, prdtNm, patncNm) => () => {
const params = {
menu: "Recently Viewed",
partner: patncNm,
productId: prdtId,
productTitle: prdtNm,
contextName: LOG_CONTEXT_NAME.MYPAGE,
messageId: LOG_MESSAGE_ID.MYPAGE_CLICK,
};
dispatch(sendLogTotalRecommend(params));
if (showId) {
dispatch(
startVideoPlayer({
@@ -79,7 +94,7 @@ export default function RecentlyViewedContents({
);
}
},
[]
[recentDataInfoItem]
);
const _handleItemToggle = useCallback(
(showId, prdtId) => () => {
@@ -119,6 +134,7 @@ export default function RecentlyViewedContents({
showId,
prdtId,
prdtNm,
patncNm,
soldOutYn,
lgCatCd,
thumbnailUrl,
@@ -132,7 +148,14 @@ export default function RecentlyViewedContents({
soldOutYn={soldOutYn}
activeDelete={activeDelete}
selected={selectedItems[prdtId ? prdtId : showId]}
onClick={handleItemClick(showId, patnrId, lgCatCd, prdtId)}
onClick={handleItemClick(
showId,
patnrId,
lgCatCd,
prdtId,
prdtNm,
patncNm
)}
onToggle={_handleItemToggle(showId, prdtId)}
spotlightId={mainContainerId + index}
dataWheelPoint={index >= 5}