package seed.manager.site.web; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.nio.charset.Charset; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; import java.util.regex.Pattern; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.http.HttpHeaders; import org.springframework.http.HttpStatus; import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.util.FileCopyUtils; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.servlet.ModelAndView; import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; import kcc.com.cmm.LoginVO; import kcc.com.cmm.service.EgovCmmUseService; import kcc.com.cmm.service.SatisVO; import kcc.com.snd.service.SendService; import kcc.com.snd.service.SendSmsVO; import seed.common.service.CommonMenuAuthService; import seed.common.service.CommonSatisfactionService; import seed.manager.bbs.service.ManagerBbsDataService; import seed.manager.bbs.service.ManagerBbsItemService; import seed.manager.bbs.service.ManagerBbsManagerService; import seed.manager.bbs.service.ManagerBbsSetService; import seed.manager.formbuilder.service.ManagerFormbuilderManagerService; import seed.manager.formbuilder.service.ManagerFormbuilderSetService; import seed.manager.member.service.ManagerMemberService; import seed.manager.site.service.ManagerSiteManagerService; import seed.manager.site.service.ManagerSiteMenuAuthService; import seed.manager.site.service.ManagerSiteMenuHistoryService; import seed.manager.site.service.ManagerSiteMenuManagerService; import seed.manager.site.service.ManagerSiteMenuService; import seed.manager.site.service.ManagerSiteService; import seed.manager.survey.service.ManagerSurveyManagerService; import seed.manager.survey.service.ManagerSurveySetService; import seed.map.T_BBS_SET; import seed.map.T_FORMBUILDER_SET; import seed.map.T_MEMBER; import seed.map.T_SITE; import seed.map.T_SITE_MENU; import seed.map.T_SITE_MENU_HISTORY; import seed.map.T_SURVEY_SET; import seed.utils.InterceptorCheck; import seed.utils.SeedFtpType; import seed.utils.SeedUtils; @Controller public class ManagerSiteController { private Logger log = Logger.getLogger(this.getClass()); @Autowired private ManagerSiteService managerSiteService; @Autowired private ManagerSiteMenuService managerSiteMenuService; @Autowired private ManagerSiteMenuAuthService managerSiteMenuAuthService; @Autowired private ManagerSiteManagerService managerSiteManagerService; @Autowired private ManagerSiteMenuManagerService managerSiteMenuManagerService; @Autowired private ManagerSiteMenuHistoryService managerSiteMenuHistoryService; @Autowired private ManagerMemberService managerMemberService; @Autowired private CommonMenuAuthService commonMenuAuthService; @Autowired private CommonSatisfactionService commonSatisfactionService; @Autowired private ManagerBbsSetService managerBbsSetService; @Autowired private ManagerBbsItemService managerBbsItemService; @Autowired private ManagerBbsDataService managerBbsDataService; @Autowired private ManagerBbsManagerService managerBbsManagerService; @Autowired private ManagerFormbuilderSetService managerFormbuilderSetService; @Autowired private ManagerFormbuilderManagerService managerFormbuilderManagerService; @Autowired private ManagerSurveySetService managerSurveySetService; @Autowired private ManagerSurveyManagerService managerSurveyManagerService; @Resource(name = "SendService") private SendService sendService; @Resource(name = "EgovCmmUseService") private EgovCmmUseService egovCmmUseService; @Value("#{config['root.path']}") private String rootPath; @Value("#{config['member.merge']}") private String memberMerge; @Value("#{config['member.merge.siteIdx']}") private String memberMergeSiteIdx; public void getSeedLicense(HttpServletResponse httpServletResponse){ if(SeedUtils.setReplaceNull(InterceptorCheck.getLicenseKey()).equals("")){ try { httpServletResponse.sendRedirect("/common/seed.do"); } catch (IOException ex) { log.error("CHECK ERROR:",ex); } } } public void setSessionRemove(HttpSession session){ session.removeAttribute("memberIdx"); session.removeAttribute("memberId"); session.removeAttribute("memberName"); session.removeAttribute("memberDept"); session.removeAttribute("memberPosition"); session.removeAttribute("memberTel"); session.removeAttribute("memberPhone"); session.removeAttribute("memberEmail1"); session.removeAttribute("memberEmail2"); session.removeAttribute("memberGrant"); session.removeAttribute("url"); session.removeAttribute("message"); session.removeAttribute("opener"); session.removeAttribute("append"); session.removeAttribute("self"); } public void setSessionMessageRemove(HttpSession session){ session.removeAttribute("url"); session.removeAttribute("message"); session.removeAttribute("opener"); session.removeAttribute("append"); session.removeAttribute("self"); } @RequestMapping(value = "/gtm/siteEdit/{siteIdx}.do", method=RequestMethod.GET) public ModelAndView getSiteEdit(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx) throws Exception{ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } if(memberMerge.equals("true")){ if(siteIdx.equals(memberMergeSiteIdx)){ map.put("message", "common.message.error"); return new ModelAndView("/_common/jsp/message"); } } map.put("tSiteDB", managerSiteService.getSiteForm(siteIdx)); map.put("memberAuth", memberAuth); map.put("sendSet", sendService.selectSendSet()); map.put("satisSet", egovCmmUseService.selectSatis()); return new ModelAndView("/manager/site/siteEdit"); } @RequestMapping(value = "/gtm/proc/siteModProc.do", method=RequestMethod.POST) public ModelAndView setSiteModProc(HttpServletResponse httpServletResponse, HttpSession session, Map map, @ModelAttribute("T_SITE") T_SITE tSite, BindingResult bindingResult){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(tSite.getSiteIdx(), memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } if(memberMerge.equals("true")){ if(tSite.getSiteIdx().equals(memberMergeSiteIdx)){ map.put("message", "common.message.error"); return new ModelAndView("/_common/jsp/message"); } } if(managerSiteService.setSiteModProc(tSite, memberIdx, rootPath)){ map.put("message", "common.message.mod"); }else{ map.put("message", "common.message.error.mod"); } map.put("url", "/gtm/siteEdit/"+tSite.getSiteIdx()+".do"); return new ModelAndView("/_common/jsp/message"); } @RequestMapping(value = "/gtm/proc/siteDelProc/{siteIdx}.do", method=RequestMethod.GET) public ModelAndView setSiteDelProc(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberId = SeedUtils.setReplaceNull(session.getAttribute("memberId")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } if(memberMerge.equals("true")){ if(siteIdx.equals(memberMergeSiteIdx)){ map.put("message", "common.message.error"); return new ModelAndView("/_common/jsp/message"); } } if(managerSiteService.setSiteDelProc(siteIdx, memberIdx, memberId, rootPath)){ map.put("message", "common.message.del"); }else{ map.put("message", "common.message.error.del"); } map.put("url", "/gtm/index.do"); return new ModelAndView("/_common/jsp/message"); } @RequestMapping(value = {"/gtm/{siteIdx}/siteMenuList.do", "/gte/{siteIdx}/siteMenuList.do"}) public ModelAndView getSiteMenuList(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @RequestParam(value="column", defaultValue="", required=false) String column, @RequestParam(value="search", defaultValue="", required=false) String search, @RequestParam(value="listType", defaultValue="charge", required=false) String listType){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); //기능 관리자 URL로 넘어온 경우 if(httpServletRequest.getRequestURI().indexOf("/gte/"+siteIdx+"/siteMenuList.do") > -1){ if(memberIdx == 0){ setSessionRemove(session); map.put("url", "/gte/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } String[] qryColumns = {"siteMenuIdxs", "siteMenuIdx", "siteMenuNameType", "siteMenuName", "siteMenuLinkUrl","siteMenuDepth", "siteSatisfaction1", "siteSatisfaction2", "siteSatisfaction3", "siteSatisfaction4", "siteSatisfaction5"}; map.put("siteName", managerSiteService.getSiteForm(siteIdx).getSiteName()); //기능 관리자인데 슈퍼관리자나 해당 사이트관리자가 들어오면 모든 메뉴를 보여준다 if(memberGrant.equals("S") || memberAuth){ map.put("siteMenuList", managerSiteMenuService.getSiteMenuList(siteIdx, column, search, qryColumns)); }else{ map.put("siteMenuList", managerSiteMenuManagerService.getSiteMenuManagerList(siteIdx, memberIdx, column, search, qryColumns)); } map.put("column", column); map.put("search", search); map.put("listType", "menu"); return new ModelAndView("/manager/site/siteEMenuList"); }else{ if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } map.put("siteName", managerSiteService.getSiteForm(siteIdx).getSiteName()); if(listType.equals("menu")){ String[] qryColumns = {"siteMenuIdxs", "siteMenuIdx", "siteMenuNameType", "siteMenuName", "siteMenuType", "siteMenuLink", "siteMenuLinkUrl", "siteMenuUp", "siteMenuDown", "siteMenuDepth", "siteMenuOrder", "siteMenuRegDate", "siteMenuStatus", "siteSatisfaction1", "siteSatisfaction2", "siteSatisfaction3", "siteSatisfaction4", "siteSatisfaction5", "memberId", "memberName"}; map.put("siteName", managerSiteService.getSiteForm(siteIdx).getSiteName()); map.put("siteMenuList", managerSiteMenuService.getSiteMenuList(siteIdx, column, search, qryColumns)); }else{ String[] qryColumns = {"siteMenuIdxs", "siteMenuIdx", "siteMenuNameType", "siteMenuName", "siteMenuType", "siteMenuLink", "siteMenuLinkUrl", "siteMenuUp", "siteMenuDown", "siteMenuDepth", "siteMenuOrder", "siteMenuStatus", "memberName"}; List> siteMenuList = managerSiteMenuService.getSiteMenuChargeList(siteIdx, column, search, qryColumns); if(siteMenuList != null && siteMenuList.size() > 0){ for(int s=0; s siteMenuMap = siteMenuList.get(s); String siteMenuIdx = SeedUtils.setReplaceNull(siteMenuMap.get("_siteMenuIdx")); String siteMenuType = SeedUtils.setReplaceNull(siteMenuMap.get("_siteMenuType")); String siteMenuLinkUrl = SeedUtils.setReplaceNull(siteMenuMap.get("_siteMenuLinkUrl")); siteMenuMap.put("_memberName", ""); List> siteMenuManagerList = managerSiteMenuManagerService.getSiteMenuManagerMapList(Integer.parseInt(siteMenuIdx), new String[]{"tMember.memberId", "tMember.memberName"}); String siteMenuManagerName = ""; if(siteMenuManagerList != null && siteMenuManagerList.size() > 0){ for(int m=0; m siteMenuManagerMap = siteMenuManagerList.get(m); String managerMemberId = SeedUtils.setReplaceNull(siteMenuManagerMap.get("_memberId")); String managerMemberName = SeedUtils.setReplaceNull(siteMenuManagerMap.get("_memberName")); siteMenuManagerName += managerMemberName + "("+managerMemberId+"), "; } } if(siteMenuType.equals("F")){ String[] siteMenuLinkUrls = siteMenuLinkUrl.split("/"); if(siteMenuLinkUrl.indexOf("mypage") < 0 && siteMenuLinkUrl.indexOf("bbs") > -1){ List> managerList = managerBbsManagerService.getBbsManagerList(siteIdx, Integer.parseInt(siteMenuLinkUrls[4]), new String[]{"tMember.memberId", "tMember.memberName"}); if(managerList != null && managerList.size() > 0){ for(int m=0; m siteMenuManagerMap = managerList.get(m); String managerMemberId = SeedUtils.setReplaceNull(siteMenuManagerMap.get("_memberId")); String managerMemberName = SeedUtils.setReplaceNull(siteMenuManagerMap.get("_memberName")); siteMenuManagerName += managerMemberName + "("+managerMemberId+"), "; } } if(!siteMenuManagerName.equals("")){ siteMenuManagerName = siteMenuManagerName.substring(0, siteMenuManagerName.length()-2); } }else if(siteMenuLinkUrl.indexOf("mypage") < 0 && siteMenuLinkUrl.indexOf("formbuilder") > -1){ List> managerList = managerFormbuilderManagerService.getFormbuilderManagerList(siteIdx, Integer.parseInt(siteMenuLinkUrls[4]), new String[]{"tMember.memberId", "tMember.memberName"}); if(managerList != null && managerList.size() > 0){ for(int m=0; m siteMenuManagerMap = managerList.get(m); String managerMemberId = SeedUtils.setReplaceNull(siteMenuManagerMap.get("_memberId")); String managerMemberName = SeedUtils.setReplaceNull(siteMenuManagerMap.get("_memberName")); siteMenuManagerName += managerMemberName + "("+managerMemberId+"), "; } } if(!siteMenuManagerName.equals("")){ siteMenuManagerName = siteMenuManagerName.substring(0, siteMenuManagerName.length()-2); } }else if(siteMenuLinkUrl.indexOf("mypage") < 0 && siteMenuLinkUrl.indexOf("survey") > -1){ List> managerList = managerSurveyManagerService.getSurveyManagerList(siteIdx, Integer.parseInt(siteMenuLinkUrls[4]), new String[]{"tMember.memberId", "tMember.memberName"}); if(managerList != null && managerList.size() > 0){ for(int m=0; m siteMenuManagerMap = managerList.get(m); String managerMemberId = SeedUtils.setReplaceNull(siteMenuManagerMap.get("_memberId")); String managerMemberName = SeedUtils.setReplaceNull(siteMenuManagerMap.get("_memberName")); siteMenuManagerName += managerMemberName + "("+managerMemberId+"), "; } } if(!siteMenuManagerName.equals("")){ siteMenuManagerName = siteMenuManagerName.substring(0, siteMenuManagerName.length()-2); } } siteMenuMap.put("_memberName", siteMenuManagerName); }else{ if(!siteMenuManagerName.equals("")){ siteMenuManagerName = siteMenuManagerName.substring(0, siteMenuManagerName.length()-2); } siteMenuMap.put("_memberName", siteMenuManagerName); } } } map.put("siteMenuList", siteMenuList); } map.put("column", column); map.put("search", search); map.put("listType", listType); map.put("memberAuth", memberAuth); return new ModelAndView("/manager/site/siteMenuList"); } } @RequestMapping(value = "/gtm/{siteIdx}/siteMenuForm/{siteMenuParentIdx}.do") public ModelAndView getSiteMenuForm(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuParentIdx") String siteMenuParentIdx, @RequestParam(value="listType", defaultValue="charge", required=false) String listType){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } map.put("siteMenuParentName", managerSiteMenuService.getSiteMenuParentName(siteIdx, siteMenuParentIdx, "form")); map.put("listType", listType); map.put("memberAuth", memberAuth); return new ModelAndView("/manager/site/siteMenuForm"); } @RequestMapping(value = {"/gtm/{siteIdx}/siteMenuEdit/{siteMenuIdx}.do", "/gte/{siteIdx}/siteMenuEdit/{siteMenuIdx}.do"}, method=RequestMethod.GET) public ModelAndView getSiteMenuEdit(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuIdx") Integer siteMenuIdx, @RequestParam(value="column", defaultValue="", required=false) String column, @RequestParam(value="search", defaultValue="", required=false) String search, @RequestParam(value="listType", defaultValue="charge", required=false) String listType){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); boolean memberAuthM = managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth && !memberAuthM)){ setSessionRemove(session); //기능 관리자 URL로 넘어온 경우 if(httpServletRequest.getRequestURI().indexOf("/gte/"+siteIdx+"/siteMenuEdit/"+siteMenuIdx+".do") > -1){ map.put("url", "/gte/login.do"); }else{ map.put("url", "/gtm/login.do"); } map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } map.put("column", column); map.put("search", search); String[] qryColumns = {"tMenu.menuName", "tMenu.menuCode", "tMenu.menuType"}; map.put("menuAuthList", commonMenuAuthService.getMenuAuthList(siteIdx, qryColumns)); String[] qryColumng = {"siteMenuAuthIdx", "tGroup.groupName", "siteMenuAuth"}; map.put("siteMenuAuthList", managerSiteMenuAuthService.getSiteMenuAuthList(siteMenuIdx, qryColumng)); T_SITE_MENU tSiteMenu = managerSiteMenuService.getSiteMenuForm(siteMenuIdx); String[] qryColumnss = {"siteSatisfactionStatus", "siteSatisfactionContents", "siteSatisfactionMemberIp", "siteSatisfactionRegDate"}; map.put("siteSatisfactionList", commonSatisfactionService.getCommonSatisfactionList(siteMenuIdx, qryColumnss)); map.put("siteMenuParentName", managerSiteMenuService.getSiteMenuParentName(siteIdx, tSiteMenu.getSiteMenuIdxs(), "edit")); map.put("tSiteMenuDB", tSiteMenu); map.put("memberAuth", memberAuth); map.put("memberAuthM", memberAuthM); //기능 관리자 URL로 넘어온 경우 if(httpServletRequest.getRequestURI().indexOf("/gte/"+siteIdx+"/siteMenuEdit/"+siteMenuIdx+".do") > -1){ map.put("listType", "menu"); return new ModelAndView("/manager/site/siteEMenuEdit"); }else{ map.put("listType", listType); return new ModelAndView("/manager/site/siteMenuEdit"); } } @RequestMapping(value = {"/gtm/{siteIdx}/siteMenuHistory/{siteMenuIdx}.do", "/gte/{siteIdx}/siteMenuHistory/{siteMenuIdx}.do"}) public synchronized ModelAndView getSiteMenuHistory(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuIdx") Integer siteMenuIdx, @RequestParam(value="siteMenuHistoryIdx", defaultValue="0", required=false) Integer siteMenuHistoryIdx){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth && !managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx))){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } Map tSiteMenuDB = managerSiteMenuService.getSiteMenuMapForm(siteMenuIdx, new String[] {"siteMenuIdxs"}); List siteMenuHistoryList = managerSiteMenuHistoryService.getSiteMenuHistoryDList(siteIdx, "content", SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdxs"))); map.put("siteMenuHistoryList", siteMenuHistoryList); map.put("siteMenuHistoryIdx", siteMenuHistoryIdx); if(!siteMenuHistoryIdx.equals(0)){ for(int i=0; i 0){ T_SITE_MENU_HISTORY tSiteMenuHistoryDB = siteMenuHistoryList.get(0); StringBuffer fileHtml = new StringBuffer(); String filePath = rootPath + "/" + siteIdx + "/jsp/content_bak/"+tSiteMenuHistoryDB.getSiteMenuHistoryFile(); filePath = SeedUtils.setFilePathReplaceAll(filePath); FileInputStream fileInputStream = null; InputStreamReader inputStreamReader = null; BufferedReader bufferedReader = null; try{ File menuFile = new File(filePath); if(menuFile.exists()){ fileInputStream = new FileInputStream(filePath); inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8"); bufferedReader = new BufferedReader(inputStreamReader); String fileBuffer = ""; while((fileBuffer = bufferedReader.readLine()) != null){ fileHtml.append(fileBuffer); fileHtml.append("\n"); } } }catch(FileNotFoundException e){ log.error("CHECK ERROR:",e); }catch(IOException e){ log.error("CHECK ERROR:",e); }finally{ if(bufferedReader!=null){try{bufferedReader.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} if(inputStreamReader!=null){try{inputStreamReader.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} if(fileInputStream!=null){try{fileInputStream.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} } map.put("bakHtml", fileHtml.toString()); } return new ModelAndView("/manager/site/siteMenuHistory"); } @RequestMapping(value = "/gtm/proc/{siteIdx}/siteMenuRegProc.do", method=RequestMethod.POST) public ModelAndView setSiteMenuRegProc(HttpServletResponse httpServletResponse, HttpSession session, Map map, MultipartFile upIconFile, @PathVariable(value="siteIdx") String siteIdx, @ModelAttribute("T_SITE_MENU") T_SITE_MENU tSiteMenu, @RequestParam(value="listType", defaultValue="charge", required=false) String listType, BindingResult bindingResult){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } try{ if(upIconFile != null && upIconFile.getBytes().length > 0){ if (!Pattern.matches("(?i)^[\\d\\D]*\\.(jpg|gif|png|bmp)$", upIconFile.getOriginalFilename().toLowerCase())) { map.put("url", "/gtm/"+siteIdx+"/siteMenuForm/"+tSiteMenu.getSiteMenuParentIdx()+".do?listType="+listType); map.put("message", "common.fileupload.message.image.upload"); return new ModelAndView("/_common/jsp/message"); } } }catch(IOException e){ log.error("CHECK ERROR:",e); } Integer siteMenuIdx = managerSiteMenuService.setSiteMenuRegProc(tSiteMenu, upIconFile, memberIdx, memberGrant, memberMerge, memberMergeSiteIdx, rootPath); if(siteMenuIdx > 0){ map.put("url", "/gtm/"+siteIdx+"/siteMenuList.do?listType="+listType+"#"+siteMenuIdx); map.put("message", "common.message.reg"); }else{ map.put("url", "/gtm/"+siteIdx+"/siteMenuForm/"+tSiteMenu.getSiteMenuParentIdx()+".do?listType="+listType+"#"+siteMenuIdx); map.put("message", "common.message.error.reg"); } return new ModelAndView("/_common/jsp/message"); } @RequestMapping(value = {"/gtm/proc/{siteIdx}/siteMenuModProc.do", "/gte/proc/{siteIdx}/siteMenuModProc.do"}, method=RequestMethod.POST) public ModelAndView setSiteMenuModProc(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, HttpSession session, Map map, MultipartFile upIconFile, @PathVariable(value="siteIdx") String siteIdx, @ModelAttribute("T_SITE_MENU") T_SITE_MENU tSiteMenu, @RequestParam(value="siteMenuAuthIdxs", defaultValue="", required=true) Integer[] siteMenuAuthIdxs, @RequestParam(value="siteMenuAuths", defaultValue="", required=true) Integer[] siteMenuAuths, @RequestParam(value="column", defaultValue="", required=false) String column, @RequestParam(value="search", defaultValue="", required=false) String search, @RequestParam(value="funcData", defaultValue="", required=false) String funcData, @RequestParam(value="listType", defaultValue="charge", required=false) String listType, BindingResult bindingResult){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); boolean memberAuthM = managerSiteMenuManagerService.getSiteMenuManagerListCnt(tSiteMenu.getSiteMenuIdx(), memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth && !memberAuthM)){ setSessionRemove(session); //기능 관리자 URL로 넘어온 경우 if(httpServletRequest.getRequestURI().indexOf("/gte/proc/"+siteIdx+"/siteMenuModProc.do") > -1){ map.put("url", "/gte/login.do"); }else{ map.put("url", "/gtm/login.do"); } map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } try{ if(upIconFile != null && upIconFile.getBytes().length > 0){ if (!Pattern.matches("(?i)^[\\d\\D]*\\.(jpg|gif|png|bmp)$", upIconFile.getOriginalFilename().toLowerCase())) { map.put("url", "/gtm/"+siteIdx+"/siteMenuEdit/"+tSiteMenu.getSiteMenuIdx()+".do?"+ "listType="+listType+"&"+ "column="+column+"&"+ "search="+search); map.put("message", "common.fileupload.message.image.upload"); return new ModelAndView("/_common/jsp/message"); } } }catch(IOException e){ log.error("CHECK ERROR:",e); } String[] success = managerSiteMenuService.setSiteMenuModProc(tSiteMenu, upIconFile, siteMenuAuthIdxs, siteMenuAuths, memberIdx, rootPath).split(","); if(success[0].equals("Y")){ if(success[1].equals("Y")){ //T_BBS_SET에서 해당 siteMenuIdx가 있는지 확인 후 있으면 삭제 T_BBS_SET tBbsSetDBTmp = managerBbsSetService.getBbsSetForm(siteIdx, tSiteMenu.getSiteMenuIdx().toString()+"|"); if(tBbsSetDBTmp != null){ tBbsSetDBTmp.setSiteMenuIdxs(tBbsSetDBTmp.getSiteMenuIdxs().replaceAll(tSiteMenu.getSiteMenuIdx().toString()+"\\|", "")); managerBbsSetService.setBbsSetModProc(tBbsSetDBTmp); setBbsDataMiniList(siteIdx, tBbsSetDBTmp.getBbsSetIdx()); } //T_FORMBUILDER_SET에서 해당 siteMenuIdx가 있는지 확인 후 있으면 삭제 T_FORMBUILDER_SET tFormbuilderSetDBTmp = managerFormbuilderSetService.getFormbuilderSetForm(siteIdx, tSiteMenu.getSiteMenuIdx().toString()+"|"); if(tFormbuilderSetDBTmp != null){ tFormbuilderSetDBTmp.setSiteMenuIdxs(tFormbuilderSetDBTmp.getSiteMenuIdxs().replaceAll(tSiteMenu.getSiteMenuIdx().toString()+"\\|", "")); managerFormbuilderSetService.setFormbuilderSetModProc(tFormbuilderSetDBTmp); setFormbuilderSetMiniList(siteIdx, tFormbuilderSetDBTmp.getFormbuilderSetIdx()); } //T_SURVEY_SET에서 해당 siteMenuIdx가 있는지 확인 후 있으면 삭제 T_SURVEY_SET tSurveySetDBTmp = managerSurveySetService.getSurveySetForm(siteIdx, tSiteMenu.getSiteMenuIdx().toString()+"|"); if(tSurveySetDBTmp != null){ tSurveySetDBTmp.setSiteMenuIdxs(tSurveySetDBTmp.getSiteMenuIdxs().replaceAll(tSiteMenu.getSiteMenuIdx().toString()+"\\|", "")); managerSurveySetService.setSurveySetModProc(tSurveySetDBTmp); setSurveySetMiniList(siteIdx, tSurveySetDBTmp.getSurveySetIdx()); } } String[] funcDatas = funcData.split(":"); if(funcDatas.length == 2){ if(funcDatas[0].equals("bbs")){ if(!funcDatas[1].equals("0")){ T_BBS_SET tBbsSetDB = managerBbsSetService.getBbsSetForm(Integer.parseInt(funcDatas[1])); T_MEMBER tMember = new T_MEMBER(); tMember.setMemberIdx(memberIdx); tBbsSetDB.settMember(tMember); if(SeedUtils.setReplaceNull(tBbsSetDB.getSiteMenuIdxs()).indexOf(tSiteMenu.getSiteMenuIdx().toString()) < 0){ tBbsSetDB.setSiteMenuIdxs(tSiteMenu.getSiteMenuIdx().toString()+"|"+SeedUtils.setReplaceNull(tBbsSetDB.getSiteMenuIdxs())); managerBbsSetService.setBbsSetModProc(tBbsSetDB); setBbsDataMiniList(siteIdx, tBbsSetDB.getBbsSetIdx()); } } }else if(funcDatas[0].equals("formbuilder")){ if(!funcDatas[1].equals("0")){ T_FORMBUILDER_SET tFormbuilderSetDB = managerFormbuilderSetService.getFormbuilderSetForm(Integer.parseInt(funcDatas[1])); T_MEMBER tMember = new T_MEMBER(); tMember.setMemberIdx(memberIdx); tFormbuilderSetDB.settMember(tMember); if(SeedUtils.setReplaceNull(tFormbuilderSetDB.getSiteMenuIdxs()).indexOf(tSiteMenu.getSiteMenuIdx().toString()) < 0){ tFormbuilderSetDB.setSiteMenuIdxs(tSiteMenu.getSiteMenuIdx().toString()+"|"+SeedUtils.setReplaceNull(tFormbuilderSetDB.getSiteMenuIdxs())); managerFormbuilderSetService.setFormbuilderSetModProc(tFormbuilderSetDB); setFormbuilderSetMiniList(siteIdx, tFormbuilderSetDB.getFormbuilderSetIdx()); } } }else if(funcDatas[0].equals("survey")){ if(!funcDatas[1].equals("0")){ T_SURVEY_SET tSurveySetDB = managerSurveySetService.getSurveySetForm(Integer.parseInt(funcDatas[1])); T_MEMBER tMember = new T_MEMBER(); tMember.setMemberIdx(memberIdx); tSurveySetDB.settMember(tMember); if(SeedUtils.setReplaceNull(tSurveySetDB.getSiteMenuIdxs()).indexOf(tSiteMenu.getSiteMenuIdx().toString()) < 0){ tSurveySetDB.setSiteMenuIdxs(tSiteMenu.getSiteMenuIdx().toString()+"|"+SeedUtils.setReplaceNull(tSurveySetDB.getSiteMenuIdxs())); managerSurveySetService.setSurveySetModProc(tSurveySetDB); setSurveySetMiniList(siteIdx, tSurveySetDB.getSurveySetIdx()); } } } } map.put("message", "common.message.mod"); }else{ map.put("message", "common.message.error.mod"); } //기능 관리자 URL로 넘어온 경우 if(httpServletRequest.getRequestURI().indexOf("/gte/proc/"+siteIdx+"/siteMenuModProc.do") > -1){ map.put("url", "/gte/"+siteIdx+"/siteMenuEdit/"+tSiteMenu.getSiteMenuIdx()+".do?"+ "listType="+listType+"&"+ "column="+column+"&"+ "search="+search); }else{ map.put("url", "/gtm/"+siteIdx+"/siteMenuEdit/"+tSiteMenu.getSiteMenuIdx()+".do?"+ "listType="+listType+"&"+ "column="+column+"&"+ "search="+search); } return new ModelAndView("/_common/jsp/message"); } @RequestMapping(value = "/gtm/proc/{siteIdx}/siteMenuDelProc/{siteMenuIdx}.do", method=RequestMethod.GET) public ModelAndView setSiteMenuDelProc(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuIdx") Integer siteMenuIdx, @RequestParam(value="column", defaultValue="", required=false) String column, @RequestParam(value="search", defaultValue="", required=false) String search, @RequestParam(value="listType", defaultValue="charge", required=false) String listType){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberId = SeedUtils.setReplaceNull(session.getAttribute("memberId")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } if(managerSiteMenuService.setSiteMenuDelProc(siteMenuIdx, memberIdx, memberId, rootPath)){ //T_BBS_SET에서 해당 siteMenuIdx가 있는지 확인 후 있으면 삭제 T_BBS_SET tBbsSetDBTmp = managerBbsSetService.getBbsSetForm(siteIdx, siteMenuIdx.toString()+"|"); if(tBbsSetDBTmp != null){ tBbsSetDBTmp.setSiteMenuIdxs(tBbsSetDBTmp.getSiteMenuIdxs().replaceAll(siteMenuIdx.toString()+"\\|", "")); managerBbsSetService.setBbsSetModProc(tBbsSetDBTmp); setBbsDataMiniList(siteIdx, tBbsSetDBTmp.getBbsSetIdx()); } //T_FORMBUILDER_SET에서 해당 siteMenuIdx가 있는지 확인 후 있으면 삭제 T_FORMBUILDER_SET tFormbuilderSetDBTmp = managerFormbuilderSetService.getFormbuilderSetForm(siteIdx, siteMenuIdx.toString()+"|"); if(tFormbuilderSetDBTmp != null){ tFormbuilderSetDBTmp.setSiteMenuIdxs(tFormbuilderSetDBTmp.getSiteMenuIdxs().replaceAll(siteMenuIdx.toString()+"\\|", "")); managerFormbuilderSetService.setFormbuilderSetModProc(tFormbuilderSetDBTmp); setFormbuilderSetMiniList(siteIdx, tFormbuilderSetDBTmp.getFormbuilderSetIdx()); } //T_SURVEY_SET에서 해당 siteMenuIdx가 있는지 확인 후 있으면 삭제 T_SURVEY_SET tSurveySetDBTmp = managerSurveySetService.getSurveySetForm(siteIdx, siteMenuIdx.toString()+"|"); if(tSurveySetDBTmp != null){ tSurveySetDBTmp.setSiteMenuIdxs(tSurveySetDBTmp.getSiteMenuIdxs().replaceAll(siteMenuIdx.toString()+"\\|", "")); managerSurveySetService.setSurveySetModProc(tSurveySetDBTmp); setSurveySetMiniList(siteIdx, tSurveySetDBTmp.getSurveySetIdx()); } map.put("message", "common.message.del"); }else{ map.put("message", "common.message.error.del"); } map.put("url", "/gtm/"+siteIdx+"/siteMenuList.do?"+ "listType="+listType+"&"+ "column="+column+"&"+ "search="+search); return new ModelAndView("/_common/jsp/message"); } @RequestMapping(value = "/gtm/proc/{siteIdx}/siteMenuStatusProc/{siteMenuIdx}.do", method=RequestMethod.GET) public ModelAndView setSiteMenuStatusProc(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuIdx") Integer siteMenuIdx, @RequestParam(value="status", required=true) String status, @RequestParam(value="column", defaultValue="", required=false) String column, @RequestParam(value="search", defaultValue="", required=false) String search, @RequestParam(value="listType", defaultValue="charge", required=false) String listType){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } if(managerSiteMenuService.setSiteMenuStatusProc(siteMenuIdx, status, rootPath, memberIdx)){ map.put("message", "common.message.status"); }else{ map.put("message", "common.message.error.status"); } map.put("url", "/gtm/"+siteIdx+"/siteMenuList.do?"+ "listType="+listType+"&"+ "column="+column+"&"+ "search="+search); return new ModelAndView("/_common/jsp/message"); } @RequestMapping(value = "/gtm/proc/{siteIdx}/siteMenuOrderProc/{siteMenuIdx}.do", method=RequestMethod.GET) public ModelAndView setSiteMenuOrderProc(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuIdx") Integer siteMenuIdx, @RequestParam(value="column", defaultValue="", required=false) String column, @RequestParam(value="search", defaultValue="", required=false) String search, @RequestParam(value="orderType", required=true) String orderType, @RequestParam(value="listType", defaultValue="charge", required=false) String listType){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } if(managerSiteMenuService.setSiteMenuOrderProc(siteIdx, siteMenuIdx, orderType, memberIdx, rootPath)){ map.put("message", "common.message.order"); }else{ map.put("message", "common.message.error.order"); } map.put("url", "/gtm/"+siteIdx+"/siteMenuList.do?"+ "listType="+listType+"&"+ "column="+column+"&"+ "search="+search); return new ModelAndView("/_common/jsp/message"); } @RequestMapping(value = "/gtm/{siteIdx}/siteLayOutSet.do", method=RequestMethod.GET) public ModelAndView getSiteLayOutSet(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @RequestParam(value="siteLayOutType", required=true) String siteLayOutType){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } String[] qryColumns = {"tMenu.menuName", "tMenu.menuCode", "tMenu.menuType"}; map.put("menuAuthList", commonMenuAuthService.getMenuAuthList(siteIdx, qryColumns)); map.put("siteDB", managerSiteService.getSiteForm(siteIdx)); map.put("siteLayOutType", siteLayOutType); map.put("memberAuth", memberAuth); return new ModelAndView("/manager/site/siteLayOutSet"); } @RequestMapping(value = "/gtm/{siteIdx}/siteAttrLayOutHistory/{historyType}/{historyFile}.do") public synchronized ModelAndView getSiteAttrLayOutHistory(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="historyType") String historyType, @PathVariable(value="historyFile") String historyFile, @RequestParam(value="siteMenuHistoryIdx", defaultValue="0", required=false) Integer siteMenuHistoryIdx){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } String tmpHistoryType = historyType; String tmpHistoryFile = historyFile; List siteMenuHistoryList = managerSiteMenuHistoryService.getSiteMenuHistoryDList(siteIdx, tmpHistoryType, tmpHistoryFile); map.put("siteMenuHistoryList", siteMenuHistoryList); map.put("siteMenuHistoryIdx", siteMenuHistoryIdx); if(!siteMenuHistoryIdx.equals(0)){ for(int i=0; i 0){ T_SITE_MENU_HISTORY tSiteMenuHistoryDB = siteMenuHistoryList.get(0); StringBuffer fileHtml = new StringBuffer(); String filePath = rootPath + "/" + siteIdx; filePath = SeedUtils.setFilePathReplaceAll(filePath); filePath += "/jsp/" + historyType + "/layOut/" + historyFile + "/" + tSiteMenuHistoryDB.getSiteMenuHistoryFile(); FileInputStream fileInputStream = null; InputStreamReader inputStreamReader = null; BufferedReader bufferedReader = null; try{ File menuFile = new File(filePath); if(menuFile.exists()){ fileInputStream = new FileInputStream(filePath); inputStreamReader = new InputStreamReader(fileInputStream, "UTF-8"); bufferedReader = new BufferedReader(inputStreamReader); String fileBuffer = ""; while((fileBuffer = bufferedReader.readLine()) != null){ fileHtml.append(fileBuffer); fileHtml.append("\n"); } } }catch(FileNotFoundException e){ log.error("CHECK ERROR:",e); }catch(IOException e){ log.error("CHECK ERROR:",e); }finally{ if(bufferedReader!=null){try{bufferedReader.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} if(inputStreamReader!=null){try{inputStreamReader.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} if(fileInputStream!=null){try{fileInputStream.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} } map.put("bakHtml", fileHtml.toString()); } return new ModelAndView("/manager/site/siteAttrLayOutHistory"); } @RequestMapping(value = "/gtm/{siteIdx}/siteLayOutSetHtml.do", method=RequestMethod.GET) public ModelAndView getSiteLayOutHtml(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @RequestParam(value="siteLayOutType", required=true) String siteLayOutType, @RequestParam(value="siteLayOutPosition", required=true) String siteLayOutPosition){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } map.put("siteLayOutType", siteLayOutType); map.put("siteLayOutPosition", siteLayOutPosition); map.put("siteLayOutHtml", managerSiteMenuService.getSiteLayOutHtml(siteIdx, siteLayOutType, siteLayOutPosition, rootPath)); return new ModelAndView("/manager/site/siteLayOutSetHtml"); } @RequestMapping(value = "/gtm/proc/{siteIdx}/siteLayOutSetHtml.do", method=RequestMethod.POST) public ModelAndView setSiteLayOutSetHtml(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @RequestParam(value="siteLayOutHtml", required=true) String siteLayOutHtml, @RequestParam(value="siteLayOutType", required=true) String siteLayOutType, @RequestParam(value="siteLayOutPosition", required=true) String siteLayOutPosition){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } if(managerSiteMenuService.setSiteLayOutSetHtmlModProc(siteIdx, siteLayOutType, siteLayOutPosition, siteLayOutHtml, rootPath)){ map.put("message", "common.message.mod"); }else{ map.put("message", "common.message.error.mod"); } map.put("url", "/gtm/"+siteIdx+"/siteLayOutSetHtml.do?"+ "siteLayOutType="+siteLayOutType+"&"+ "siteLayOutPosition="+siteLayOutPosition); return new ModelAndView("/_common/jsp/message"); } @RequestMapping(value = "/gtm/{siteIdx}/siteMenuExcel.do") public void getSiteMenuExcel(HttpServletResponse httpServletResponse, HttpSession session, Map map, HttpServletRequest request,HttpServletResponse response, @PathVariable(value="siteIdx") String siteIdx) { getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); session.setAttribute("url", "/gtm/login.do"); session.setAttribute("message", "common.message.no.grant"); try { httpServletResponse.sendRedirect("/common/message.do"); } catch (IOException ex) { log.error("CHECK ERROR:",ex); } }else{ //Temp파일 Code생성 SimpleDateFormat sdfFormat = new SimpleDateFormat("yyyyMMddHHmmss"); String fileCode = sdfFormat.format(new Date())+String.valueOf(SeedUtils.getRandom(999,1)); String toDate = sdfFormat.format(new Date()).substring(0, 8); String fileNameDate = sdfFormat.format(new Date()).substring(0, 14); if(managerSiteMenuService.getSiteMenuExcel(siteIdx, rootPath, toDate, fileCode, fileNameDate)){ try{ File file = new File(rootPath + "/" + siteIdx + "/upload/tempFiles/" + toDate + "/" +fileCode + "/siteMenuExcel_"+fileNameDate+".xls"); response.reset(); response.setContentType("application/octet-stream; charset=UTF-8"); if(this.getBrowser(request).equals("MSIE")){ response.setHeader("Content-Disposition", "attachment; filename=\""+URLEncoder.encode("사이트메뉴.xls", "UTF-8").replaceAll("\\+", "%20")+"\""); }else if(this.getBrowser(request).equals("Chrome")){ response.setHeader("Content-Disposition", "attachment; filename=\""+new String("사이트메뉴.xls".getBytes("UTF-8"), "8859_1").replaceAll("\\+", "%20")+"\""); }else if(this.getBrowser(request).equals("Firefox")){ response.setHeader("Content-Disposition", "attachment; filename=\""+new String("사이트메뉴.xls".getBytes("UTF-8"), "8859_1").replaceAll("\\+", "%20")+"\""); }else if(this.getBrowser(request).equals("Opera")){ response.setHeader("Content-Disposition", "attachment; filename=\""+new String("사이트메뉴.xls".getBytes("UTF-8"), "8859_1").replaceAll("\\+", "%20")+"\""); } response.setHeader("Content-Transfer-Encoding", "binary"); response.setContentLength((int)file.length()); response.setHeader("Pargma", "no-cache"); response.setHeader("Expires", "-1"); FileCopyUtils.copy(new FileInputStream(file), response.getOutputStream()); SeedUtils.setSeedDeleteFile(rootPath + "/" + siteIdx + "/upload/tempFiles/" + toDate + "/" +fileCode + "/siteMenuExcel_"+fileNameDate+".xls"); }catch(UnsupportedEncodingException e){ log.error("CHECK ERROR:",e); }catch(FileNotFoundException e){ log.error("CHECK ERROR:",e); }catch(IOException e){ log.error("CHECK ERROR:",e); }catch(Exception e){ log.error("CHECK ERROR:",e); } }else{ session.setAttribute("message", "common.message.error.down.excel"); session.setAttribute("url", "/gtm/"+siteIdx+"/siteMenuList.do"); try { httpServletResponse.sendRedirect("/common/message.do"); } catch (IOException ex) { log.error("CHECK ERROR:",ex); } } } } @RequestMapping(value = "/gtm/{siteIdx}/siteMenuExcelChk.do", method=RequestMethod.GET) public ModelAndView getSiteMenuExcelChk(HttpServletResponse httpServletResponse, HttpSession session, Map map, @PathVariable(value="siteIdx") String siteIdx, @RequestParam(value="excleChk", defaultValue="N", required=true) String excleChk) { getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } if(excleChk.equals("Y")){ map.put("messageHtml", "parent.location.replace('/gtm/"+siteIdx+"/siteMenuList.do')"); } map.put("excleChk", excleChk); return new ModelAndView("/manager/site/siteMenuExcelChk"); } @RequestMapping(value = "/gtm/proc/{siteIdx}/siteMenuExcelChkProc.do", method=RequestMethod.POST) public ModelAndView setSiteMenuExcelChkProc(HttpServletResponse httpServletResponse, HttpSession session, Map map, MultipartFile upFile, @PathVariable(value="siteIdx") String siteIdx){ getSeedLicense(httpServletResponse); setSessionMessageRemove(session); Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0")); String memberGrant = (memberIdx == 0) ? "N" : SeedUtils.setReplaceNull(managerMemberService.getMemberMapForm(memberIdx, new String[] {"memberGrant"}).get("_memberGrant"), "N"); boolean memberAuth = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){ setSessionRemove(session); map.put("url", "/gtm/login.do"); map.put("message", "common.message.no.grant"); return new ModelAndView("/_common/jsp/message"); } if (!Pattern.matches( "(?i)^[\\d\\D]*\\.(xls)$", upFile.getOriginalFilename().toLowerCase())) { map.put("url", "/gtm/"+siteIdx+"/siteMenuExcelChk.do?excleChk=N"); map.put("message", "common.fileupload.message.no.upload"); return new ModelAndView("/_common/jsp/message"); } if(managerSiteMenuService.setSiteMenuExcelChkProc(siteIdx, rootPath, memberIdx, memberMerge, memberMergeSiteIdx, upFile)){ map.put("url", "/gtm/"+siteIdx+"/siteMenuExcelChk.do?excleChk=Y"); map.put("message", "common.message.up.excel"); }else{ map.put("url", "/gtm/"+siteIdx+"/siteMenuExcelChk.do?excleChk=N"); map.put("message", "common.message.error.up.excel"); } return new ModelAndView("/_common/jsp/message"); } @RequestMapping(value = "/gtm/siteEdit/caseAjax.do") public ResponseEntity caseAjax(HttpServletRequest request, SendSmsVO sendSmsVO) throws Exception { sendService.updateSendSet(sendSmsVO); HttpHeaders headers = new HttpHeaders(); headers.setContentType(new MediaType("text", "plain", Charset.forName("UTF-8"))); return new ResponseEntity<>("변경 완료되었습니다.", headers, HttpStatus.OK); } @RequestMapping(value = "/gtm/siteEdit/caseSatisAjax.do") public ResponseEntity caseSatisAjax(HttpServletRequest request, SatisVO satisVO) throws Exception { LoginVO loginVO = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser(); if(null != loginVO){ satisVO.setLastUpdtId(loginVO.getId()); } egovCmmUseService.updateSatis(satisVO); HttpHeaders headers = new HttpHeaders(); headers.setContentType(new MediaType("text", "plain", Charset.forName("UTF-8"))); return new ResponseEntity<>("변경 완료되었습니다.", headers, HttpStatus.OK); } private String getBrowser(HttpServletRequest request){ String header = request.getHeader("User-Agent").toLowerCase(); if(header.indexOf("msie") > -1){ return "MSIE"; }else if(header.indexOf("trident/") > -1){ return "MSIE"; }else if(header.indexOf("chrome") > -1){ return "Chrome"; }else if(header.indexOf("opera") > -1){ return "Opera"; } return "Firefox"; } //미니게시판 컴파일 public void setBbsDataMiniList(String siteIdx, Integer bbsSetIdx){ T_BBS_SET tBbsSetDB = managerBbsSetService.getBbsSetForm(bbsSetIdx); /* String bbsManager = ""; Iterator iteratorList = tBbsSetDB.gettBbsManagers().iterator(); while(iteratorList.hasNext()){ T_BBS_MANAGER tBbsManagerDB = iteratorList.next(); if(tBbsManagerDB.getBbsManagerStatus().equals("U")){ bbsManager += "|" + tBbsManagerDB.gettMember().getMemberIdx() + "|,"; } } if(!bbsManager.equals("")){ bbsManager = bbsManager.substring(0, bbsManager.length()-1); } */ boolean bbsDataContent = false; ArrayList> bbsDataMiniArrayList = new ArrayList>(); ArrayList bbsItemGroupList = new ArrayList(); ArrayList bbsItemMiniLengthList = new ArrayList(); ArrayList qryArrayList = new ArrayList(); String[] qryColumnsi = {"groupBy", "bbsItemGroup", "bbsItemMiniList", "bbsItemStatus", "bbsItemMiniOrder", "bbsItemDataMiniLength"}; List> tBbsItemList = managerBbsItemService.getBbsItemMiniList(bbsSetIdx, qryColumnsi); qryArrayList.add("bbsDataIdx"); qryArrayList.add("tMember.memberIdx"); qryArrayList.add("bbsDataGroup"); qryArrayList.add("bbsDataPosition"); qryArrayList.add("bbsDataThumb"); qryArrayList.add("bbsDataThumbText"); qryArrayList.add("bbsDataRegDate"); for(int i=0; i bbsItemMap = (Map)tBbsItemList.get(i); bbsItemGroupList.add("_"+bbsItemMap.get("_bbsItemGroup").toString()); bbsItemMiniLengthList.add(Integer.parseInt(bbsItemMap.get("_bbsItemDataMiniLength").toString())); if(SeedUtils.setReplaceNull(bbsItemMap.get("_bbsItemGroup")).toString().equals("bbsDataFile")){ qryArrayList.add("bbsFileCount"); }else if(SeedUtils.setReplaceNull(bbsItemMap.get("_bbsItemGroup")).toString().equals("bbsDataContent")){ bbsDataContent = true; }else if(SeedUtils.setReplaceNull(bbsItemMap.get("_bbsItemGroup")).toString().equals("bbsDataEventDate")){ qryArrayList.add("bbsDataEventSdate"); qryArrayList.add("bbsDataEventEdate"); }else if(SeedUtils.setReplaceNull(bbsItemMap.get("_bbsItemGroup")).toString().equals("bbsDataRegDate")){ continue; }else{ qryArrayList.add(bbsItemMap.get("_bbsItemGroup").toString()); } if(SeedUtils.setReplaceNull(bbsItemMap.get("_bbsItemGroup")).toString().equals("bbsDataName")){ if(SeedUtils.setReplaceNull(tBbsSetDB.getBbsSetDataSaveType()).equals("memberDept")){ qryArrayList.add("bbsDataDept"); }else{ qryArrayList.add("tMember.memberName"); } } } SimpleDateFormat sdfFormat = new SimpleDateFormat("yyyy-MM-dd"); String toDate = sdfFormat.format(new Date()); String filePath = rootPath + "/" + siteIdx + "/jsp/bbs"; String bbsSkin = "/img/user/bbs"; if(!tBbsSetDB.getBbsSetSkinCode().equals("basic")){ bbsSkin = "/site/"+siteIdx+"/jsp/bbs/skin/"+tBbsSetDB.getBbsSetSkinCode()+"/_images"; } SeedUtils.setSeedMkDirs(filePath); FileOutputStream jspFileOutputStream = null; OutputStreamWriter jspOutputStreamWriter = null; BufferedWriter jspWriter = null; try{ jspFileOutputStream = new FileOutputStream(filePath + "/bbs_" + bbsSetIdx+".jsp"); jspOutputStreamWriter = new OutputStreamWriter(jspFileOutputStream, "UTF-8"); jspWriter = new BufferedWriter(jspOutputStreamWriter); jspWriter.write("<%@ page language='java' contentType='text/html; charset=UTF-8'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://www.springframework.org/tags' prefix='s'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://www.springframework.org/tags/form' prefix='form'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://java.sun.com/jsp/jstl/functions' prefix='fn'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://java.sun.com/jsp/jstl/fmt' prefix='fmt'%>"); jspWriter.write("\n"); jspWriter.write("\n"); jspWriter.write("\" />"); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write("\n"); /* jspWriter.write(""); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write("\n"); */ if(tBbsSetDB == null || !tBbsSetDB.getBbsSetStatus().equals("U")){ jspWriter.write("
  • "); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write("
  • "); }else{ int miniRow = 0; String siteMenuIdxs[] = SeedUtils.setReplaceNull(tBbsSetDB.getSiteMenuIdxs(), "0").split("\\|"); if((tBbsSetDB.getBbsSetType().equals("A") || tBbsSetDB.getBbsSetType().equals("M")) && (tBbsSetDB.getBbsSetSubType().equals("G"))){ miniRow = tBbsSetDB.getBbsSetDataMiniRow() * tBbsSetDB.getBbsSetDataMiniCol(); }else{ miniRow = tBbsSetDB.getBbsSetDataMiniRow(); } List> bbsDataMiniList = managerBbsDataService.getBbsDataMiniList(bbsSetIdx, 1, miniRow, SeedUtils.setReplaceNull(tBbsSetDB.getBbsSetDateOrder(), "N"), qryArrayList); if(bbsDataContent){ for(int i=0; i bbsDataMiniMap = bbsDataMiniList.get(i); bbsDataMiniMap.put("_bbsDataContent", SeedUtils.setTagRemove(managerBbsDataService.getBbsDataForm(Integer.parseInt(bbsDataMiniMap.get("_bbsDataIdx").toString())).getBbsDataContent())); bbsDataMiniArrayList.add(bbsDataMiniMap); } if(bbsDataMiniArrayList.size() > 0){ for(int i=0; i"); jspWriter.write("\n"); Map bbsDataMiniMap = bbsDataMiniArrayList.get(i); jspWriter.write(""); jspWriter.write("\n"); //new_icon.gif 나올지 안나올지 확인 String bbsDataRegDate = SeedUtils.setReplaceNull(bbsDataMiniMap.get("_bbsDataRegDate").toString()); if(!bbsDataRegDate.equals("") && bbsDataRegDate.length() > 10){ bbsDataRegDate = bbsDataRegDate.substring(0, 10); } if(bbsDataRegDate.equals(toDate)){ bbsDataRegDate = "<s:message code=' />"; }else{ bbsDataRegDate = ""; } for(int j=0; j 10){ bbsDataRegDateTmp = bbsDataRegDateTmp.substring(0, 10); } bbsDataMiniMapData = bbsDataRegDateTmp; }else if(bbsItemGroupList.get(j).toString().equals("_bbsDataThumb")){ String bbsDataThumb = SeedUtils.setReplaceNull(bbsDataMiniMap.get(bbsItemGroupList.get(j).toString())); String fileChk = bbsDataThumb.substring(0, bbsDataThumb.indexOf("_") + 1); if(fileChk.equals(bbsSetIdx+"_")){ bbsDataThumb = "/site/"+tBbsSetDB.gettSite().getSiteIdx()+"/upload/bbs/"+bbsSetIdx+"/thumb_"+bbsDataThumb; } bbsDataMiniMapData = ""+SeedUtils.setReplaceNull(bbsDataMiniMap.get("_bbsDataThumbText"))+""; }else if(bbsItemGroupList.get(j).toString().equals("_bbsDataName")){ if(SeedUtils.setReplaceNull(bbsDataMiniMap.get(bbsItemGroupList.get(j).toString())).equals("")){ bbsDataMiniMapData = SeedUtils.setReplaceNull(bbsDataMiniMap.get("_memberName")); }else{ bbsDataMiniMapData = SeedUtils.setReplaceNull(bbsDataMiniMap.get(bbsItemGroupList.get(j).toString())); } }else{ bbsDataMiniMapData = SeedUtils.setReplaceNull(bbsDataMiniMap.get(bbsItemGroupList.get(j).toString())); if(bbsDataMiniMapData.length() > bbsItemMiniLengthList.get(j) && Integer.parseInt(bbsItemMiniLengthList.get(j).toString()) > 0){ bbsDataMiniMapData = bbsDataMiniMapData.substring(0, bbsItemMiniLengthList.get(j)) + ".."; } if(!bbsDataRegDate.equals("")){ bbsDataMiniMapData = bbsDataMiniMapData + bbsDataRegDate; bbsDataRegDate = ""; } } jspWriter.write(""+bbsDataMiniMapData+""); } jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); } }else{ jspWriter.write("
  • "); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write("
  • "); } }else{ if(bbsDataMiniList.size() > 0){ for(int i=0; i"); jspWriter.write("\n"); Map bbsDataMiniMap = bbsDataMiniList.get(i); jspWriter.write(""); jspWriter.write("\n"); //new_icon.gif 나올지 안나올지 확인 String bbsDataRegDate = SeedUtils.setReplaceNull(bbsDataMiniMap.get("_bbsDataRegDate").toString()); if(!bbsDataRegDate.equals("") && bbsDataRegDate.length() > 10){ bbsDataRegDate = bbsDataRegDate.substring(0, 10); } if(bbsDataRegDate.equals(toDate)){ bbsDataRegDate = "<s:message code=' />"; }else{ bbsDataRegDate = ""; } for(int j=0; j 10){ bbsDataRegDateTmp = bbsDataRegDateTmp.substring(0, 10); } bbsDataMiniMapData = bbsDataRegDateTmp; }else if(bbsItemGroupList.get(j).toString().equals("_bbsDataThumb")){ String bbsDataThumb = SeedUtils.setReplaceNull(bbsDataMiniMap.get(bbsItemGroupList.get(j).toString())); String fileChk = bbsDataThumb.substring(0, bbsDataThumb.indexOf("_") + 1); if(fileChk.equals(bbsSetIdx+"_")){ bbsDataThumb = "/site/"+tBbsSetDB.gettSite().getSiteIdx()+"/upload/bbs/"+bbsSetIdx+"/thumb_"+bbsDataThumb; } bbsDataMiniMapData = ""+SeedUtils.setReplaceNull(bbsDataMiniMap.get("_bbsDataThumbText"))+""; }else if(bbsItemGroupList.get(j).toString().equals("_bbsDataName")){ if(SeedUtils.setReplaceNull(bbsDataMiniMap.get(bbsItemGroupList.get(j).toString())).equals("")){ bbsDataMiniMapData = SeedUtils.setReplaceNull(bbsDataMiniMap.get("_memberName")); }else{ bbsDataMiniMapData = SeedUtils.setReplaceNull(bbsDataMiniMap.get(bbsItemGroupList.get(j).toString())); } }else{ bbsDataMiniMapData = SeedUtils.setReplaceNull(bbsDataMiniMap.get(bbsItemGroupList.get(j).toString())); if(bbsDataMiniMapData.length() > bbsItemMiniLengthList.get(j) && Integer.parseInt(bbsItemMiniLengthList.get(j).toString()) > 0){ bbsDataMiniMapData = bbsDataMiniMapData.substring(0, bbsItemMiniLengthList.get(j)) + ".."; } if(!bbsDataRegDate.equals("")){ bbsDataMiniMapData = bbsDataMiniMapData + bbsDataRegDate; bbsDataRegDate = ""; } } jspWriter.write(""+bbsDataMiniMapData+""); } jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); } }else{ jspWriter.write("
  • "); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write("
  • "); } } } jspWriter.flush(); SeedFtpType seedFtpType = new SeedFtpType(); //WEB 서버의 경로 seedFtpType.setDestFilePath(siteIdx + "/jsp/bbs"); //WAS 서버의 경로 seedFtpType.setSrcFilePath(rootPath + "/" + siteIdx + "/jsp/bbs"); //WAS 파일명 seedFtpType.setFileName("bbs_" + bbsSetIdx+".jsp"); //파일 전송 타입 regFile=파일전송, delFile=파일삭제 seedFtpType.setFtpType("regFile"); seedFtpType.setSeedFtp(); }catch(FileNotFoundException e){ log.error("CHECK ERROR:",e); }catch(IOException e){ log.error("CHECK ERROR:",e); }finally{ if(jspWriter!=null){try{jspWriter.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} if(jspOutputStreamWriter!=null){try{jspOutputStreamWriter.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} if(jspFileOutputStream!=null){try{jspFileOutputStream.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} } } //미니폼빌더 컴파일 public void setSurveySetMiniList(String siteIdx, Integer surveySetIdx){ T_SURVEY_SET tSurveySetDB = managerSurveySetService.getSurveySetForm(surveySetIdx); SimpleDateFormat sdfFormat = new SimpleDateFormat("yyyy-MM-dd"); String toDate = sdfFormat.format(new Date()); String filePath = rootPath + "/" + siteIdx + "/jsp/survey"; String surveySetSkin = "/img/user/survey"; if(!tSurveySetDB.getSurveySetSkinCode().equals("basic")){ surveySetSkin = "/site/"+siteIdx+"/jsp/survey/skin/"+tSurveySetDB.getSurveySetSkinCode()+"/_images"; } SeedUtils.setSeedMkDirs(filePath); FileOutputStream jspFileOutputStream = null; OutputStreamWriter jspOutputStreamWriter = null; BufferedWriter jspWriter = null; try{ jspFileOutputStream = new FileOutputStream(filePath + "/survey_" + surveySetIdx+".jsp"); jspOutputStreamWriter = new OutputStreamWriter(jspFileOutputStream, "UTF-8"); jspWriter = new BufferedWriter(jspOutputStreamWriter); jspWriter.write("<%@ page language='java' contentType='text/html; charset=UTF-8'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://www.springframework.org/tags' prefix='s'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://www.springframework.org/tags/form' prefix='form'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://java.sun.com/jsp/jstl/functions' prefix='fn'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://java.sun.com/jsp/jstl/fmt' prefix='fmt'%>"); jspWriter.write("\n"); jspWriter.write("\n"); if(tSurveySetDB == null || !tSurveySetDB.getSurveySetStatus().equals("U")){ jspWriter.write("
  • "); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write("
  • "); }else{ int miniRow = 0; String siteMenuIdxs[] = SeedUtils.setReplaceNull(tSurveySetDB.getSiteMenuIdxs(), "0").split("\\|"); miniRow = tSurveySetDB.getSurveySetMiniRow(); List> surveySetMiniList = managerSurveySetService.getSurveySetMiniList(surveySetIdx, 1,miniRow, new String[] {"surveySetIdx", "surveySetName", "surveySetRegDate"}); if(surveySetMiniList.size() > 0){ for(int i=0; i"); jspWriter.write("\n"); Map surveySetMiniMap = surveySetMiniList.get(i); //new_icon.gif 나올지 안나올지 확인 String surveySetRegDate = SeedUtils.setReplaceNull(surveySetMiniMap.get("_surveySetRegDate").toString().substring(0, 10)); if(surveySetRegDate.equals(toDate)){ surveySetRegDate = "<s:message code=' />"; }else{ surveySetRegDate = ""; } jspWriter.write("" + ""+SeedUtils.setReplaceNull(surveySetMiniMap.get("_surveySetName")).toString()+"" + ""+SeedUtils.setReplaceNull(surveySetMiniMap.get("_surveyRegDate")).toString()+"" + ""); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); } }else{ jspWriter.write("
  • "); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write("
  • "); } } jspWriter.flush(); SeedFtpType seedFtpType = new SeedFtpType(); //WEB 서버의 경로 seedFtpType.setDestFilePath(siteIdx + "/jsp/survey"); //WAS 서버의 경로 seedFtpType.setSrcFilePath(rootPath + "/" + siteIdx + "/jsp/survey"); //WAS 파일명 seedFtpType.setFileName("survey" + surveySetIdx+".jsp"); //파일 전송 타입 regFile=파일전송, delFile=파일삭제 seedFtpType.setFtpType("regFile"); seedFtpType.setSeedFtp(); }catch(FileNotFoundException e){ log.error("CHECK ERROR:",e); }catch(IOException e){ log.error("CHECK ERROR:",e); }finally{ if(jspWriter!=null){try{jspWriter.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} if(jspOutputStreamWriter!=null){try{jspOutputStreamWriter.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} if(jspFileOutputStream!=null){try{jspFileOutputStream.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} } } //미니폼빌더 컴파일 public void setFormbuilderSetMiniList(String siteIdx, Integer formbuilderSetIdx){ T_FORMBUILDER_SET tFormbuilderSetDB = managerFormbuilderSetService.getFormbuilderSetForm(formbuilderSetIdx); SimpleDateFormat sdfFormat = new SimpleDateFormat("yyyy-MM-dd"); String toDate = sdfFormat.format(new Date()); String filePath = rootPath + "/" + siteIdx + "/jsp/formbuilder"; String formbuilderSetSkin = "/img/user/formbuilder"; if(!tFormbuilderSetDB.getFormbuilderSetSkinCode().equals("basic")){ formbuilderSetSkin = "/site/"+siteIdx+"/jsp/formbuilder/skin/"+tFormbuilderSetDB.getFormbuilderSetSkinCode()+"/_images"; } SeedUtils.setSeedMkDirs(filePath); FileOutputStream jspFileOutputStream = null; OutputStreamWriter jspOutputStreamWriter = null; BufferedWriter jspWriter = null; try{ jspFileOutputStream = new FileOutputStream(filePath + "/formbuilder_" + formbuilderSetIdx+".jsp"); jspOutputStreamWriter = new OutputStreamWriter(jspFileOutputStream, "UTF-8"); jspWriter = new BufferedWriter(jspOutputStreamWriter); jspWriter.write("<%@ page language='java' contentType='text/html; charset=UTF-8'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://www.springframework.org/tags' prefix='s'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://www.springframework.org/tags/form' prefix='form'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://java.sun.com/jsp/jstl/functions' prefix='fn'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://java.sun.com/jsp/jstl/core' prefix='c'%>"); jspWriter.write("\n"); jspWriter.write("<%@ taglib uri='http://java.sun.com/jsp/jstl/fmt' prefix='fmt'%>"); jspWriter.write("\n"); jspWriter.write("\n"); if(tFormbuilderSetDB == null || !tFormbuilderSetDB.getFormbuilderSetStatus().equals("U")){ jspWriter.write("
  • "); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write("
  • "); }else{ int miniRow = 0; String siteMenuIdxs[] = SeedUtils.setReplaceNull(tFormbuilderSetDB.getSiteMenuIdxs(), "0").split("\\|"); miniRow = tFormbuilderSetDB.getFormbuilderSetMiniRow(); List> formbuilderSetMiniList = managerFormbuilderSetService.getFormbuilderSetMiniList(formbuilderSetIdx, 1,miniRow, new String[] {"formbuilderSetIdx", "formbuilderSetName", "formbuilderSetRegDate"}); if(formbuilderSetMiniList.size() > 0){ for(int i=0; i"); jspWriter.write("\n"); Map formbuilderSetMiniMap = formbuilderSetMiniList.get(i); //new_icon.gif 나올지 안나올지 확인 String formbuilderSetRegDate = SeedUtils.setReplaceNull(formbuilderSetMiniMap.get("_formbuilderSetRegDate").toString().substring(0, 10)); if(formbuilderSetRegDate.equals(toDate)){ formbuilderSetRegDate = "<s:message code=' />"; }else{ formbuilderSetRegDate = ""; } jspWriter.write("" + ""+SeedUtils.setReplaceNull(formbuilderSetMiniMap.get("_formbuilderSetName")).toString()+"" + ""+SeedUtils.setReplaceNull(formbuilderSetMiniMap.get("_formbuilderRegDate")).toString()+"" + ""); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); } }else{ jspWriter.write("
  • "); jspWriter.write("\n"); jspWriter.write(""); jspWriter.write("\n"); jspWriter.write("
  • "); } } jspWriter.flush(); SeedFtpType seedFtpType = new SeedFtpType(); //WEB 서버의 경로 seedFtpType.setDestFilePath(siteIdx + "/jsp/formbuilder"); //WAS 서버의 경로 seedFtpType.setSrcFilePath(rootPath + "/" + siteIdx + "/jsp/formbuilder"); //WAS 파일명 seedFtpType.setFileName("formbuilder" + formbuilderSetIdx+".jsp"); //파일 전송 타입 regFile=파일전송, delFile=파일삭제 seedFtpType.setFtpType("regFile"); seedFtpType.setSeedFtp(); }catch(FileNotFoundException e){ log.error("CHECK ERROR:",e); }catch(IOException e){ log.error("CHECK ERROR:",e); }finally{ if(jspWriter!=null){try{jspWriter.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} if(jspOutputStreamWriter!=null){try{jspOutputStreamWriter.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} if(jspFileOutputStream!=null){try{jspFileOutputStream.close();}catch(IOException e){log.error("CHECK ERROR:",e);}} } } }