//const DOMAIN = "http://dotest.kfems.kr:9997/"; const DOMAIN = ''; // const DOMAIN = "/"; const ROUTE_URL = { myIndex: '/', }; export const state = () => Object.assign({}, ROUTE_URL); export const actions = { // 사업장 목록 조회 selectBlocMstrCodeList // getBlocMstrList({ state, dispatch, commit }, payload) { // const res = this.$axios.post( // DOMAIN + "comm/MenuMngCtr/selectMenu", // payload || {} // ); // res // .then(value => { // // dispatch("addInx", value.data.dataset.blocCodeLists).then(list => { // // commit( // // "setPageData", // // { blocMstrList: list, blocCd: 0 }, // // { root: true } // // ); // // }); // }) // .catch(error => console.log(error)); // // .finally(() => console.log("end")); // }, async getMenu({ state, dispatch, commit }, payload) { // console.log(payload); const headers = { headers: { 'X-Fems-MenuId': 'MNU0001', }, }; const params = { params: payload || {} }; const res = await this.$axios.post( DOMAIN + 'comm/base/MenuMngCtr/selectAuthMenu', params, headers, ); // const params = { params: payload || {} }; // const res = await this.$axios.post( // DOMAIN + "comm/MenuMngCtr/selectMenu", // params // ); // console.log(res); // const list = res.data.dataset.menuList; const list = [ { comId: 'd12', sysDivCd: 'sysDivCd', //시스템구분 menuId: 'dashboardfirst', // MENU_ID (메뉴ID) prgmId: 'PRG0000', // PRGM_ID (프로그램ID) upMenuId: 'menu', // UP_MENU_ID (상위메뉴ID) menuNm: '모니터링',// MENU_NM (메뉴명) sortSeq: 9999, // SORT_SEQ (정렬순서) useFg: 'useFg',// USE_FG (사용여부) rmrk: 'rmrk', }, { comId: 'd34', sysDivCd: 'abc', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0001', // PRGM_ID (프로그램ID) upMenuId: 'dashboardfirst', // UP_MENU_ID (상위메뉴ID) menuNm: '1. Dashboard',// MENU_NM (메뉴명) sortSeq: 888, // SORT_SEQ (정렬순서) useFg: 'abc',// USE_FG (사용여부) rmrk: 'abc', url: 'ems/base/DashboardPage', lvl: 1 }, { comId: 'd100', sysDivCd: 'sysDivCd', //시스템구분 menuId: 'menu2', // MENU_ID (메뉴ID) prgmId: 'PRG0000', // PRGM_ID (프로그램ID) upMenuId: 'dashboardfirst', // UP_MENU_ID (상위메뉴ID) menuNm: '에너지 사용량',// MENU_NM (메뉴명) sortSeq: 9999, // SORT_SEQ (정렬순서) useFg: 'useFg',// USE_FG (사용여부) rmrk: 'rmrk', lvl: 1 }, { comId: 'd44', sysDivCd: 'enrguplan', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0002', // PRGM_ID (프로그램ID) upMenuId: 'dashboardfirst', // UP_MENU_ID (상위메뉴ID) menuNm: '2. Establish energy consumption plans',// MENU_NM (메뉴명) sortSeq: 888, // SORT_SEQ (정렬순서) useFg: 'enrguplan',// USE_FG (사용여부) rmrk: 'enrguplan', url: 'ems/effc/EnrgUsePlanPage', lvl: 1 }, { comId: 'd35', sysDivCd: 'energyusage', //시스템구분 menuId: 'children2', // MENU_ID (메뉴ID) prgmId: 'PRG0080', // PRGM_ID (프로그램ID) upMenuId: 'menu2', // UP_MENU_ID (상위메뉴ID) menuNm: '3. Energy usage',// MENU_NM (메뉴명) sortSeq: 5555, // SORT_SEQ (정렬순서) useFg: 'energyusage',// USE_FG (사용여부) rmrk: 'energyusage', url: 'ems/effc/EnrgUseTotSummPage', lvl: 1 }, { comId: 'd60', sysDivCd: 'energyperformance', //시스템구분 menuId: 'children2', // MENU_ID (메뉴ID) prgmId: 'PRG0081', // PRGM_ID (프로그램ID) upMenuId: 'menu2', // UP_MENU_ID (상위메뉴ID) menuNm: '4. 에너지 사용량 실적',// MENU_NM (메뉴명) sortSeq: 5555, // SORT_SEQ (정렬순서) useFg: 'energyperformance',// USE_FG (사용여부) rmrk: 'energyperformance', url: 'ems/effc/EqpmIndMntrPage', lvl: 1 }, { comId: 'd69', sysDivCd: 'MNU0104', //시스템구분 menuId: 'MNU0091', // MENU_ID (메뉴ID) prgmId: 'PRG0082', // PRGM_ID (프로그램ID) upMenuId: 'menu2', // UP_MENU_ID (상위메뉴ID) menuNm: '5. Energy Use Equipment',// MENU_NM (메뉴명) sortSeq: 5562, // SORT_SEQ (정렬순서) useFg: 'enrgUseEqpm',// USE_FG (사용여부) rmrk: 'enrgUseEqpm', url: 'ems/effc/EnrgUseEqpmDetlMntrPage', lvl: 1 }, { comId: 'd351', sysDivCd: 'energy effc', //시스템구분 menuId: 'MNU0116', // MENU_ID (메뉴ID) prgmId: 'PRG0083', // PRGM_ID (프로그램ID) upMenuId: 'menu2', // UP_MENU_ID (상위메뉴ID) menuNm: '6. Today efficiency status',// MENU_NM (메뉴명) sortSeq: 5554, // SORT_SEQ (정렬순서) useFg: 'energy effc',// USE_FG (사용여부) rmrk: 'energy effc', url: 'ems/effc/EnrgEffcTotSummPage', lvl: 1 }, { comId: 'd48', sysDivCd: 'energyeffc', //시스템구분 menuId: 'MNU0106', // MENU_ID (메뉴ID) prgmId: 'PRG0084', // PRGM_ID (프로그램ID) upMenuId: 'menu2', // UP_MENU_ID (상위메뉴ID) menuNm: '7. Energy Efficiency Equipment',// MENU_NM (메뉴명) sortSeq: 5559, // SORT_SEQ (정렬순서) useFg: 'energyeffc',// USE_FG (사용여부) rmrk: 'energyeffc', url: 'ems/effc/EnrgEffcEqpmDetlMntrPage', lvl: 1 }, { comId: 'd336', sysDivCd: 'engrepmng', //시스템구분 menuId: 'MNU0106', // MENU_ID (메뉴ID) prgmId: 'PRG0908', // PRGM_ID (프로그램ID) upMenuId: 'menu2', // UP_MENU_ID (상위메뉴ID) menuNm: '8. 효율성 지표 보고서',// MENU_NM (메뉴명) sortSeq: 5558, // SORT_SEQ (정렬순서) useFg: 'engrepmng',// USE_FG (사용여부) rmrk: 'engrepmng', url: 'ems/effc/EnrgReptMngPage', lvl: 1 }, { comId: 'd100', sysDivCd: 'sysDivCd', //시스템구분 menuId: 'menu3', // MENU_ID (메뉴ID) prgmId: 'PRG0000', // PRGM_ID (프로그램ID) upMenuId: 'dashboardfirst', // UP_MENU_ID (상위메뉴ID) menuNm: '에너지 효율운전',// MENU_NM (메뉴명) sortSeq: 9999, // SORT_SEQ (정렬순서) useFg: 'useFg',// USE_FG (사용여부) rmrk: 'rmrk', lvl: 1 }, { comId: 'd337', sysDivCd: 'datasetmng', //시스템구분 menuId: 'MNU0104', // MENU_ID (메뉴ID) prgmId: 'PRG0909', // PRGM_ID (프로그램ID) upMenuId: 'menu3', // UP_MENU_ID (상위메뉴ID) menuNm: '9. 전기에너지 MAP',// MENU_NM (메뉴명) sortSeq: 5556, // SORT_SEQ (정렬순서) useFg: 'datasetmng',// USE_FG (사용여부) rmrk: 'datasetmng', url: 'ems/effc/EnrgMapPage', lvl: 1 }, { comId: 'd36', sysDivCd: 'datasetmng', //시스템구분 menuId: 'MNU0104', // MENU_ID (메뉴ID) prgmId: 'PRG0910', // PRGM_ID (프로그램ID) upMenuId: 'menu3', // UP_MENU_ID (상위메뉴ID) menuNm: '10. Dataset management',// MENU_NM (메뉴명) sortSeq: 5557, // SORT_SEQ (정렬순서) useFg: 'datasetmng',// USE_FG (사용여부) rmrk: 'datasetmng', url: 'ems/effc/DataSetMngPage', lvl: 1 }, { comId: 'd49', sysDivCd: 'tagTrend', //시스템구분 menuId: 'MNU0104', // MENU_ID (메뉴ID) prgmId: 'PRG0036', // PRGM_ID (프로그램ID) upMenuId: 'menu3', // UP_MENU_ID (상위메뉴ID) menuNm: '11. Tag Trend',// MENU_NM (메뉴명) sortSeq: 5562, // SORT_SEQ (정렬순서) useFg: 'tagTrend',// USE_FG (사용여부) rmrk: 'tagTrend', url: 'ems/effc/TagTrndPage', lvl: 1 }, { comId: 'd49', sysDivCd: 'noticemng', //시스템구분 menuId: 'MNU0105', // MENU_ID (메뉴ID) prgmId: 'PRG0037', // PRGM_ID (프로그램ID) upMenuId: 'menu3', // UP_MENU_ID (상위메뉴ID) menuNm: '12. Notices Management',// MENU_NM (메뉴명) sortSeq: 5562, // SORT_SEQ (정렬순서) useFg: 'noticemng',// USE_FG (사용여부) rmrk: 'noticemng', url: 'comm/base/NoticeMngPage', lvl: 1 }, { comId: 'd57', sysDivCd: 'energyResource', //시스템구분 menuId: 'MNU0104', // MENU_ID (메뉴ID) prgmId: 'PRG0039', // PRGM_ID (프로그램ID) upMenuId: 'menu3', // UP_MENU_ID (상위메뉴ID) menuNm: '14. Energy Resource',// MENU_NM (메뉴명) sortSeq: 5567, // SORT_SEQ (정렬순서) useFg: 'energyResource',// USE_FG (사용여부) rmrk: 'energyResource', url: 'ems/base/EnrgResourceCenterMngPage', lvl: 1 }, { comId: 'd38', sysDivCd: 'readobj', //시스템구분 menuId: 'readobj', // MENU_ID (메뉴ID) prgmId: 'PRG0007', // PRGM_ID (프로그램ID) upMenuId: 'menu3', // UP_MENU_ID (상위메뉴ID) menuNm: '15. Read Object Management',// MENU_NM (메뉴명) sortSeq: 5558, // SORT_SEQ (정렬순서) useFg: 'readobj',// USE_FG (사용여부) rmrk: 'readobj', url: 'ems/base/ReadObjectMngPage', lvl: 1 }, { comId: 'd100', sysDivCd: 'sysDivCd', //시스템구분 menuId: 'menu4', // MENU_ID (메뉴ID) prgmId: 'PRG0000', // PRGM_ID (프로그램ID) upMenuId: 'dashboardfirst', // UP_MENU_ID (상위메뉴ID) menuNm: '에너지 보고서',// MENU_NM (메뉴명) sortSeq: 9999, // SORT_SEQ (정렬순서) useFg: 'useFg',// USE_FG (사용여부) rmrk: 'rmrk', lvl: 1 }, { comId: 'd48', sysDivCd: 'energyread', //시스템구분 menuId: 'MNU0007', // MENU_ID (메뉴ID) prgmId: 'PRG0011', // PRGM_ID (프로그램ID) upMenuId: 'menu4', // UP_MENU_ID (상위메뉴ID) menuNm: '16. Meter Reading',// MENU_NM (메뉴명) sortSeq: 5559, // SORT_SEQ (정렬순서) useFg: 'energyread',// USE_FG (사용여부) rmrk: 'energyread', url: 'ems/base/EnrgReadPlaceMngPage', lvl: 1 }, { comId: 'd39', sysDivCd: 'energycost', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0008', // PRGM_ID (프로그램ID) upMenuId: 'menu4', // UP_MENU_ID (상위메뉴ID) menuNm: '17. Process',// MENU_NM (메뉴명) sortSeq: 5559, // SORT_SEQ (정렬순서) useFg: 'energycost',// USE_FG (사용여부) rmrk: 'energycost', url: 'ems/base/EnrgCostCenterMngPage', lvl: 1 }, { comId: 'd39', sysDivCd: 'equipmenttype', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0013', // PRGM_ID (프로그램ID) upMenuId: 'menu4', // UP_MENU_ID (상위메뉴ID) menuNm: '18. Type of Equipment',// MENU_NM (메뉴명) sortSeq: 5559, // SORT_SEQ (정렬순서) useFg: 'equipmenttype',// USE_FG (사용여부) rmrk: 'equipmenttype', url: 'ems/base/EqpmKindPage', lvl: 1 }, { comId: 'd39', sysDivCd: 'equipmentgroup', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0014', // PRGM_ID (프로그램ID) upMenuId: 'menu4', // UP_MENU_ID (상위메뉴ID) menuNm: '19. Facility Group',// MENU_NM (메뉴명) sortSeq: 5559, // SORT_SEQ (정렬순서) useFg: 'equipmentgroup',// USE_FG (사용여부) rmrk: 'equipmentgroup', url: 'ems/base/EquipmentGroupMngPage', lvl: 1 }, { comId: 'd46', sysDivCd: 'equipmentmaster', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0920', // PRGM_ID (프로그램ID) upMenuId: 'menu4', // UP_MENU_ID (상위메뉴ID) menuNm: '20. Equipment Master Management',// MENU_NM (메뉴명) sortSeq: 5557, // SORT_SEQ (정렬순서) useFg: 'equipmentmaster',// USE_FG (사용여부) rmrk: 'equipmentmaster', url: 'ems/base/EquipmentMasterMngPage', lvl: 1 }, { comId: 'd46', sysDivCd: 'tags', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0921', // PRGM_ID (프로그램ID) upMenuId: 'menu4', // UP_MENU_ID (상위메뉴ID) menuNm: '21. Tags',// MENU_NM (메뉴명) sortSeq: 5557, // SORT_SEQ (정렬순서) useFg: 'tags',// USE_FG (사용여부) rmrk: 'tags', url: 'ems/base/TagMngPage_Pagination', lvl: 1 }, { comId: 'd48', sysDivCd: 'pysclqty', //시스템구분 menuId: 'MNU0007', // MENU_ID (메뉴ID) prgmId: 'PRG0075', // PRGM_ID (프로그램ID) upMenuId: 'menu4', // UP_MENU_ID (상위메뉴ID) menuNm: '22. Physical quantity information',// MENU_NM (메뉴명) sortSeq: 5559, // SORT_SEQ (정렬순서) useFg: 'pysclqty',// USE_FG (사용여부) rmrk: 'pysclqty', url: 'ems/base/EqpmGrpPysclQtyMngPage', lvl: 1 }, { comId: 'd100', sysDivCd: 'sysDivCd', //시스템구분 menuId: 'menu5', // MENU_ID (메뉴ID) prgmId: 'PRG0000', // PRGM_ID (프로그램ID) upMenuId: 'dashboardfirst', // UP_MENU_ID (상위메뉴ID) menuNm: '에너지 FLOW',// MENU_NM (메뉴명) sortSeq: 9999, // SORT_SEQ (정렬순서) useFg: 'useFg',// USE_FG (사용여부) rmrk: 'rmrk', lvl: 1 }, { comId: 'd48', sysDivCd: 'gdidxmng', //시스템구분 menuId: 'MNU0007', // MENU_ID (메뉴ID) prgmId: 'PRG0076', // PRGM_ID (프로그램ID) upMenuId: 'menu5', // UP_MENU_ID (상위메뉴ID) menuNm: '23. Guided Indicators',// MENU_NM (메뉴명) sortSeq: 5559, // SORT_SEQ (정렬순서) useFg: 'gdidxmng',// USE_FG (사용여부) rmrk: 'gdidxmng', url: 'ems/base/GdIdxMngPage', lvl: 1 }, { comId: 'd48', sysDivCd: 'gdstndmng', //시스템구분 menuId: 'MNU0007', // MENU_ID (메뉴ID) prgmId: 'PRG0077', // PRGM_ID (프로그램ID) upMenuId: 'menu5', // UP_MENU_ID (상위메뉴ID) menuNm: '24. Guidelines',// MENU_NM (메뉴명) sortSeq: 5559, // SORT_SEQ (정렬순서) useFg: 'gdigdstndmngdxmng',// USE_FG (사용여부) rmrk: 'gdstndmng', url: 'ems/base/GdStndMngPage', lvl: 1 }, { comId: 'd48', sysDivCd: 'effcidxmng', //시스템구분 menuId: 'MNU0007', // MENU_ID (메뉴ID) prgmId: 'PRG0012', // PRGM_ID (프로그램ID) upMenuId: 'menu5', // UP_MENU_ID (상위메뉴ID) menuNm: '25. Efficiency Indicators',// MENU_NM (메뉴명) sortSeq: 5559, // SORT_SEQ (정렬순서) useFg: 'effcidxmng',// USE_FG (사용여부) rmrk: 'effcidxmng', url: 'ems/base/EffcIdxMngPage', lvl: 1 }, { comId: 'd100', sysDivCd: 'sysDivCd', //시스템구분 menuId: 'menu6', // MENU_ID (메뉴ID) prgmId: 'PRG0000', // PRGM_ID (프로그램ID) upMenuId: 'dashboardfirst', // UP_MENU_ID (상위메뉴ID) menuNm: '데이터 분석',// MENU_NM (메뉴명) sortSeq: 9999, // SORT_SEQ (정렬순서) useFg: 'useFg',// USE_FG (사용여부) rmrk: 'rmrk', lvl: 1 }, { comId: 'd40', sysDivCd: 'MNU0006', //시스템구분 menuId: 'addInfoMg', // MENU_ID (메뉴ID) prgmId: 'PRG0009', // PRGM_ID (프로그램ID) upMenuId: 'menu6', // UP_MENU_ID (상위메뉴ID) menuNm: '26. Management of Additional Information',// MENU_NM (메뉴명) sortSeq: 5560, // SORT_SEQ (정렬순서) useFg: 'addInfoMg',// USE_FG (사용여부) rmrk: 'addInfoMg', url: 'ems/base/AddInfoMngPage', lvl: 1 }, { comId: 'd47', sysDivCd: 'readresultclosemng', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0927', // PRGM_ID (프로그램ID) upMenuId: 'menu6', // UP_MENU_ID (상위메뉴ID) menuNm: '27. 계량 데이터 마감 관리',// MENU_NM (메뉴명) sortSeq: 5657, // SORT_SEQ (정렬순서) useFg: 'readresultclosemng',// USE_FG (사용여부) rmrk: 'readresultclosemng', url: 'ems/base/ReadResultCloseMngPage', lvl: 1 }, { comId: 'd47', sysDivCd: 'pastrsltdataread', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0928', // PRGM_ID (프로그램ID) upMenuId: 'menu6', // UP_MENU_ID (상위메뉴ID) menuNm: '28. Metering location Data Inquiry',// MENU_NM (메뉴명) sortSeq: 5657, // SORT_SEQ (정렬순서) useFg: 'pastrsltdataread',// USE_FG (사용여부) rmrk: 'pastrsltdataread', url: 'ems/base/PastRsltDataReadPage', lvl: 1 }, { comId: 'd47', sysDivCd: 'menumng', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0064', // PRGM_ID (프로그램ID) upMenuId: 'menu6', // UP_MENU_ID (상위메뉴ID) menuNm: '30. Menu Management',// MENU_NM (메뉴명) sortSeq: 5657, // SORT_SEQ (정렬순서) useFg: 'menumng',// USE_FG (사용여부) rmrk: 'menumng', url: 'comm/auth/MenuMngPage', lvl: 1 }, { comId: 'd41', sysDivCd: 'roleMg', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG00030', // PRGM_ID (프로그램ID) upMenuId: 'menu6', // UP_MENU_ID (상위메뉴ID) menuNm: '31. Role',// MENU_NM (메뉴명) sortSeq: 5560, // SORT_SEQ (정렬순서) useFg: 'roleMg',// USE_FG (사용여부) rmrk: 'roleMg', url: 'comm/auth/RoleMngPage', lvl: 1 }, { comId: 'd47', sysDivCd: 'prgmmng', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0119', // PRGM_ID (프로그램ID) upMenuId: 'menu6', // UP_MENU_ID (상위메뉴ID) menuNm: '34. 프로그램',// MENU_NM (메뉴명) sortSeq: 5657, // SORT_SEQ (정렬순서) useFg: 'prgmmng',// USE_FG (사용여부) rmrk: 'prgmmng', url: 'comm/base/PrgmMngPage', lvl: 1 }, { comId: 'd100', sysDivCd: 'sysDivCd', //시스템구분 menuId: 'menu7', // MENU_ID (메뉴ID) prgmId: 'PRG0000', // PRGM_ID (프로그램ID) upMenuId: 'dashboardfirst', // UP_MENU_ID (상위메뉴ID) menuNm: '데이터 조회',// MENU_NM (메뉴명) sortSeq: 9999, // SORT_SEQ (정렬순서) useFg: 'useFg',// USE_FG (사용여부) rmrk: 'rmrk', lvl: 1 }, { comId: 'd47', sysDivCd: 'batchmng', //시스템구분 menuId: 'MNU0006', // MENU_ID (메뉴ID) prgmId: 'PRG0019', // PRGM_ID (프로그램ID) upMenuId: 'menu7', // UP_MENU_ID (상위메뉴ID) menuNm: '35. Batch Management',// MENU_NM (메뉴명) sortSeq: 5657, // SORT_SEQ (정렬순서) useFg: 'batchmng',// USE_FG (사용여부) rmrk: 'batchmng', url: 'comm/base/BatchMngPage', lvl: 1 }, { comId: 'd100', sysDivCd: 'sysDivCd', //시스템구분 menuId: 'menu8', // MENU_ID (메뉴ID) prgmId: 'PRG0000', // PRGM_ID (프로그램ID) upMenuId: 'dashboardfirst', // UP_MENU_ID (상위메뉴ID) menuNm: '데이터 조회',// MENU_NM (메뉴명) sortSeq: 9999, // SORT_SEQ (정렬순서) useFg: 'useFg',// USE_FG (사용여부) rmrk: 'rmrk', lvl: 1, icon: "mdi-chevron-down", }, { comId: 'd42', sysDivCd: 'MNU0006', //시스템구분 menuId: 'batchLg', // MENU_ID (메뉴ID) prgmId: 'PRG00010', // PRGM_ID (프로그램ID) upMenuId: 'menu8', // UP_MENU_ID (상위메뉴ID) menuNm: '36. Batch log',// MENU_NM (메뉴명) sortSeq: 5561, // SORT_SEQ (정렬순서) useFg: 'batchLg',// USE_FG (사용여부) rmrk: 'batchLg', url: 'comm/base/BatchLogMngPage', lvl: 1, }, // { // comId: 'd37', // sysDivCd: 'energyeffc', //시스템구분 // menuId: 'energyeffc', // MENU_ID (메뉴ID) // prgmId: 'PRG0006', // PRGM_ID (프로그램ID) // upMenuId: 'dashboardfirst', // UP_MENU_ID (상위메뉴ID) // menuNm: 'Energy Efficiency Equipment',// MENU_NM (메뉴명) // sortSeq: 5557, // SORT_SEQ (정렬순서) // useFg: 'energyeffc',// USE_FG (사용여부) // rmrk: 'energyeffc', // url: 'ems/effc/EnrgEffcEqpmDetlMntrPage' // }, ] let myMenu = []; if (list.length > 0) { myMenu = list // .filter(ele => { // return ele.useFg === "1"; // }) // 사용 설정된것만 => 실제로 사용되는 값만 들어오면 삭제 .map((item, i) => ({ ...item, id: item.prgmId || i, upMenuId: item.upMenuId || item.menuNm, // title: item.menuNm icon: 'mdi-chevron-down', // 아이콘은,. 값을 받아오지 않는 이상 별도로 상수화해서 prgmId 값을 키로 꺼내써야 할듯, to: state[item.prgmId], // to: '' // 경로는,. 값을 받아오지 않는 이상 아이콘과 마찬가지로 짝지어 상수화 하거나 sysDivCd, prgmId 값 등을 이용해 조합해서 route를 구성해야 할듯, })); // console.log("myMenu::", myMenu); } dispatch('setMenuTree', myMenu); commit( 'setMenuItems', myMenu.reduce( (acc, it) => ({ ...acc, [it.prgmId]: it, }), {}, ), { root: true }, ); }, // 메뉴 트리 세팅 async setMenuTree({ commit }, payload) { // console.log("setTree::res = ", res); let tmpLsit = []; if (payload.length > 0) { tmpLsit = payload .map(item => ({ ...item, children: [], })) .reduce( // 동일한 부모를 가진 object 끼리 묶기 (acc, it) => ({ ...acc, [it.upMenuId]: acc[it.upMenuId] ? [...acc[it.upMenuId], it] : [it], }), {}, ); Object.getOwnPropertyNames(tmpLsit) .reverse() .forEach(function (val, idx, array) { array.map(obj => { tmpLsit[obj].filter(v => { if (val === v.menuId) { // 부모 키와 동일한 값을 가지고 있는 목록의 children 에 추가 v.children = tmpLsit[val]; } if (val === obj && v.children.length === 0) { // 자식이 없느면 삭제 delete v.children; } }); }); }); } console.log('menu test:', tmpLsit["0"]); commit('setTreevieItems', tmpLsit.menu['0'], { root: true }); }, };