diff --git a/src/main/java/kcc/let/sym/log/clg/web/EgovLoginLogController.java b/src/main/java/kcc/let/sym/log/clg/web/EgovLoginLogController.java index e1b62f1f..616f8960 100644 --- a/src/main/java/kcc/let/sym/log/clg/web/EgovLoginLogController.java +++ b/src/main/java/kcc/let/sym/log/clg/web/EgovLoginLogController.java @@ -3,6 +3,7 @@ package kcc.let.sym.log.clg.web; import java.io.OutputStream; import java.text.SimpleDateFormat; import java.util.ArrayList; +import java.util.Calendar; import java.util.Date; import java.util.List; import java.util.Locale; @@ -105,7 +106,7 @@ public class EgovLoginLogController { loginLog.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); if("".equals(loginLog.getSearchSortCnd())){ //최초조회시 최신것 조회List - loginLog.setSearchSortCnd("logId"); + loginLog.setSearchSortCnd("b.creat_dt"); loginLog.setSearchSortOrd("desc"); } List adminLogList = loginLogService.selectAmdinLog(loginLog); @@ -191,7 +192,7 @@ public class EgovLoginLogController { paginationInfo.setTotalRecordCount(adminLogListCnt); model.addAttribute("paginationInfo", paginationInfo); model.addAttribute("adminLogList", adminLogList); - return "sym/log/clg/NSelectWebLogList"; + return "/sym/log/clg/NSelectWebLogList"; } /** @@ -521,9 +522,7 @@ public class EgovLoginLogController { @RequestMapping(value = "/sym/log/clg/SelectWebLogList.do") public String selectWebLogList(@ModelAttribute("searchVO") LoginLog loginLog, @RequestParam Map commandMap , - ModelMap model) throws Exception { - - /* + ModelMap model) throws Exception { if(loginLog.getPageUnit() != 10) { loginLog.setPageUnit(loginLog.getPageUnit()); } @@ -533,16 +532,20 @@ public class EgovLoginLogController { } if("".equals(loginLog.getSearchBgnDe())) { //최초 로딩 일별 30일까지 Date today = new Date(); + + Calendar cal = Calendar.getInstance(); + cal.setTime(today); + cal.add(Calendar.DATE, 0); + SimpleDateFormat date = new SimpleDateFormat("yyyy-MM-dd", Locale.KOREA); - loginLog.setSearchEndDe(date.format(today)); //오늘 + loginLog.setSearchEndDe(date.format(cal.getTime())); //오늘 Calendar mon = Calendar.getInstance(); //한달 전 - mon.add(Calendar.MONTH , -1); + mon.add(Calendar.DATE , -7); String beforeMonth = new java.text.SimpleDateFormat("yyyy-MM-dd").format(mon.getTime()); loginLog.setSearchBgnDe(beforeMonth); } - */ - /* + PaginationInfo paginationInfo = new PaginationInfo(); paginationInfo.setCurrentPageNo(loginLog.getPageIndex()); paginationInfo.setRecordCountPerPage(loginLog.getPageUnit()); @@ -557,21 +560,21 @@ public class EgovLoginLogController { loginLog.setSearchSortCnd("logId"); loginLog.setSearchSortOrd("asc"); } - */ - //List webMenuLogList = loginLogService.selectWebMenuLogList(loginLog); //사용자 매뉴 리스트 + List webMenuLogList = loginLogService.selectWebMenuLogList(loginLog); //사용자 매뉴 리스트 List userMenuList = loginLogService.selectUserMenuList20221108(loginLog); //사용자 매뉴(전체) - /* for(LoginLog userMenuVO :userMenuList){ List tempDataList = new ArrayList(); for(LoginLog logVO : webMenuLogList) { - if(userMenuVO.getProgrmFileNm().equals(logVO.getProgrmFileNm())){ + /* + if(userMenuVO.getMenuNm().equals(logVO.getMenuNm())){ LoginLog tempLog = new LoginLog(); tempLog.setCreatDt(logVO.getCreatDt()); tempLog.setMenuCnt(logVO.getMenuCnt()); tempDataList.add(tempLog); } + */ } userMenuVO.setLogDataList(tempDataList); //메뉴이름 + list배열 } @@ -588,15 +591,15 @@ public class EgovLoginLogController { tempLog.setMenuCnt(totalCnt); logVO.getLogDataList().add(tempLog); } - */ model.addAttribute("userMenuList", userMenuList); /* paginationInfo.setTotalRecordCount( webLogList.size()> 0 ? ((LoginLog)webLogList.get(0)).getTotCnt() : 0); model.addAttribute("webLogList", webLogList);*/ - //paginationInfo.setTotalRecordCount(userMenuList.size()); - //model.addAttribute("paginationInfo", paginationInfo); - return "sym/log/clg/SelectWebLogList"; + paginationInfo.setTotalRecordCount(userMenuList.size()); + model.addAttribute("paginationInfo", paginationInfo); + return "/sym/log/clg/SelectWebLogList"; + //return new ModelAndView("/sym/log/clg/SelectWebLogList"); } /** diff --git a/src/main/resources/egovframework/sqlmap/let/sym/log/clg/EgovLoginLog_SQL_Mysql.xml b/src/main/resources/egovframework/sqlmap/let/sym/log/clg/EgovLoginLog_SQL_Mysql.xml index 2db991ad..c459c6c7 100644 --- a/src/main/resources/egovframework/sqlmap/let/sym/log/clg/EgovLoginLog_SQL_Mysql.xml +++ b/src/main/resources/egovframework/sqlmap/let/sym/log/clg/EgovLoginLog_SQL_Mysql.xml @@ -908,6 +908,7 @@ ) A WHERE A.Dates BETWEEN '2020-09-09' AND DATE_FORMAT(NOW() , '%Y-%m-%d') + /* 임시.*NOT_SQL_LOG.* LoginLogDAO.selectAmdinLog */ + + SELECT * FROM + ( + SELECT ROW_.*, ROWNUM AS RNUM FROM + ( SELECT COUNT(1) OVER() AS totCnt @@ -249,12 +254,19 @@ , c.USER_ID AS loginId , c.USER_NM AS userNm FROM LETTNADMINMETHOD a + /* , LETTNADMINLOG b + */ + , lettnloginlog b , COMVNUSERMASTER c WHERE 1=1 - AND a.use_yn='Y' + AND NVL(a.use_yn,'Y')='Y' AND a.method_cd='A' - AND a.METHOD_NM =b.PROGRM_FILE_NM + /* + AND a.METHOD_NM =b.PROGRM_FILE_NM + */ + AND a.MENU_NM = b.MENU_NM + AND b.CONECT_ID =c.ESNTL_ID @@ -291,10 +303,17 @@ $searchSortOrd$ + + ) ROW_ + ) + WHERE RNUM > #firstIndex# AND #recordCountPerPage# >= ROWNUM + /* LIMIT recordCountPerPage OFFSET firstIndex */ - OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY; + /* + OFFSET firstIndex ROWS FETCH NEXT recordCountPerPage ROWS ONLY; + */ @@ -359,6 +378,7 @@ /* 임시.*NOT_SQL_LOG.* LoginLogDAO.selectNWebLog */ + SELECT * FROM + ( + SELECT ROW_.*, ROWNUM AS RNUM FROM + ( + SELECT COUNT(1) OVER() AS totCnt , a.MENU_NM AS menuNm @@ -407,7 +432,10 @@ WHERE 1=1 AND a.use_yn='Y' AND a.method_cd='U' + /* AND a.METHOD_NM =b.PROGRM_FILE_NM + */ + AND a.MENU_NM =b.MENU_NM @@ -438,17 +466,30 @@ $searchSortOrd$ - + + ) ROW_ + ) + WHERE RNUM > #firstIndex# AND #recordCountPerPage# >= ROWNUM + /* LIMIT recordCountPerPage OFFSET firstIndex */ - OFFSET #firstIndex# ROWS FETCH NEXT #recordCountPerPage# ROWS ONLY; + + /* + OFFSET firstIndex ROWS FETCH NEXT recordCountPerPage ROWS ONLY; + */ @@ -566,6 +613,7 @@ , MENU_NM = #menuNm# , APPRO_NM = #approNm# , PRIVACY = #privacy# + , method_cd = #dateType# , USE_YN = #useYn# , sort_num = #sortNum# WHERE ADMOT_ID = #admotId# @@ -1096,6 +1144,29 @@ ORDER BY C.menuNo , C.creatDt DESC + + + + + + + + ${loginLog.dateType}     -     U(사용자) / A(관리자)