[Log] Log, IF-LGSP-LOG-005 / GNB 클릭 이력, App 진입 유형별 파라미터에 따른 entryMenu 설정

Detail note
1. App.js, entryMenu 설정 logic 추가
2. deepLinkHandler.js, getMenuByLinkTpCd 추가
3. helperMethos.js, localLaunchParams, ThemeCurationPanel로 진입하는 case 추가
This commit is contained in:
younghoon100.park
2024-06-10 17:36:46 +09:00
parent 47036fb8e9
commit f441c86aa0
7 changed files with 182 additions and 24 deletions

View File

@@ -1,12 +1,47 @@
import { pushPanel } from "../actions/panelActions";
import { panel_names } from "../utils/Config";
import { LOG_MENU, panel_names } from "../utils/Config";
export const getMenuByLinkTpCd = (linkTpCd) => {
switch (linkTpCd) {
case "2000":
return LOG_MENU.HOME_BANNER_1;
case "2001":
return LOG_MENU.HOME_BANNER_2;
case "3000":
return LOG_MENU.TVAD_BIG_BANNER;
case "3001":
return LOG_MENU.TVAD_HOME_LAUNCHER;
case "3002":
return LOG_MENU.TVAD_WEDGE;
case "3003":
return LOG_MENU.TVAD_COMPANION;
case "6001":
return LOG_MENU.LG_CHANNEL_QVC;
case "6002":
return LOG_MENU.LG_CHANNEL_HSN;
case "6004":
return LOG_MENU.LG_CHANNEL_ONTV4U;
case "7000":
return LOG_MENU.OVERLAY;
case "8000":
return LOG_MENU.TV_2DEPTH;
case "8001":
return LOG_MENU.TV_SEARCH;
case "8002":
return LOG_MENU.TV_SEARCH;
case "9999":
return LOG_MENU.UNKNOWN;
default:
return LOG_MENU.APP;
}
};
//V2_진입경로코드_진입경로명_MT_노출순번
export const handleDeepLink = (contentTarget) => (dispatch, getState) => {
const tokens = contentTarget.split("_");
if (tokens[0] === "V2" || tokens[0] === "V3") {
const linkTpCd = tokens[1]; // 진입경로코드
const linkTpName = tokens[2]; // 진입경로명
const linkTpNm = tokens[2]; // 진입경로명
const type = tokens[3]; // 링크 타입.
let patnrId; // 파트너아이디
let prdtId; // 상품아이디
@@ -19,9 +54,11 @@ export const handleDeepLink = (contentTarget) => (dispatch, getState) => {
let lgCatCd; // LG카테고리Code
let lgCatNm; // 서브카테고리명
let tabType; // 카테고리 탭명
let lnkCurationId; // 큐래이션 아이디
let panelName = "";
let panelInfo = {};
switch (type) {
case "MT":
// "MT": Main TOP
@@ -190,15 +227,32 @@ export const handleDeepLink = (contentTarget) => (dispatch, getState) => {
patnrId: patnrId,
};
break;
case "TC":
patnrId = tokens[4]; // 파트너아이디
panelName = panel_names.THEME_CURATION_PANEL;
panelInfo = {
lnkCurationId: lnkCurationId,
};
break;
}
if (panelName) {
console.log("handleDeepLink - panelName", panelName, panelInfo);
dispatch(
pushPanel({ name: panelName, panelInfo: { ...panelInfo, linkTpCd } })
pushPanel({
name: panelName,
panelInfo: { ...panelInfo, linkTpCd },
})
);
//todo deeplink log
// todo deeplink log
}
} else {
}
//
else {
console.log("handleDeepLink - no target");
}
};