diff --git a/src/main/java/geoinfo/regi/manageList/ManageListController.java b/src/main/java/geoinfo/regi/manageList/ManageListController.java index 152ef950..60307bbc 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageListController.java +++ b/src/main/java/geoinfo/regi/manageList/ManageListController.java @@ -15,6 +15,7 @@ import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; import com.fasterxml.jackson.databind.ObjectMapper; @@ -25,6 +26,7 @@ import egovframework.rte.psl.dataaccess.util.EgovMap; import geoinfo.regi.info.service.InfoService; import geoinfo.regi.manageList.service.ManageListService; import geoinfo.regi.status.service.RegiPageService; +import geoinfo.util.MyUtil; import ictway.comm.util.parseData; import ictway.comm.util.strUtil; import ictway.comm.web.WebUtil; @@ -85,7 +87,8 @@ public class ManageListController { // SelectBox형태로 map으로 받기 HashMap mapCommon = wUtil.getCommCodeSel(commCode, arrayCommon,""); - ArrayList result = masterService.getDataList(params); +// ArrayList result = masterService.getDataList(params); + ArrayList result = new ArrayList<>(); count = commonService.getCommonCodeCount(); @@ -102,6 +105,59 @@ public class ManageListController { return "/web/manage/list"; }; + /** + * kendo grid 목록데이타 AJAX 요청 + * @throws Exception + */ + @RequestMapping("/getManageList.do") + @ResponseBody + public Map getManageList(HttpServletRequest request, HttpServletResponse response, @RequestParam HashMap params) throws Exception { + + int page = params.get("page").toString() != null ? Integer.parseInt(params.get("page").toString()) : 1; + int pageSize = params.get("pageSize") != null ? Integer.parseInt((String)params.get("pageSize")) : 10; // 기본값 10 + + // 정렬 필드/방향 처리 + String sortField = (String) params.get("sort[0][field]"); + String sortDir = (String) params.get("sort[0][dir]"); + + // 기본 정렬 지정 (없을 경우) + if (sortField == null || sortField.isEmpty()) sortField = "datetime"; + if (sortDir == null || sortDir.isEmpty()) sortDir = "desc"; + + // MyBatis에 넣을 때는 깔끔하게 키 이름 정리 + params.put("sortField", sortField); + params.put("sortDir", sortDir); + + int nCls = MyUtil.getIntegerFromObject(request.getSession().getAttribute("CLS")); + strUtil sUtil = new strUtil(); + WebUtil wUtil = new WebUtil(); + wUtil.topTabId = "manageCoordinate"; // 검수일때 tab 활성화 시켜주기 위해 + String loginUserId = String.valueOf(request.getSession().getAttribute("USERID")); + // requestString srchReportType = sUtil.checkNull(parseData.parseData((String)params.get("searchReportType"))); + String searchProjectName = sUtil.checkNull(parseData.parseData((String)params.get("searchProjectName"))); + String searchProjectCode = sUtil.checkNull(parseData.parseData((String)params.get("searchProjectCode"))); + String searchHistSeq = sUtil.checkNull(parseData.parseData((String)params.get("searchHistSeq"))); + String searchUserName = sUtil.checkNull(parseData.parseData((String)params.get("searchUserName"))); + String searchState = sUtil.checkNull(parseData.parseData((String)params.get("searchState"))); + + params.put("loginUserId", loginUserId); + params.put("cls", nCls); + params.put("startRow", ((page - 1) * pageSize) + 1); + if (page > 1) { + params.put("endRow", (((page - 1) * pageSize) + 1) + pageSize - 1); // startRow + pageSize - 1 + } else { + params.put("endRow", 10); + } + + List items = masterService.getDataListPaging(params); + int total = masterService.getDataListCount(params); + + Map result = new HashMap<>(); + result.put("items", items); + result.put("total", total); + return result; + } + // 지반정보등록 (관리자) - 일반 입력자도 여기 로직을 통해 화면이 보여짐. @RequestMapping(value = "/meta_info.do") public String meta_info(@RequestParam HashMap params, diff --git a/src/main/java/geoinfo/regi/manageList/service/ManageListMapper.java b/src/main/java/geoinfo/regi/manageList/service/ManageListMapper.java index 96a3ed1c..05828753 100644 --- a/src/main/java/geoinfo/regi/manageList/service/ManageListMapper.java +++ b/src/main/java/geoinfo/regi/manageList/service/ManageListMapper.java @@ -9,6 +9,10 @@ import egovframework.rte.psl.dataaccess.util.EgovMap; @Mapper("manageListMapper") public interface ManageListMapper { + public Integer getDataListCount(HashMap params) throws Exception; + + public ArrayList getDataListPaging(HashMap params) throws Exception; + public ArrayList getDataList(HashMap params) throws Exception; public EgovMap getModeifyCallReason(HashMap params) throws Exception; diff --git a/src/main/java/geoinfo/regi/manageList/service/ManageListService.java b/src/main/java/geoinfo/regi/manageList/service/ManageListService.java index a9f579d3..c3493d34 100644 --- a/src/main/java/geoinfo/regi/manageList/service/ManageListService.java +++ b/src/main/java/geoinfo/regi/manageList/service/ManageListService.java @@ -8,6 +8,10 @@ import egovframework.rte.psl.dataaccess.util.EgovMap; public interface ManageListService { + public Integer getDataListCount(HashMap params) throws Exception; + + public ArrayList getDataListPaging(HashMap params) throws Exception; + public ArrayList getDataList(HashMap params) throws Exception; public EgovMap getModeifyCallReason(HashMap params) throws Exception; diff --git a/src/main/java/geoinfo/regi/manageList/service/impl/ManageListServiceImpl.java b/src/main/java/geoinfo/regi/manageList/service/impl/ManageListServiceImpl.java index 46a22de8..5c9cfe42 100644 --- a/src/main/java/geoinfo/regi/manageList/service/impl/ManageListServiceImpl.java +++ b/src/main/java/geoinfo/regi/manageList/service/impl/ManageListServiceImpl.java @@ -17,6 +17,16 @@ public class ManageListServiceImpl implements ManageListService { @Resource(name = "manageListMapper") private ManageListMapper manageListMapper; + @Override + public Integer getDataListCount(HashMap params) throws Exception { + return manageListMapper.getDataListCount(params); + } + + @Override + public ArrayList getDataListPaging(HashMap params) throws Exception { + return manageListMapper.getDataListPaging(params); + } + @Override public ArrayList getDataList(HashMap params) throws Exception { return manageListMapper.getDataList(params); diff --git a/src/main/resources/egovframework/sqlmap/mapper/regi/manageList.xml b/src/main/resources/egovframework/sqlmap/mapper/regi/manageList.xml index 799f760c..ee8f6316 100644 --- a/src/main/resources/egovframework/sqlmap/mapper/regi/manageList.xml +++ b/src/main/resources/egovframework/sqlmap/mapper/regi/manageList.xml @@ -25,7 +25,7 @@ , T.MAP , T.MODIFYCALL , DECODE(T.STATE,'2','true',DECODE(T.STATE,'3','true',DECODE(T.STATE,'5','true','false'))) AS CURSOR - , OB.HIST_SEQ + , NVL(OB.HIST_SEQ, 0) HIST_SEQ , TO_CHAR(OC.DATETIME, 'YYYY-MM-DD HH24:MI:SS') AS REG_FIN_DATE , TO_CHAR(OB.MODIFY_CALL_DATE, 'YYYY-MM-DD HH24:MI:SS') AS MODIFY_CALL_DATE , TO_CHAR(OB.MODIFY_FIN_DATE, 'YYYY-MM-DD HH24:MI:SS') AS MODIFY_FIN_DATE @@ -91,6 +91,245 @@ + + + + + +