fairnet/src/main/java/seed/home/HomeController.java

2412 lines
107 KiB
Java

package seed.home;
import java.io.File;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Locale;
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.stereotype.Controller;
import org.springframework.ui.Model;
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.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.ibm.icu.text.SimpleDateFormat;
import seed.admin.errorlogs.service.AdminErrorLogsService;
import seed.admin.member.service.AdminMemberService;
import seed.admin.site.service.AdminSiteService;
import seed.admin.statistics.service.AdminStatisticsService;
import seed.manager.bbs.service.ManagerBbsDataService;
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.manager.site.service.ManagerSiteService;
import seed.manager.statistics.service.ManagerStatisticsService;
import seed.utils.SeedUtils;
@Controller
public class HomeController {
private Logger log = Logger.getLogger(this.getClass());
@Autowired
private AdminSiteService adminSiteService;
@Autowired
private AdminStatisticsService adminStatisticsService;
@Autowired
private AdminMemberService adminMemberService;
@Autowired
private AdminErrorLogsService adminErrorLogsService;
@Autowired
private ManagerSiteService managerSiteService;
@Autowired
private ManagerSiteMenuService managerSiteMenuService;
@Autowired
private ManagerSiteManagerService managerSiteManagerService;
@Autowired
private ManagerSiteMenuManagerService managerSiteMenuManagerService;
@Autowired
private ManagerSiteMenuAuthService managerSiteMenuAuthService;
@Autowired
private ManagerMemberService managerMemberService;
@Autowired
private ManagerGroupService managerGroupService;
@Autowired
private ManagerBbsDataService managerBbsDataService;
@Autowired
private ManagerStatisticsService managerStatisticsService;
@Value("#{config['root.path']}")
private String rootPath;
@Value("#{config['was.log.path']}")
private String wasLogPath;
@Value("#{config['member.merge']}")
private String memberMerge;
@Value("#{config['member.merge.siteIdx']}")
private String memberMergeSiteIdx;
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 = "/index.do")
public ModelAndView home(HttpSession session, Locale locale, Model model) {
return new ModelAndView("home");
}
@RequestMapping(value = "/memory.do")
public ModelAndView memory(HttpSession session, Locale locale, Model model) {
return new ModelAndView("memory");
}
@RequestMapping(value = "/{siteIdx}/index.do")
public ModelAndView setIndex(HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx){
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);
Map<Object, Object> tSiteDB = managerSiteService.getSiteForm(siteIdx, new String[] {"siteName", "siteActiveMenuWidth", "siteStatus", "siteService", "siteServiceSdate", "siteServiceEdate"});
if(!memberGrant.equals("S") && !memberAuthM){
if(!SeedUtils.setReplaceNull(tSiteDB.get("_siteStatus")).equals("U")){
map.put("message", "common.message.no.site");
return new ModelAndView("/_common/jsp/umessage");
}
}
if(SeedUtils.setReplaceNull(tSiteDB.get("_siteStatus")).equals("Y")){
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
try{
Date getDate = new Date();
Date sDate = formatter.parse(SeedUtils.setReplaceNull(tSiteDB.get("_siteServiceSdate")));
Date eDate = formatter.parse(SeedUtils.setReplaceNull(tSiteDB.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);
}
}
map.put("tSiteDB", tSiteDB);
map.put("memberAuthM", memberAuthM);
map.put("seedMenuAuth", managerGroupService.getGroupList(siteIdx, memberIdx, memberMerge, memberMergeSiteIdx));
return new ModelAndView("/user/index/index");
}
@RequestMapping(value = "/{siteIdx}/subIndex/{siteMenuIdx}.do")
public ModelAndView setSubIndex(HttpSession session, Map<String, Object> map,
@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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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("/user/index/subIndex");
}
@RequestMapping(value = "/{siteIdx}/{layOutType}/{positionType}/layOut.do")
public ModelAndView setLayOut(HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="layOutType") String layOutType,
@PathVariable(value="positionType") String positionType,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
if(siteMenuIdx != null && siteMenuIdx >0){
map.put("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"}));
}
return new ModelAndView("/site/"+siteIdx+"/jsp/"+layOutType+"/layOut/"+positionType+"/"+positionType);
}
@RequestMapping(value = "/{siteIdx}/{layOutType}/{positionType}/menu.do")
public ModelAndView setMenu(HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="layOutType") String layOutType,
@PathVariable(value="positionType") String positionType,
@RequestParam(value="siteMenuIdx1", defaultValue="", required=false) String siteMenuIdx1){
if(siteMenuIdx1 != null && !siteMenuIdx1.equals("")){
return new ModelAndView("/site/"+siteIdx+"/jsp/"+layOutType+"/menu/"+positionType+"/"+siteMenuIdx1+"/menu_"+layOutType);
}else{
return new ModelAndView("/site/"+siteIdx+"/jsp/"+layOutType+"/menu/"+positionType+"/menu_"+layOutType);
}
}
@RequestMapping(value = "/{siteIdx}/{layOutType}/{positionType}/{fileName}/menu.do")
public ModelAndView getMenu(HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="layOutType") String layOutType,
@PathVariable(value="positionType") String positionType,
@PathVariable(value="fileName") String fileName,
@RequestParam(value="menuPath", defaultValue="", required=false) String menuPath){
if(menuPath != null && !menuPath.equals("")){
return new ModelAndView("/site/"+siteIdx+"/jsp/"+layOutType+"/menu/"+positionType+"/"+menuPath+"/"+fileName);
}else{
return new ModelAndView("/site/"+siteIdx+"/jsp/"+layOutType+"/menu/"+positionType+"/"+fileName);
}
}
@RequestMapping(value = "/{siteIdx}/{siteMenuIdx}/content.do")
public ModelAndView getContent(HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="siteMenuIdx") Integer siteMenuIdx){
return new ModelAndView("/site/"+siteIdx+"/jsp/content/"+managerSiteMenuService.getSiteMenuMapForm(siteMenuIdx, new String[] {"siteMenuIdxs"}).get("_siteMenuIdxs"));
}
@RequestMapping(value = "/{siteIdx}/{menuCode}/{funcIdx}/mini.do")
public ModelAndView getFuncMini(HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="menuCode") String menuCode,
@PathVariable(value="funcIdx") Integer funcIdx){
//폴더명은 소문자이므로 변경해줘야함
menuCode = menuCode.toLowerCase();
return new ModelAndView("/site/"+siteIdx+"/jsp/"+menuCode+"/"+menuCode+"_"+funcIdx);
}
@RequestMapping(value = "/user/{siteIdx}/{pageFolder}/{pageName}/js/Page.do")
public ModelAndView getPage(HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName){
return new ModelAndView("/site/"+siteIdx+"/jsp/"+pageFolder+"/js/"+pageName);
}
@RequestMapping(value = "/user/{siteIdx}/{pageFolder}/{pageName}/jsp/Page.do")
public ModelAndView getPage(HttpServletRequest httpServletRequest , HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
if(siteMenuIdx != null && !siteMenuIdx.equals("")){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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("/site/"+siteIdx+"/jsp/"+pageFolder+"/"+pageName);
}
@RequestMapping(value = "/user/proc/{siteIdx}/{pageFolder}/{pageName}/jsp/PageProc.do")
public ModelAndView setPageProc(HttpServletRequest httpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
if(siteMenuIdx != null && !siteMenuIdx.equals("")){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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("/site/"+siteIdx+"/jsp/"+pageFolder+"/"+pageName);
}
@RequestMapping(value = "/user/extra/{siteIdx}/{pageFolder}/{pageName}/jsp/Page.do")
public ModelAndView getExtraPage(HttpServletRequest httpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
if(siteMenuIdx != null && !siteMenuIdx.equals("")){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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("/seed/_extra/user/"+pageFolder+"/"+pageName);
}
@RequestMapping(value = "/user/extra/{siteIdx}/{siteMenuIdx}/{pageFolder}/{pageName}/jsp/LayOutPage.do")
public ModelAndView getExtraLayOutPage(HttpServletRequest httpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="siteMenuIdx") Integer siteMenuIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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("/user/extra/layout");
}
@RequestMapping(value = "/user/{siteIdx}/{siteMenuIdx}/{pageFolder}/{pageName}/jsp/LayOutPage.do")
public ModelAndView getLayOutPage(HttpServletRequest httpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="siteMenuIdx") Integer siteMenuIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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("/user/layout/layout");
}
@RequestMapping(value = {"/gte/{siteIdx}/eIndex.do"})
public ModelAndView getIndexPage(HttpServletRequest httpServletRequest,
HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx){
Integer memberIdx = Integer.valueOf(SeedUtils.setReplaceNull(session.getAttribute("memberIdx"),"0"));
if(memberIdx == 0){
setSessionRemove(session);
map.put("url", "/gte/login.do");
map.put("message", "common.message.no.grant");
return new ModelAndView("/_common/jsp/message");
}
return new ModelAndView("/manager/login/eIndex");
}
@RequestMapping(value = "/user/proc/{siteIdx}/{siteMenuIdx}/{pageFolder}/{pageName}/jsp/LayOutPageProc.do")
public ModelAndView setLayOutPageProc(HttpServletRequest httpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="siteMenuIdx") Integer siteMenuIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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("/site/"+siteIdx+"/jsp/"+pageFolder+"/"+pageName);
}
@RequestMapping(value = {"/gtm/{siteIdx}/{pageFolder}/{pageName}/jsp/Page.do", "/gte/{siteIdx}/{pageFolder}/{pageName}/jsp/Page.do"})
public ModelAndView getManagerPage(HttpServletRequest httpServletRequest,
HttpSession session, Map<String, Object> map,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@PathVariable(value="siteIdx") String siteIdx,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
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);
String location = "";
String pageType = "";
//기능 관리자 URL로 넘어온 경우
if(httpServletRequest.getRequestURI().indexOf("/gte/"+siteIdx+"/"+pageFolder+"/"+pageName+"/jsp/Page.do") > -1){
location = "/gte/login.do";
pageType = "gte";
}else{
location = "/gtm/login.do";
pageType = "gtm";
}
map.put("pageType", pageType);
if(siteMenuIdx != null && !siteMenuIdx.equals("")){
boolean memberAuthM = managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx);
if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth && !memberAuthM)){
setSessionRemove(session);
map.put("url", location);
map.put("message", "common.message.no.grant");
return new ModelAndView("/_common/jsp/message");
}else{
//편집 권한
map.put("memberAuth", memberAuth);
map.put("memberAuthM", memberAuthM);
map.put("siteMenuManager", "Y");
}
}else{
if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){
setSessionRemove(session);
map.put("url", location);
map.put("message", "common.message.no.grant");
return new ModelAndView("/_common/jsp/message");
}else{
//편집 권한
map.put("memberAuth", memberAuth);
map.put("siteMenuManager", "Y");
}
}
return new ModelAndView("/_extra/gtm/"+pageFolder+"/"+pageName);
}
@RequestMapping(value = {"/gtm/{siteIdx}/{pageFolder}/{pageName}/jsp/LayOutPage.do", "/gte/{siteIdx}/{pageFolder}/{pageName}/jsp/LayOutPage.do"})
public ModelAndView getManagerLayOutPage(HttpServletRequest httpServletRequest,
HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
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);
String location = "";
String pageType = "";
//기능 관리자 URL로 넘어온 경우
if(httpServletRequest.getRequestURI().indexOf("/gte/"+siteIdx+"/"+pageFolder+"/"+pageName+"/jsp/LayOutPage.do") > -1){
location = "/gte/login.do";
pageType = "gte";
}else{
location = "/gtm/login.do";
pageType = "gtm";
}
map.put("pageType", pageType);
if(siteMenuIdx != null && !siteMenuIdx.equals("")){
boolean memberAuthM = managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx);
if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth && !memberAuthM)){
setSessionRemove(session);
map.put("url", location);
map.put("message", "common.message.no.grant");
return new ModelAndView("/_common/jsp/message");
}else{
//편집 권한
map.put("memberAuth", memberAuth);
map.put("memberAuthM", memberAuthM);
map.put("siteMenuManager", "Y");
map.put("siteMenuIdx", siteMenuIdx);
}
}else{
if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){
setSessionRemove(session);
map.put("url", location);
map.put("message", "common.message.no.grant");
return new ModelAndView("/_common/jsp/message");
}else{
//편집 권한
map.put("memberAuth", memberAuth);
map.put("siteMenuManager", "Y");
map.put("siteMenuIdx", siteMenuIdx);
}
}
return new ModelAndView("/manager/layout/layout");
}
@RequestMapping(value = "/common/extra/{siteIdx}/{pageName}/jsp/Page.do")
public ModelAndView getExtraCommonPage(HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageName") String pageName){
return new ModelAndView("/_extra/common/"+pageName);
}
@RequestMapping(value = {"/gta/{siteIdx}/dashboard.do", "/gtm/{siteIdx}/dashboard.do"})
public ModelAndView getDashBoardPage(HttpServletRequest httpServletRequest,
HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx){
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);
int row = 5;
String modelView = "";
//관리자 URL 비교
if(httpServletRequest.getRequestURI().indexOf("/gta/"+siteIdx+"/dashboard.do") > -1){
if(memberIdx == 0 || !memberGrant.equals("S")){
setSessionRemove(session);
map.put("url", "/gta/login.do");
map.put("message", "common.message.no.grant");
return new ModelAndView("/_common/jsp/message");
}
modelView = "/admin/login/dashboard";
map.put("siteName", adminSiteService.getSiteForm(siteIdx).getSiteName());
//회원관리 데이타 시작
map.put("memberList", adminMemberService.getMemberList(1, 8, "memberIdx", "DESC", "", "",
new String[] {"groupBy", "memberIdx", "memberId", "memberName", "memberRegDate", "memberContactDate", "memberIp", "memberGrant", "memberStatus"}));
//회원관리 데이타 끝
//홈페이지 사용량 현황 데이타 시작
ArrayList<Map<Object, Object>> siteVolumeList = new ArrayList<Map<Object,Object>>();
String[] qryColumns = {"siteIdx", "siteName"};
List<Map<Object, Object>> siteList = null;
if(memberMerge.equals("true")){
siteList = adminSiteService.getSiteVolumeList(memberMergeSiteIdx, qryColumns);
}else{
siteList = adminSiteService.getSiteVolumeList("", qryColumns);
}
if(siteList.size() > 0){
for(int i=0; i<siteList.size(); i++){
Map<Object, Object> siteMap = siteList.get(i);
HashMap<Object, Object> siteVolumeMap = new HashMap<Object, Object>();
siteVolumeMap.put("siteName", siteMap.get("_siteName"));
File file = new File(rootPath+"/"+siteMap.get("_siteIdx").toString());
if(file.exists()){
Long foldSize = 0L;
siteVolumeMap.put("siteVolume", SeedUtils.getFolderSize(file, foldSize) / 1024 / 1024);
siteVolumeList.add(siteVolumeMap);
}
}
}
map.put("siteList", siteList);
double totalSpace = 0;
double freeSpace = 0;
/*
String drive = "";
double usedSpace = 0;
double usableSpace = 0;
*/
// 하드디스크의 루트 드라이버들을 배열로 반환한다.
File[] roots = File.listRoots();
for(File root : roots){
// 하드디스크 전체 용량
totalSpace += root.getTotalSpace() / Math.pow(1024, 3);
// 여유 디스크 용량
freeSpace += root.getFreeSpace() / Math.pow(1024,3);
/*
// 루트 드라이버의 절대 경로
drive = root.getAbsolutePath();
// 사용가능한 디스크 용량
usableSpace += root.getUsableSpace() / Math.pow(1024,3);
// 사용한 디스크 용량
usedSpace += totalSpace - usableSpace;
*/
}
map.put("serverVolume", SeedUtils.setReplaceNull((int)totalSpace * 1024, 0));
map.put("serverFreeVolume", SeedUtils.setReplaceNull((int)freeSpace * 1024, 0));
map.put("siteVolumeList", siteVolumeList);
//홈페이지 사용량 현황 데이타 끝
//실시간 로그 테이타 시작
//해당 WAS폴더의 파일리스트 가져옴
ArrayList<Map<String, Object>> fileList = SeedUtils.getSeedDirFiles(wasLogPath, "F");
map.put("fileList", fileList);
//실시간로그 데이타 끝
//최근게시판 데이타 시작
ArrayList<String> qryArrayList = new ArrayList<String>();
qryArrayList.add("tBbsSet.bbsSetIdx");
qryArrayList.add("tBbsSet.bbsSetName");
qryArrayList.add("bbsDataIdx");
qryArrayList.add("bbsDataTitle");
qryArrayList.add("bbsDataRegDate");
map.put("bbsDashboardList", managerBbsDataService.getBbsDashboardList(siteIdx, 1, row, qryArrayList));
//최근게시판 데이타 끝
//메모리상태 데이타 시작
//map.put("memoryInfo", SeedUtils.getMemoryInfo());
//map.put("cpuInfo", SeedUtils.getCpuInfo());
map.put("memoryInfo", "");
map.put("cpuInfo", "");
//메모리상태 데이타 끝
//에러로그 데이타 시작
map.put("errorLogsList", adminErrorLogsService.getErrorLogsList(1, row, "errorLogsIdx", "DESC", "", "", new String[] {"errorLogsUrl", "errorLogsType", "errorLogsRegDate"}));
//에러로그 데이타 끝
//일별통계 데이타 시작
Date getDate = new Date();
SimpleDateFormat sdfFormat = new SimpleDateFormat("yyyyMMdd");
int year = Integer.parseInt(sdfFormat.format(getDate).substring(0, 4));
int month = Integer.parseInt(sdfFormat.format(getDate).substring(4, 6));
map.put("siteStatisticsList", adminStatisticsService.getAdminStatisticsSiteList("", year, month));
map.put("yearStr", year);
map.put("monthStr", month);
//일별통계 데이타 끝
}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");
}
modelView = "/manager/login/dashboard";
map.put("siteName", managerSiteService.getSiteForm(siteIdx).getSiteName());
//회원관리 데이타 시작
map.put("memberList", adminMemberService.getMemberList(1, 8, "memberIdx", "DESC", "", "",
new String[] {"groupBy", "memberIdx", "memberId", "memberName", "memberRegDate", "memberContactDate", "memberIp", "memberGrant", "memberStatus"}));
//회원관리 데이타 끝
//홈페이지 사용량 현황 데이타 시작
File file = new File(rootPath+"/"+siteIdx);
if(file.exists()){
Long foldSize = 0L;
map.put("siteVolume", SeedUtils.getFolderSize(file, foldSize) / 1024 / 1024);
}
double totalSpace = 0;
double freeSpace = 0;
/*
String drive = "";
double usedSpace = 0;
double usableSpace = 0;
*/
// 하드디스크의 루트 드라이버들을 배열로 반환한다.
File[] roots = File.listRoots();
for(File root : roots){
// 하드디스크 전체 용량
totalSpace += root.getTotalSpace() / Math.pow(1024, 3);
// 여유 디스크 용량
freeSpace += root.getFreeSpace() / Math.pow(1024,3);
/*
// 루트 드라이버의 절대 경로
drive = root.getAbsolutePath();
// 사용가능한 디스크 용량
usableSpace += root.getUsableSpace() / Math.pow(1024,3);
// 사용한 디스크 용량
usedSpace += totalSpace - usableSpace;
*/
}
map.put("serverVolume", SeedUtils.setReplaceNull((int)totalSpace * 1024, 0));
map.put("serverFreeVolume", SeedUtils.setReplaceNull((int)freeSpace * 1024, 0));
//홈페이지 사용량 현황 데이타 끝
//실시간 로그 테이타 시작
//해당 WAS폴더의 파일리스트 가져옴
ArrayList<Map<String, Object>> fileList = SeedUtils.getSeedDirFiles(wasLogPath, "F");
map.put("fileList", fileList);
//실시간 로그 데이타 끝
//최근게시판 데이타 시작
ArrayList<String> qryArrayList = new ArrayList<String>();
qryArrayList.add("tBbsSet.bbsSetIdx");
qryArrayList.add("tBbsSet.bbsSetName");
qryArrayList.add("bbsDataIdx");
qryArrayList.add("bbsDataTitle");
qryArrayList.add("bbsDataRegDate");
map.put("bbsDashboardList", managerBbsDataService.getBbsDashboardList(siteIdx, 1, row, qryArrayList));
//최근게시판 데이타 끝
//메모리상태 데이타 시작
//map.put("memoryInfo", SeedUtils.getMemoryInfo());
//map.put("cpuInfo", SeedUtils.getCpuInfo());
map.put("memoryInfo", "");
map.put("cpuInfo", "");
//메모리상태 데이타 끝
//에러로그 데이타 시작
map.put("errorLogsList", adminErrorLogsService.getErrorLogsList(1, row, "errorLogsIdx", "DESC", "", "", new String[] {"errorLogsUrl", "errorLogsType", "errorLogsRegDate"}));
//에러로그 데이타 끝
//일별통계 데이타 시작
Date getDate = new Date();
SimpleDateFormat sdfFormat = new SimpleDateFormat("yyyyMMdd");
int year = Integer.parseInt(sdfFormat.format(getDate).substring(0, 4));
int month = Integer.parseInt(sdfFormat.format(getDate).substring(4, 6));
map.put("siteStatisticsList", managerStatisticsService.getManagerStatisticsSiteList(siteIdx, year, month));
map.put("yearStr", year);
map.put("monthStr", month);
//일별통계 데이타 끝
}
return new ModelAndView(modelView);
}
@RequestMapping(value = "/user/{siteIdx}/{pageFolder}/{pageName}/jsp/FilePage.do")
public ModelAndView getFilePage(HttpServletRequest httpServletRequest , MultipartHttpServletRequest multipartHttpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
if(siteMenuIdx != null && !siteMenuIdx.equals("")){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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));
}
map.put("multipartHttpServletRequest", multipartHttpServletRequest);
return new ModelAndView("/site/"+siteIdx+"/jsp/"+pageFolder+"/"+pageName);
}
@RequestMapping(value = "/user/proc/{siteIdx}/{pageFolder}/{pageName}/jsp/FilePageProc.do")
public ModelAndView setFilePageProc(HttpServletRequest httpServletRequest, MultipartHttpServletRequest multipartHttpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
if(siteMenuIdx != null && !siteMenuIdx.equals("")){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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));
}
map.put("multipartHttpServletRequest", multipartHttpServletRequest);
return new ModelAndView("/site/"+siteIdx+"/jsp/"+pageFolder+"/"+pageName);
}
@RequestMapping(value = "/user/extra/{siteIdx}/{pageFolder}/{pageName}/jsp/FilePage.do")
public ModelAndView getExtraFilePage(HttpServletRequest httpServletRequest, MultipartHttpServletRequest multipartHttpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
if(siteMenuIdx != null && !siteMenuIdx.equals("")){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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));
}
map.put("multipartHttpServletRequest", multipartHttpServletRequest);
return new ModelAndView("/_extra/user/"+pageFolder+"/"+pageName);
}
@RequestMapping(value = "/user/extra/{siteIdx}/{siteMenuIdx}/{pageFolder}/{pageName}/jsp/LayOutFilePage.do")
public ModelAndView getExtraLayOutFilePage(HttpServletRequest httpServletRequest, MultipartHttpServletRequest multipartHttpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="siteMenuIdx") Integer siteMenuIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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));
map.put("multipartHttpServletRequest", multipartHttpServletRequest);
return new ModelAndView("/user/extra/layout");
}
@RequestMapping(value = "/user/{siteIdx}/{siteMenuIdx}/{pageFolder}/{pageName}/jsp/LayOutFilePage.do")
public ModelAndView getLayOutFilePage(HttpServletRequest httpServletRequest, MultipartHttpServletRequest multipartHttpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="siteMenuIdx") Integer siteMenuIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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));
map.put("multipartHttpServletRequest", multipartHttpServletRequest);
return new ModelAndView("/user/layout/layout");
}
@RequestMapping(value = "/user/proc/{siteIdx}/{siteMenuIdx}/{pageFolder}/{pageName}/jsp/LayOutPageFileProc.do")
public ModelAndView setLayOutPageFileProc(HttpServletRequest httpServletRequest, MultipartHttpServletRequest multipartHttpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="siteMenuIdx") Integer siteMenuIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName){
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");
}
Map<Object, Object> 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<Map<Object, Object>> siteMenuManagerList =
managerSiteMenuManagerService.getSiteMenuManagerMapList(siteMenuIdx, new String[] {"siteMenuManagerStatus", "tMember.memberIdx"});
for(int i=0; i<siteMenuManagerList.size(); i++){
Map<Object, Object> 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));
map.put("multipartHttpServletRequest", multipartHttpServletRequest);
return new ModelAndView("/site/"+siteIdx+"/jsp/"+pageFolder+"/"+pageName);
}
@RequestMapping(value = {"/gtm/{siteIdx}/{pageFolder}/{pageName}/jsp/FilePage.do", "/gte/{siteIdx}/{pageFolder}/{pageName}/jsp/FilePage.do"})
public ModelAndView getManagerFilePage(HttpServletRequest httpServletRequest, MultipartHttpServletRequest multipartHttpServletRequest,
HttpSession session, Map<String, Object> map,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@PathVariable(value="siteIdx") String siteIdx,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
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);
String location = "";
String pageType = "";
//기능 관리자 URL로 넘어온 경우
if(httpServletRequest.getRequestURI().indexOf("/gte/"+siteIdx+"/"+pageFolder+"/"+pageName+"/jsp/FilePage.do") > -1){
location = "/gte/login.do";
pageType = "gte";
}else{
location = "/gtm/login.do";
pageType = "gtm";
}
map.put("pageType", pageType);
if(siteMenuIdx != null && !siteMenuIdx.equals("")){
boolean memberAuthM = managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx);
if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth && !memberAuthM)){
setSessionRemove(session);
map.put("url", location);
map.put("message", "common.message.no.grant");
return new ModelAndView("/_common/jsp/message");
}else{
//편집 권한
map.put("memberAuth", memberAuth);
map.put("memberAuthM", memberAuthM);
map.put("siteMenuManager", "Y");
}
}else{
if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){
setSessionRemove(session);
map.put("url", location);
map.put("message", "common.message.no.grant");
return new ModelAndView("/_common/jsp/message");
}else{
//편집 권한
map.put("memberAuth", memberAuth);
map.put("siteMenuManager", "Y");
}
}
map.put("multipartHttpServletRequest", multipartHttpServletRequest);
return new ModelAndView("/_extra/gtm/"+pageFolder+"/"+pageName);
}
@RequestMapping(value = {"/gtm/{siteIdx}/{pageFolder}/{pageName}/jsp/LayOutFilePage.do", "/gte/{siteIdx}/{pageFolder}/{pageName}/jsp/LayOutFilePage.do"})
public ModelAndView getManagerLayOutFilePage(HttpServletRequest httpServletRequest, MultipartHttpServletRequest multipartHttpServletRequest,
HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageFolder") String pageFolder,
@PathVariable(value="pageName") String pageName,
@RequestParam(value="siteMenuIdx", defaultValue="", required=false) Integer siteMenuIdx){
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);
String location = "";
String pageType = "";
//기능 관리자 URL로 넘어온 경우
if(httpServletRequest.getRequestURI().indexOf("/gte/"+siteIdx+"/"+pageFolder+"/"+pageName+"/jsp/LayOutFilePage.do") > -1){
location = "/gte/login.do";
pageType = "gte";
}else{
location = "/gtm/login.do";
pageType = "gtm";
}
map.put("pageType", pageType);
if(siteMenuIdx != null && !siteMenuIdx.equals("")){
boolean memberAuthM = managerSiteMenuManagerService.getSiteMenuManagerListCnt(siteMenuIdx, memberIdx);
if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth && !memberAuthM)){
setSessionRemove(session);
map.put("url", location);
map.put("message", "common.message.no.grant");
return new ModelAndView("/_common/jsp/message");
}else{
//편집 권한
map.put("memberAuth", memberAuth);
map.put("memberAuthM", memberAuthM);
map.put("siteMenuManager", "Y");
map.put("siteMenuIdx", siteMenuIdx);
}
}else{
if(memberIdx == 0 || (!memberGrant.equals("S") && !memberAuth)){
setSessionRemove(session);
map.put("url", location);
map.put("message", "common.message.no.grant");
return new ModelAndView("/_common/jsp/message");
}else{
//편집 권한
map.put("memberAuth", memberAuth);
map.put("siteMenuManager", "Y");
map.put("siteMenuIdx", siteMenuIdx);
}
}
map.put("multipartHttpServletRequest", multipartHttpServletRequest);
return new ModelAndView("/manager/layout/layout");
}
@RequestMapping(value = "/common/extra/{siteIdx}/{pageName}/jsp/FilePage.do")
public ModelAndView getExtraCommonFilePage(MultipartHttpServletRequest multipartHttpServletRequest, HttpSession session, Map<String, Object> map,
@PathVariable(value="siteIdx") String siteIdx,
@PathVariable(value="pageName") String pageName){
map.put("multipartHttpServletRequest", multipartHttpServletRequest);
return new ModelAndView("/_extra/common/"+pageName);
}
}