package itn.let.solr.sys.web; import java.util.Calendar; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo; import itn.com.cmm.LoginVO; import itn.let.solr.sys.service.ResearchService; import itn.let.solr.sys.service.ResearchVO; @Controller public class ResearchController { @Resource(name = "researchService") protected ResearchService researchService; @RequestMapping("/uss/research/researchList.do") public String selectResearchList(@ModelAttribute("researchVO") ResearchVO searchVO, Model model) throws Exception { LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser(); /** 프로퍼티 데이터 에서 페이지정보 셋팅 */ //searchVO.setPageUnit(propertiesService.getInt("researchPageUnit")); //searchVO.setPageSize(propertiesService.getInt("researchPageSize")); /** pageing */ PaginationInfo paginationInfo = new PaginationInfo(); paginationInfo.setCurrentPageNo(searchVO.getPageIndex()); paginationInfo.setRecordCountPerPage(searchVO.getPageUnit()); paginationInfo.setPageSize(searchVO.getPageSize()); searchVO.setFirstIndex(paginationInfo.getFirstRecordIndex()); searchVO.setLastIndex(paginationInfo.getLastRecordIndex()); searchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage()); List researchList = researchService.selectResearchList(searchVO); model.addAttribute("researchList",researchList); int totCnt = researchService.selectResearchListTotCnt(searchVO); paginationInfo.setTotalRecordCount(totCnt); /** 페이지정보 */ model.addAttribute("paginationInfo", paginationInfo); //List researchList = researchService.selectResearchList(searchVO); return "/sym/research/researchList"; } /*단일만족도*/ @RequestMapping("/uss/research/researchResult.do") public String selectResearchResult(@ModelAttribute("researchVO") ResearchVO searchVO, Model model) throws Exception { ResearchVO tempSearchVO = new ResearchVO(); tempSearchVO = researchService.selectResearchResultCnt(searchVO); //searchVO.setMcIdx(mcIdx); //searchVO.setMcTitle(mcTitle); model.addAttribute("researchResultCnt",tempSearchVO); //searchVO.setPageIndex(pageIndex); Calendar now = Calendar.getInstance(); int year, yearMin, yearMax; year = now.get(Calendar.YEAR); yearMin = 2014; yearMax = now.get(Calendar.YEAR); model.addAttribute("yearMin",yearMin); model.addAttribute("yearMax",yearMax); List researchResult = researchService.selectResearchResult(searchVO); model.addAttribute("researchResult",researchResult); return "/sym/research/researchResult"; } /*단일도 사용자 테스트 페이지*/ @RequestMapping("/sys/research/userResearch.do") public String userResearch(Model model, HttpServletRequest request ) throws Exception { selectNaviList(3, model); return "/sym/research/userResearch"; } /*하단 만족도 IMPORT 파일*/ @RequestMapping("/web/research/userResearchImport.do") public String userResearchImport(@RequestParam Map commandMap, Model model) throws Exception { String mcIdx = (String) commandMap.get("mcIdx"); selectNaviList(Integer.parseInt(mcIdx), model); return "/sym/research/userResearchImport"; } /** * NAVI리스트 */ public boolean selectNaviList(Integer mcIdx, Model model) throws Exception { if(mcIdx == null || mcIdx < 1) mcIdx = 0; /*List naviList = researchService.selectNaviList(mcIdx); model.addAttribute("naviList", naviList); List naviSubList = researchService.selectNaviSubList(mcIdx); model.addAttribute("naviSubList", naviSubList); ThemesVO themesVO = researchService.selectThemesVO(mcIdx); model.addAttribute("themesVO", themesVO); ManagerVO managerVO = researchService.selectManagerVO(mcIdx); model.addAttribute("managerVO", managerVO);*/ List url = researchService.selectMcUrl(mcIdx); model.addAttribute("mcUrl", url); model.addAttribute("mcIdx", mcIdx); return true; } /** * 만족도조사를 입력한다. * @param paramMap - 만족도조사정보정보가 담겨있는 paramMap * @param model * @param insertResearchVO * @return model * @exception Exception */ @RequestMapping(value="/user/insertResearch.do") public @ResponseBody Map insertResearch(@RequestParam Map paramMap, ModelMap model, HttpServletRequest request , Model model1) throws Exception { String requestIP = request.getRemoteAddr(); String research_val = (String)paramMap.get("research_val"); String sfUrl = (String)paramMap.get("mcUrl"); int mcIdx = Integer.parseInt((String) paramMap.get("mcIdx")); ResearchVO tempSearchVO = new ResearchVO(); tempSearchVO.setSfIp(requestIP); tempSearchVO.setSfResearch(research_val); tempSearchVO.setSfUrl(sfUrl); tempSearchVO.setMcIdx(mcIdx); researchService.insertResearch(tempSearchVO); Map resultMap = new HashMap(); resultMap.put("message", "정상으로 입력되었습니다." ) ; return resultMap; } }