package seed.com.user.mediation; import java.sql.PreparedStatement; import java.sql.SQLException; import java.text.ParseException; import java.util.Date; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; 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.jdbc.core.BatchPreparedStatementSetter; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.servlet.ModelAndView; import com.ibm.icu.text.SimpleDateFormat; import seed.com.gtm.seedfile.SeedFileService; import seed.com.user.mypage.MyPageService; import seed.manager.group.service.ManagerGroupService; import seed.manager.member.service.ManagerMemberService; import seed.manager.site.service.ManagerSiteManagerService; import seed.manager.site.service.ManagerSiteMenuAuthService; import seed.manager.site.service.ManagerSiteMenuManagerService; import seed.manager.site.service.ManagerSiteMenuService; import seed.utils.FairnetUtils; import seed.utils.SeedUtils; @Controller public class WebMediationController { private Logger log = Logger.getLogger(this.getClass()); @Autowired private ManagerSiteMenuService managerSiteMenuService; @Autowired private ManagerSiteManagerService managerSiteManagerService; @Autowired private ManagerMemberService managerMemberService; @Autowired private ManagerSiteMenuManagerService managerSiteMenuManagerService; @Autowired private ManagerSiteMenuAuthService managerSiteMenuAuthService; @Autowired private ManagerGroupService managerGroupService; @Autowired private MediationService service; @Autowired private MyPageService service2; @Autowired private SeedFileService fileService; @Value("#{config['member.merge']}") private String memberMerge; @Value("#{config['member.merge.siteIdx']}") private String memberMergeSiteIdx; @Value("#{config['captcha']}") private String captchaChk; 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"); } // /web/user/mediation/case/05/154/mediationStep04.do @RequestMapping("/web/user/mediation/{siteIdx}/05/{siteMenuIdx}/mediationStep04.do") public ModelAndView mediationForm(ModelMap map, HttpSession session, @RequestParam Map paramMap, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuIdx") Integer siteMenuIdx , HttpServletRequest req){ // String tempHpDi = SeedUtils.setReplaceNull(session.getAttribute("hpDi")); /*String tempAgreeCheck = SeedUtils.setReplaceNull(session.getAttribute("agreeCheck"));*/ // if(tempHpDi.equals("")/* || tempAgreeCheck.equals("")*/){ // map.put("siteIdx", "case"); // map.put("url", "/case/index.do"); // map.put("message", "user.message.medi.session.alert"); // map.put("opener", ""); // map.put("append", ""); // map.put("self", ""); // // return new ModelAndView("/_common/jsp/umessage"); // } /*----권한체크----*/ 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 memberAuthM = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); boolean memberAuth = managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx); //메뉴 권한설정 // if(!memberGrant.equals("S") && !memberAuthM && !memberAuth && // !managerSiteMenuAuthService.getSiteMenuAuthChk(siteMenuIdx, memberIdx)){ // // map.put("message", "common.message.no.grant"); // // if(memberIdx.equals(0)){ // map.put("url", "/"+siteIdx+"/index.do"); // }else{ // map.put("self", "history"); // } // // return new ModelAndView("/_common/jsp/umessage"); // } boolean b_ret = true; b_ret = FairnetUtils.hasUserAuth(memberIdx, memberGrant, memberAuth, session, map); if (!b_ret) { return new ModelAndView("/_common/jsp/message"); } Map tSiteMenuDB = managerSiteMenuService.getSiteMenuMapForm(siteMenuIdx, new String[] {"siteMenuName", "siteMenuParentTitle", "siteMenuStatus", "siteMenuType", "siteMenuLinkUrl", "siteMenuCharge", "siteMenuCharge", "siteMenuSNS", "siteMenuTitle", "siteMenuRegDate", "siteMenuModDate", "siteMenuNameType", "siteMenuIdxs", "siteMenuDepth", "siteMenuSatisfaction", "siteMenuIdx1", "tSite.siteActiveMenuWidth", "tSite.siteService", "tSite.siteServiceSdate", "tSite.siteServiceSdate"}); if(!memberGrant.equals("S") && !memberAuthM && !memberAuth){ if(!SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuStatus")).equals("U")){ map.put("message", "common.message.no.siteMenu"); map.put("self", "history"); return new ModelAndView("/_common/jsp/umessage"); } } if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteService")).equals("Y")){ SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); try{ Date getDate = new Date(); Date sDate = formatter.parse(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteServiceSdate"))); Date eDate = formatter.parse(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteServiceEdate"))); if((sDate.compareTo(formatter.parse(formatter.format(getDate))) > 0 && eDate.compareTo(formatter.parse(formatter.format(getDate))) > 0) || (sDate.compareTo(formatter.parse(formatter.format(getDate))) < 0 && eDate.compareTo(formatter.parse(formatter.format(getDate))) < 0)){ return new ModelAndView("redirect:/user/common/service/"+siteIdx+".do"); } }catch(ParseException e){ log.error("CHECK ERROR:",e); } } if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuType")).equals("F") || SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuType")).equals("L")){ return new ModelAndView("redirect:"+SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuLinkUrl"))); } String siteMenuManager = "N"; StringBuffer siteMenuManagerIdx = new StringBuffer(); String siteMenuCharge = SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuCharge"), "N"); List> siteMenuManagerList = managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"}); for(int i=0; i tSiteMenuManagerDB = siteMenuManagerList.get(i); if(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_siteMenuManagerStatus")).equals("U")){ if(!memberIdx.equals(0) && memberIdx.equals(Integer.parseInt(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_memberIdx"), "0"))) && siteMenuManager.equals("N")){ siteMenuManager = "Y"; } siteMenuManagerIdx.append(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_memberIdx")).toString()); siteMenuManagerIdx.append(","); } } if(memberGrant.equals("S") || memberAuthM){ siteMenuManager = "Y"; } //편집 권한 map.put("siteMenuManager", siteMenuManager); //담당자 보기 설정 map.put("siteMenuCharge", siteMenuCharge); //담당자 이름 map.put("siteMenuManagerIdx", siteMenuManagerIdx.toString()); //만족도 설정 map.put("siteMenuSatisfaction", SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuSatisfaction"), "N")); map.put("siteMenuSubTitle", managerSiteMenuService.getSiteMenuSubTitleForm(siteIdx, SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdx1")))); String siteMenuTitle = managerSiteMenuService.getSiteMenuParentName(siteIdx, SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdxs")), "edit").replaceAll("》", "|") + " | " + SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuName")); map.put("siteMenuTitle", siteMenuTitle); //부모메뉴 타이틀 설정한 경우 해당 글의 부모 타이틀을 가져옴 if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuParentTitle") ,"N").equals("Y")){ String[] siteMenuTitles = siteMenuTitle.split("\\|"); tSiteMenuDB.put("_siteMenuName", siteMenuTitles[Integer.parseInt(tSiteMenuDB.get("_siteMenuDepth").toString())-1]); } map.put("tSiteMenuDB", tSiteMenuDB); map.put("memberAuthM", memberAuthM); map.put("seedMenuAuth", managerGroupService.getGroupList(siteIdx, memberIdx, memberMerge, memberMergeSiteIdx)); /*----권한체크 종료----*/ String agreeCheck = SeedUtils.setReplaceNull(paramMap.get("agreeCheck")); String personalCheck = SeedUtils.setReplaceNull(paramMap.get("personalCheck")); String rceptNo = SeedUtils.setReplaceNull(session.getAttribute("rceptNo")); String mediType = SeedUtils.setReplaceNull(paramMap.get("mediType")); String fileGubun = SeedUtils.setReplaceNull(session.getAttribute("fileGubun")); paramMap.put("rceptNo", rceptNo); paramMap.put("mediType", mediType); paramMap.put("fileGubun", fileGubun); paramMap.put("agreeCheck", agreeCheck); paramMap.put("personalCheck", personalCheck); if(!rceptNo.equals("")){ map.put("recptmsData", service2.selectRecptms(paramMap));//사건마스터 map.put("applcntData", service2.selectApplcnt(paramMap));//신청인 map.put("respondentData", service2.selectRespondent(paramMap));//피신청인 map.put("appagentData", service2.selectAppagent(paramMap));//신청인 대리인 map.put("selectRceptsttus", service2.selectRceptsttus(paramMap));//접수현황 map.put("selectReason", service2.selectReason(paramMap));//신청경로 map.put("selectSubcntrsttusA", service2.selectSubcntrsttusA(paramMap));//A 하도급대급 내역 리스 map.put("selectSubcntrsttusTotA", service2.selectSubcntrsttusTotA(paramMap));//A 하도급 소계 그룹바이 map.put("selectSubcntrsttusR", service2.selectSubcntrsttusR(paramMap));//R 하도급대급 내역 리스 map.put("selectSubcntrsttusTotR", service2.selectSubcntrsttusTotR(paramMap));//R 하도급 소계 그룹바이 map.put("caseFileList", fileService.caseFileList(paramMap));//파일 리스트 } map.put("agreeCheck", agreeCheck); map.put("personalCheck", personalCheck); map.put("mediType", mediType); session.setAttribute("siteIdx", siteIdx); return new ModelAndView("/_extra/web/user/mediation/mediationStep04"); } // /web/user/mediation/case/01/154/mediationApp.do @RequestMapping("/web/user/mediation/{siteIdx}/01/{siteMenuIdx}/mediationApp.do") public ModelAndView mediationApply(ModelMap map, HttpSession session, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuIdx") Integer siteMenuIdx ){ 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 memberAuthM = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); boolean memberAuth = managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx); //메뉴 권한설정 // if(!memberGrant.equals("S") && !memberAuthM && !memberAuth && // !managerSiteMenuAuthService.getSiteMenuAuthChk(siteMenuIdx, memberIdx)){ // // map.put("message", "common.message.no.grant"); // // if(memberIdx.equals(0)){ // map.put("url", "/"+siteIdx+"/index.do"); // }else{ // map.put("self", "history"); // } // // return new ModelAndView("/_common/jsp/umessage"); // } boolean b_ret = true; b_ret = FairnetUtils.hasUserAuth(memberIdx, memberGrant, memberAuth, session, map); if (!b_ret) { return new ModelAndView("/_common/jsp/message"); } Map tSiteMenuDB = managerSiteMenuService.getSiteMenuMapForm(siteMenuIdx, new String[] {"siteMenuName", "siteMenuParentTitle", "siteMenuStatus", "siteMenuType", "siteMenuLinkUrl", "siteMenuCharge", "siteMenuCharge", "siteMenuSNS", "siteMenuTitle", "siteMenuRegDate", "siteMenuModDate", "siteMenuNameType", "siteMenuIdxs", "siteMenuDepth", "siteMenuSatisfaction", "siteMenuIdx1", "tSite.siteActiveMenuWidth", "tSite.siteService", "tSite.siteServiceSdate", "tSite.siteServiceSdate"}); if(!memberGrant.equals("S") && !memberAuthM && !memberAuth){ if(!SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuStatus")).equals("U")){ map.put("message", "common.message.no.siteMenu"); map.put("self", "history"); return new ModelAndView("/_common/jsp/umessage"); } } if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteService")).equals("Y")){ SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); try{ Date getDate = new Date(); Date sDate = formatter.parse(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteServiceSdate"))); Date eDate = formatter.parse(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteServiceEdate"))); if((sDate.compareTo(formatter.parse(formatter.format(getDate))) > 0 && eDate.compareTo(formatter.parse(formatter.format(getDate))) > 0) || (sDate.compareTo(formatter.parse(formatter.format(getDate))) < 0 && eDate.compareTo(formatter.parse(formatter.format(getDate))) < 0)){ return new ModelAndView("redirect:/user/common/service/"+siteIdx+".do"); } }catch(ParseException e){ log.error("CHECK ERROR:",e); } } if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuType")).equals("F") || SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuType")).equals("L")){ return new ModelAndView("redirect:"+SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuLinkUrl"))); } String siteMenuManager = "N"; StringBuffer siteMenuManagerIdx = new StringBuffer(); String siteMenuCharge = SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuCharge"), "N"); List> siteMenuManagerList = managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"}); for(int i=0; i tSiteMenuManagerDB = siteMenuManagerList.get(i); if(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_siteMenuManagerStatus")).equals("U")){ if(!memberIdx.equals(0) && memberIdx.equals(Integer.parseInt(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_memberIdx"), "0"))) && siteMenuManager.equals("N")){ siteMenuManager = "Y"; } siteMenuManagerIdx.append(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_memberIdx")).toString()); siteMenuManagerIdx.append(","); } } if(memberGrant.equals("S") || memberAuthM){ siteMenuManager = "Y"; } //편집 권한 map.put("siteMenuManager", siteMenuManager); //담당자 보기 설정 map.put("siteMenuCharge", siteMenuCharge); //담당자 이름 map.put("siteMenuManagerIdx", siteMenuManagerIdx.toString()); //만족도 설정 map.put("siteMenuSatisfaction", SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuSatisfaction"), "N")); map.put("siteMenuSubTitle", managerSiteMenuService.getSiteMenuSubTitleForm(siteIdx, SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdx1")))); String siteMenuTitle = managerSiteMenuService.getSiteMenuParentName(siteIdx, SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdxs")), "edit").replaceAll("》", "|") + " | " + SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuName")); map.put("siteMenuTitle", siteMenuTitle); //부모메뉴 타이틀 설정한 경우 해당 글의 부모 타이틀을 가져옴 if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuParentTitle") ,"N").equals("Y")){ String[] siteMenuTitles = siteMenuTitle.split("\\|"); tSiteMenuDB.put("_siteMenuName", siteMenuTitles[Integer.parseInt(tSiteMenuDB.get("_siteMenuDepth").toString())-1]); } map.put("tSiteMenuDB", tSiteMenuDB); map.put("memberAuthM", memberAuthM); map.put("seedMenuAuth", managerGroupService.getGroupList(siteIdx, memberIdx, memberMerge, memberMergeSiteIdx)); /*----권한체크 종료----*/ //여기서부터 작업할거 return new ModelAndView("/_extra/web/user/mediation/mediationApp"); } // /web/user/mediation/case/01/154/mediationStep01.do @RequestMapping("/web/user/mediation/{siteIdx}/02/{siteMenuIdx}/mediationStep01.do") public ModelAndView mediationType(ModelMap map, HttpSession session, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuIdx") Integer siteMenuIdx){ /*----권한체크----*/ 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 memberAuthM = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); boolean memberAuth = managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx); //메뉴 권한설정 // if(!memberGrant.equals("S") && !memberAuthM && !memberAuth && // !managerSiteMenuAuthService.getSiteMenuAuthChk(siteMenuIdx, memberIdx)){ // // map.put("message", "common.message.no.grant"); // // if(memberIdx.equals(0)){ // map.put("url", "/"+siteIdx+"/index.do"); // }else{ // map.put("self", "history"); // } // // return new ModelAndView("/_common/jsp/umessage"); // } boolean b_ret = true; b_ret = FairnetUtils.hasUserAuth(memberIdx, memberGrant, memberAuth, session, map); if (!b_ret) { return new ModelAndView("/_common/jsp/message"); } Map tSiteMenuDB = managerSiteMenuService.getSiteMenuMapForm(siteMenuIdx, new String[] {"siteMenuName", "siteMenuParentTitle", "siteMenuStatus", "siteMenuType", "siteMenuLinkUrl", "siteMenuCharge", "siteMenuCharge", "siteMenuSNS", "siteMenuTitle", "siteMenuRegDate", "siteMenuModDate", "siteMenuNameType", "siteMenuIdxs", "siteMenuDepth", "siteMenuSatisfaction", "siteMenuIdx1", "tSite.siteActiveMenuWidth", "tSite.siteService", "tSite.siteServiceSdate", "tSite.siteServiceSdate"}); if(!memberGrant.equals("S") && !memberAuthM && !memberAuth){ if(!SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuStatus")).equals("U")){ map.put("message", "common.message.no.siteMenu"); map.put("self", "history"); return new ModelAndView("/_common/jsp/umessage"); } } if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteService")).equals("Y")){ SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); try{ Date getDate = new Date(); Date sDate = formatter.parse(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteServiceSdate"))); Date eDate = formatter.parse(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteServiceEdate"))); if((sDate.compareTo(formatter.parse(formatter.format(getDate))) > 0 && eDate.compareTo(formatter.parse(formatter.format(getDate))) > 0) || (sDate.compareTo(formatter.parse(formatter.format(getDate))) < 0 && eDate.compareTo(formatter.parse(formatter.format(getDate))) < 0)){ return new ModelAndView("redirect:/user/common/service/"+siteIdx+".do"); } }catch(ParseException e){ log.error("CHECK ERROR:",e); } } if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuType")).equals("F") || SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuType")).equals("L")){ return new ModelAndView("redirect:"+SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuLinkUrl"))); } String siteMenuManager = "N"; StringBuffer siteMenuManagerIdx = new StringBuffer(); String siteMenuCharge = SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuCharge"), "N"); List> siteMenuManagerList = managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"}); for(int i=0; i tSiteMenuManagerDB = siteMenuManagerList.get(i); if(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_siteMenuManagerStatus")).equals("U")){ if(!memberIdx.equals(0) && memberIdx.equals(Integer.parseInt(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_memberIdx"), "0"))) && siteMenuManager.equals("N")){ siteMenuManager = "Y"; } siteMenuManagerIdx.append(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_memberIdx")).toString()); siteMenuManagerIdx.append(","); } } if(memberGrant.equals("S") || memberAuthM){ siteMenuManager = "Y"; } //편집 권한 map.put("siteMenuManager", siteMenuManager); //담당자 보기 설정 map.put("siteMenuCharge", siteMenuCharge); //담당자 이름 map.put("siteMenuManagerIdx", siteMenuManagerIdx.toString()); //만족도 설정 map.put("siteMenuSatisfaction", SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuSatisfaction"), "N")); map.put("siteMenuSubTitle", managerSiteMenuService.getSiteMenuSubTitleForm(siteIdx, SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdx1")))); String siteMenuTitle = managerSiteMenuService.getSiteMenuParentName(siteIdx, SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdxs")), "edit").replaceAll("》", "|") + " | " + SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuName")); map.put("siteMenuTitle", siteMenuTitle); //부모메뉴 타이틀 설정한 경우 해당 글의 부모 타이틀을 가져옴 if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuParentTitle") ,"N").equals("Y")){ String[] siteMenuTitles = siteMenuTitle.split("\\|"); tSiteMenuDB.put("_siteMenuName", siteMenuTitles[Integer.parseInt(tSiteMenuDB.get("_siteMenuDepth").toString())-1]); } map.put("tSiteMenuDB", tSiteMenuDB); map.put("memberAuthM", memberAuthM); map.put("seedMenuAuth", managerGroupService.getGroupList(siteIdx, memberIdx, memberMerge, memberMergeSiteIdx)); /*----권한체크 종료----*/ /*여기서부터 추가 작업*/ return new ModelAndView("/_extra/web/user/mediation/mediationStep01"); } // /web/user/mediation/case/03/154/mediationStep02.do @RequestMapping("/web/user/mediation/{siteIdx}/03/{siteMenuIdx}/mediationStep02.do") public ModelAndView mediationInfoAgree(ModelMap map, HttpSession session, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuIdx") Integer siteMenuIdx, @RequestParam(value="agreeCheck", defaultValue="") String agreeCheck, @RequestParam(value="mediType", defaultValue="") String mediType ){ if(agreeCheck.equals("") || agreeCheck == null || mediType.equals("") || mediType == null){ map.put("siteIdx", "case"); map.put("url", "/case/index.do"); map.put("message", "user.message.medi.alert"); map.put("opener", ""); map.put("append", ""); map.put("self", ""); return new ModelAndView("/_common/jsp/umessage"); } /*----권한체크----*/ 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 memberAuthM = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); boolean memberAuth = managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx); //메뉴 권한설정 // if(!memberGrant.equals("S") && !memberAuthM && !memberAuth && // !managerSiteMenuAuthService.getSiteMenuAuthChk(siteMenuIdx, memberIdx)){ // // map.put("message", "user.message.medi.alert"); // // if(memberIdx.equals(0)){ // map.put("url", "/"+siteIdx+"/index.do"); // }else{ // map.put("self", "history"); // } // // return new ModelAndView("/_common/jsp/umessage"); // } boolean b_ret = true; b_ret = FairnetUtils.hasUserAuth(memberIdx, memberGrant, memberAuth, session, map); if (!b_ret) { return new ModelAndView("/_common/jsp/message"); } Map tSiteMenuDB = managerSiteMenuService.getSiteMenuMapForm(siteMenuIdx, new String[] {"siteMenuName", "siteMenuParentTitle", "siteMenuStatus", "siteMenuType", "siteMenuLinkUrl", "siteMenuCharge", "siteMenuCharge", "siteMenuSNS", "siteMenuTitle", "siteMenuRegDate", "siteMenuModDate", "siteMenuNameType", "siteMenuIdxs", "siteMenuDepth", "siteMenuSatisfaction", "siteMenuIdx1", "tSite.siteActiveMenuWidth", "tSite.siteService", "tSite.siteServiceSdate", "tSite.siteServiceSdate"}); if(!memberGrant.equals("S") && !memberAuthM && !memberAuth){ if(!SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuStatus")).equals("U")){ map.put("message", "common.message.no.siteMenu"); map.put("self", "history"); return new ModelAndView("/_common/jsp/umessage"); } } if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteService")).equals("Y")){ SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); try{ Date getDate = new Date(); Date sDate = formatter.parse(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteServiceSdate"))); Date eDate = formatter.parse(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteServiceEdate"))); if((sDate.compareTo(formatter.parse(formatter.format(getDate))) > 0 && eDate.compareTo(formatter.parse(formatter.format(getDate))) > 0) || (sDate.compareTo(formatter.parse(formatter.format(getDate))) < 0 && eDate.compareTo(formatter.parse(formatter.format(getDate))) < 0)){ return new ModelAndView("redirect:/user/common/service/"+siteIdx+".do"); } }catch(ParseException e){ log.error("CHECK ERROR:",e); } } if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuType")).equals("F") || SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuType")).equals("L")){ return new ModelAndView("redirect:"+SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuLinkUrl"))); } String siteMenuManager = "N"; StringBuffer siteMenuManagerIdx = new StringBuffer(); String siteMenuCharge = SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuCharge"), "N"); List> siteMenuManagerList = managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"}); for(int i=0; i tSiteMenuManagerDB = siteMenuManagerList.get(i); if(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_siteMenuManagerStatus")).equals("U")){ if(!memberIdx.equals(0) && memberIdx.equals(Integer.parseInt(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_memberIdx"), "0"))) && siteMenuManager.equals("N")){ siteMenuManager = "Y"; } siteMenuManagerIdx.append(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_memberIdx")).toString()); siteMenuManagerIdx.append(","); } } if(memberGrant.equals("S") || memberAuthM){ siteMenuManager = "Y"; } //편집 권한 map.put("siteMenuManager", siteMenuManager); //담당자 보기 설정 map.put("siteMenuCharge", siteMenuCharge); //담당자 이름 map.put("siteMenuManagerIdx", siteMenuManagerIdx.toString()); //만족도 설정 map.put("siteMenuSatisfaction", SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuSatisfaction"), "N")); map.put("siteMenuSubTitle", managerSiteMenuService.getSiteMenuSubTitleForm(siteIdx, SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdx1")))); String siteMenuTitle = managerSiteMenuService.getSiteMenuParentName(siteIdx, SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdxs")), "edit").replaceAll("》", "|") + " | " + SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuName")); map.put("siteMenuTitle", siteMenuTitle); //부모메뉴 타이틀 설정한 경우 해당 글의 부모 타이틀을 가져옴 if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuParentTitle") ,"N").equals("Y")){ String[] siteMenuTitles = siteMenuTitle.split("\\|"); tSiteMenuDB.put("_siteMenuName", siteMenuTitles[Integer.parseInt(tSiteMenuDB.get("_siteMenuDepth").toString())-1]); } map.put("tSiteMenuDB", tSiteMenuDB); map.put("memberAuthM", memberAuthM); map.put("seedMenuAuth", managerGroupService.getGroupList(siteIdx, memberIdx, memberMerge, memberMergeSiteIdx)); /*----권한체크 종료----*/ session.removeAttribute("mediType"); session.removeAttribute("rceptNo"); session.removeAttribute("fileGubun"); map.put("agreeCheck", agreeCheck); map.put("mediType", mediType); //개발테스트 인증 // session.setAttribute("hpName", "김기복"); // session.setAttribute("hpBirYMD", "19871230"); // session.setAttribute("hpDi", "test2017"); // session.setAttribute("hpCi1", ""); return new ModelAndView("/_extra/web/user/mediation/mediationStep02"); } // /web/user/mediation/case/04/154/mediationStep03.do @RequestMapping("/web/user/mediation/{siteIdx}/04/{siteMenuIdx}/mediationStep03.do") public ModelAndView mediationCheck(ModelMap map, HttpSession session, @PathVariable(value="siteIdx") String siteIdx, @PathVariable(value="siteMenuIdx") Integer siteMenuIdx ){ String agreeCheck = session.getAttribute("agreeCheck").toString(); if(agreeCheck.equals("") || agreeCheck == null){ map.put("siteIdx", "case"); map.put("url", "/case/index.do"); map.put("message", "user.message.medi.alert"); map.put("opener", ""); map.put("append", ""); map.put("self", ""); return new ModelAndView("/_common/jsp/umessage"); } /*----권한체크----*/ 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 memberAuthM = managerSiteManagerService.getSiteManagerListCnt(siteIdx, memberIdx); boolean memberAuth = managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx); //메뉴 권한설정 // if(!memberGrant.equals("S") && !memberAuthM && !memberAuth && // !managerSiteMenuAuthService.getSiteMenuAuthChk(siteMenuIdx, memberIdx)){ // // map.put("message", "common.message.no.grant"); // // if(memberIdx.equals(0)){ // map.put("url", "/"+siteIdx+"/index.do"); // }else{ // map.put("self", "history"); // } // // return new ModelAndView("/_common/jsp/umessage"); // } boolean b_ret = true; b_ret = FairnetUtils.hasUserAuth(memberIdx, memberGrant, memberAuth, session, map); if (!b_ret) { return new ModelAndView("/_common/jsp/message"); } Map tSiteMenuDB = managerSiteMenuService.getSiteMenuMapForm(siteMenuIdx, new String[] {"siteMenuName", "siteMenuParentTitle", "siteMenuStatus", "siteMenuType", "siteMenuLinkUrl", "siteMenuCharge", "siteMenuCharge", "siteMenuSNS", "siteMenuTitle", "siteMenuRegDate", "siteMenuModDate", "siteMenuNameType", "siteMenuIdxs", "siteMenuDepth", "siteMenuSatisfaction", "siteMenuIdx1", "tSite.siteActiveMenuWidth", "tSite.siteService", "tSite.siteServiceSdate", "tSite.siteServiceSdate"}); if(!memberGrant.equals("S") && !memberAuthM && !memberAuth){ if(!SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuStatus")).equals("U")){ map.put("message", "common.message.no.siteMenu"); map.put("self", "history"); return new ModelAndView("/_common/jsp/umessage"); } } if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteService")).equals("Y")){ SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); try{ Date getDate = new Date(); Date sDate = formatter.parse(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteServiceSdate"))); Date eDate = formatter.parse(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteServiceEdate"))); if((sDate.compareTo(formatter.parse(formatter.format(getDate))) > 0 && eDate.compareTo(formatter.parse(formatter.format(getDate))) > 0) || (sDate.compareTo(formatter.parse(formatter.format(getDate))) < 0 && eDate.compareTo(formatter.parse(formatter.format(getDate))) < 0)){ return new ModelAndView("redirect:/user/common/service/"+siteIdx+".do"); } }catch(ParseException e){ log.error("CHECK ERROR:",e); } } if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuType")).equals("F") || SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuType")).equals("L")){ return new ModelAndView("redirect:"+SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuLinkUrl"))); } String siteMenuManager = "N"; StringBuffer siteMenuManagerIdx = new StringBuffer(); String siteMenuCharge = SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuCharge"), "N"); List> siteMenuManagerList = managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"}); for(int i=0; i tSiteMenuManagerDB = siteMenuManagerList.get(i); if(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_siteMenuManagerStatus")).equals("U")){ if(!memberIdx.equals(0) && memberIdx.equals(Integer.parseInt(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_memberIdx"), "0"))) && siteMenuManager.equals("N")){ siteMenuManager = "Y"; } siteMenuManagerIdx.append(SeedUtils.setReplaceNull(tSiteMenuManagerDB.get("_memberIdx")).toString()); siteMenuManagerIdx.append(","); } } if(memberGrant.equals("S") || memberAuthM){ siteMenuManager = "Y"; } //편집 권한 map.put("siteMenuManager", siteMenuManager); //담당자 보기 설정 map.put("siteMenuCharge", siteMenuCharge); //담당자 이름 map.put("siteMenuManagerIdx", siteMenuManagerIdx.toString()); //만족도 설정 map.put("siteMenuSatisfaction", SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuSatisfaction"), "N")); map.put("siteMenuSubTitle", managerSiteMenuService.getSiteMenuSubTitleForm(siteIdx, SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdx1")))); String siteMenuTitle = managerSiteMenuService.getSiteMenuParentName(siteIdx, SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuIdxs")), "edit").replaceAll("》", "|") + " | " + SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuName")); map.put("siteMenuTitle", siteMenuTitle); //부모메뉴 타이틀 설정한 경우 해당 글의 부모 타이틀을 가져옴 if(SeedUtils.setReplaceNull(tSiteMenuDB.get("_siteMenuParentTitle") ,"N").equals("Y")){ String[] siteMenuTitles = siteMenuTitle.split("\\|"); tSiteMenuDB.put("_siteMenuName", siteMenuTitles[Integer.parseInt(tSiteMenuDB.get("_siteMenuDepth").toString())-1]); } map.put("tSiteMenuDB", tSiteMenuDB); map.put("memberAuthM", memberAuthM); map.put("seedMenuAuth", managerGroupService.getGroupList(siteIdx, memberIdx, memberMerge, memberMergeSiteIdx)); /*----권한체크 종료----*/ //본인인증을 위해 저장된 세션값을 불러와서 model에담고 session은 지워버림 //부득이하게 redirect를 써야해서 session사용 /* map.put("mediType", session.getAttribute("mediType")); map.put("agreeCheck", session.getAttribute("agreeCheck")); map.put("personalCheck", session.getAttribute("personalCheck"));*/ map.put("id", session.getAttribute("id")); map.put("retUrl", session.getAttribute("retUrl")); map.put("srvNo", session.getAttribute("srvNo")); map.put("reqNum", session.getAttribute("reqNum")); map.put("reqInfo", session.getAttribute("reqInfo")); map.put("hpRetUrl", session.getAttribute("hpRetUrl")); map.put("hpReqInfo", session.getAttribute("hpReqInfo")); session.removeAttribute("id"); session.removeAttribute("retUrl"); session.removeAttribute("srvNo"); session.removeAttribute("reqNum"); session.removeAttribute("reqInfo"); session.removeAttribute("hpRetUrl"); session.removeAttribute("hpReqInfo"); return new ModelAndView("/_extra/web/user/mediation/mediationStep03"); } }