Merge branch 'tolag3'

This commit is contained in:
leejunho 2024-09-24 20:59:39 +09:00
parent 7d48b2deec
commit 4d464e5925
10 changed files with 1255 additions and 1289 deletions

View File

@ -106,4 +106,7 @@ public interface EgovMenuCreateManageService {
void insertMenu(MenuManageVO menuManageVO) throws Exception;
List<MenuManageJTreeVO> selectMenuListCurrentJtreeWebCustom(MenuManageJTreeVO menuManageVO) throws Exception;
List<MenuManageJTreeVO> selectMenuListJtreeWebCustom(MenuManageJTreeVO menuManageVO) throws Exception;
}

View File

@ -226,4 +226,13 @@ public class EgovMenuCreateManageServiceImpl extends EgovAbstractServiceImpl imp
menuCreateManageDAO.updateQuickList(menuManageVO);
}
@Override
public List<MenuManageJTreeVO> selectMenuListCurrentJtreeWebCustom(MenuManageJTreeVO menuManageVO) throws Exception {
return menuCreateManageDAO.selectMenuListCurrentJtreeWebCustom(menuManageVO);
}
@Override
public List<MenuManageJTreeVO> selectMenuListJtreeWebCustom(MenuManageJTreeVO menuManageVO) throws Exception {
return menuCreateManageDAO.selectMenuListJtreeWebCustom(menuManageVO);
}
}

View File

@ -180,5 +180,14 @@ public class MenuCreateManageDAO extends EgovAbstractDAO{
insert("menuManageDAO.insertQuickList", menuManageVO);
}
@SuppressWarnings("unchecked")
public List<MenuManageJTreeVO> selectMenuListCurrentJtreeWebCustom(MenuManageJTreeVO menuManageVO) throws Exception{
return (List<MenuManageJTreeVO>) list("menuManageDAO.selectMenuListCurrentJtreeWebCustom", menuManageVO);
}
@SuppressWarnings("unchecked")
public List<MenuManageJTreeVO> selectMenuListJtreeWebCustom(MenuManageJTreeVO menuManageVO) throws Exception{
return (List<MenuManageJTreeVO>) list("menuManageDAO.selectMenuListJtreeWebCustom", menuManageVO);
}
}

View File

@ -6,12 +6,15 @@ import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.Properties;
import java.util.stream.Collector;
import java.util.stream.Collectors;
import javax.activation.DataHandler;
import javax.activation.DataSource;
@ -93,10 +96,9 @@ import kcc.let.sym.site.service.EgovSiteManagerService;
import kcc.let.sym.site.service.SiteManagerVO;
import kcc.let.uat.uia.service.SsoLoginVO;
/**
* 템플릿 메인 페이지 컨트롤러 클래스(Sample 소스)
*
* @author 실행환경 개발팀 JJY
* @since 2011.08.31
* @version 1.0
@ -174,7 +176,6 @@ public class MainController {
@Resource(name = "EgovFileMngUtil")
private EgovFileMngUtil fileUtil;
@Value("#{globalSettings['Globals.email.host']}")
private String Globals_email_host;
@Value("#{globalSettings['Globals.email.port']}")
@ -222,10 +223,8 @@ public class MainController {
// model.addAttribute("mainzoneListM", mainzoneListM); //모바일
/*
* 반응형으로 사용을 해야해서 모바일에서도 팝업 영역의 데이터를 불러와야해서 주석처리했음
* 우영두
* 2021.10.29
* */
* 반응형으로 사용을 해야해서 모바일에서도 팝업 영역의 데이터를 불러와야해서 주석처리했음 우영두 2021.10.29
*/
/** 팝업 알림창괸리 */
// if(!isMobile(request)){ //PC인경우만
@ -249,7 +248,8 @@ public class MainController {
List<?> popupzoneList = egovPopupManageService.selectPopupzoneList(popupzoneVo);
model.addAttribute("popupzoneList", popupzoneList);
// popupzoneVo.setSeCd("03");
//List<?> popupzoneTopList = egovPopupManageService.selectPopupzoneList(popupzoneVo);
// List<?> popupzoneTopList =
// egovPopupManageService.selectPopupzoneList(popupzoneVo);
// model.addAttribute("popupzoneTopList", popupzoneTopList);
// }
@ -270,40 +270,29 @@ public class MainController {
* 사용자 상단 매뉴
*/
@RequestMapping(value = "/web/com/webCommonHeader.do")
public String siteWebCommonHeader(
@RequestParam Map<String, Object> commandMap, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
ModelMap model, HttpServletRequest request, HttpSession session)
throws Exception {
public String siteWebCommonHeader(@RequestParam Map<String, Object> commandMap,
@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO, ModelMap model, HttpServletRequest request,
HttpSession session) throws Exception {
// 로그인 권한정보 불러오기
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()
? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser()
: null;
String userAuthority = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getAuthority());
// 권한별 메뉴표시
if(!userAuthority.equals("ROLE_ADMIN")
&& !userAuthority.equals("ROLE_ADR_ADMIN")
&& userAuthority != "") {
if (!userAuthority.equals("ROLE_ADMIN") && userAuthority != "") {
menuManageVO.setAuthorCode(userAuthority);
}else if(userAuthority.equals("ROLE_ADMIN") || userAuthority.equals("ROLE_ADR_ADMIN")) {
} else if (userAuthority.equals("ROLE_ADMIN")) {
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
}
else {
} else {
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
}
//대국민, 조정위원일 경우 원뎁스 메뉴에 대시보드 링크를 걸기위해 권한 넘겨줌
model.addAttribute("auth", menuManageVO.getAuthorCode());
menuManageVO.setMenuUserType(menuManageVO.getMenuUserType());
List<MenuManageJTreeVO> menuResultList = menuCreateManageService.selectMenuListJtreeWeb(menuManageVO);
model.addAttribute("menuResultList", menuResultList);
SsoLoginVO ssoLoginVO = (SsoLoginVO)session.getAttribute("SSOLoginVO");
if(ssoLoginVO != null) {
model.addAttribute("ssoLoginVO", ssoLoginVO);
}
return "web/com/webCommonHeader";
}
@ -311,9 +300,8 @@ public class MainController {
* 사용자 footer
*/
@RequestMapping(value = "/web/com/webCommonFooter.do")
public String siteWebCommonFooter(
@RequestParam Map<String, Object> commandMap, HttpServletRequest request, ModelMap model)
throws Exception {
public String siteWebCommonFooter(@RequestParam Map<String, Object> commandMap, HttpServletRequest request,
ModelMap model) throws Exception {
LoginLog loginLog = new LoginLog();
if (request.getRequestURI().contains("/web/main/mainPage.do")) { // 사용자 메인
@ -352,9 +340,12 @@ public class MainController {
SimpleDateFormat mSimpleDateFormat = new SimpleDateFormat("yyyyMMdd", Locale.KOREA);
Date currentTime = new Date();
String mTime = mSimpleDateFormat.format(currentTime);
HttpServletRequest req = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest();
HttpServletRequest req = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes())
.getRequest();
String ip = req.getHeader("X-FORWARDED-FOR");
if (ip == null){ ip = req.getRemoteAddr();}
if (ip == null) {
ip = req.getRemoteAddr();
}
loginLog.setLoginIp(ip);
loginLog.setCreatDt(mTime);
@ -365,10 +356,7 @@ public class MainController {
Object obj = EgovUserDetailsHelper.getAuthenticatedUser();
if(
obj != null &&
!"anonymousUser".equals(obj)
) {
if (obj != null && !"anonymousUser".equals(obj)) {
LoginVO loginVO = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
loginLog.setLoginId(loginVO.getId());
} else {
@ -405,8 +393,8 @@ public class MainController {
* 사용자 만족도 관리/매뉴 담당자 가져오기
*/
@RequestMapping(value = "/web/com/webSatisCommonFooter.do")
public String siteWebSatisCommonFooter(@RequestParam Map<String, Object> commandMap, HttpServletRequest request, ModelMap model, Model model2)
throws Exception {
public String siteWebSatisCommonFooter(@RequestParam Map<String, Object> commandMap, HttpServletRequest request,
ModelMap model, Model model2) throws Exception {
MenuManageVO tempMenuManageVO = new MenuManageVO();
@ -438,14 +426,12 @@ public class MainController {
return "web/com/webSatisCommonFooter";
}
/**
* 사용자 footer
*/
@RequestMapping(value = "/{siteId}/web/com/webThemeCommonFooter.do")
public String webThemeCommonFooter(@PathVariable("siteId") String siteId,
@RequestParam Map<String, Object> commandMap, HttpServletRequest request, ModelMap model)
throws Exception {
@RequestParam Map<String, Object> commandMap, HttpServletRequest request, ModelMap model) throws Exception {
LoginLog loginLog = new LoginLog();
if (request.getRequestURI().contains("/web/main/mainPage.do")) { // 사용자 메인
@ -470,9 +456,10 @@ public class MainController {
MenuManageVO tempMenuManageVO = new MenuManageVO();
tempMenuManageVO.setSearchKeyword((String) commandMap.get("bbsId"));
tempMenuManageVO.setSearchCondition("bbsId");
/* ComDefaultVO searchVO = new ComDefaultVO();
searchVO.setSearchCondition("bbsId");
searchVO.setSearchKeyword((String)commandMap.get("bbsId"));
/*
* ComDefaultVO searchVO = new ComDefaultVO();
* searchVO.setSearchCondition("bbsId");
* searchVO.setSearchKeyword((String)commandMap.get("bbsId"));
*/ MenuManageVO resultVO = menuManageService.selectMenuManage(tempMenuManageVO);
loginLog.setProgrmFileNm((String) commandMap.get("bbsId"));
if (resultVO != null) {
@ -488,9 +475,12 @@ public class MainController {
SimpleDateFormat mSimpleDateFormat = new SimpleDateFormat("yyyyMMdd", Locale.KOREA);
Date currentTime = new Date();
String mTime = mSimpleDateFormat.format(currentTime);
HttpServletRequest req = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest();
HttpServletRequest req = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes())
.getRequest();
String ip = req.getHeader("X-FORWARDED-FOR");
if (ip == null){ ip = req.getRemoteAddr();}
if (ip == null) {
ip = req.getRemoteAddr();
}
loginLog.setLoginIp(ip);
loginLog.setCreatDt(mTime);
@ -518,17 +508,17 @@ public class MainController {
SiteManagerVO siteManagerVO = new SiteManagerVO();
siteManagerVO.setSiteId(siteId);
setSiteinfo(siteManagerVO, model, request);
//return "web/site/theme_"+siteManagerVO.getTheme()+"/"+siteManagerVO.getIsMobile()+"/com/webCommonFooter";
// return
// "web/site/theme_"+siteManagerVO.getTheme()+"/"+siteManagerVO.getIsMobile()+"/com/webCommonFooter";
return "web/site/" + siteId + "/" + siteManagerVO.getIsMobile() + "/com/webCommonFooter";
}
}
/* 모바일접속 유무 */
private boolean isMobile(HttpServletRequest request) {
String userAgent = request.getHeader("user-agent");
boolean mobile1 = userAgent.matches(".*(iPhone|iPod|Android|Windows CE|BlackBerry|Symbian|Windows Phone|webOS|Opera Mini|Opera Mobi|POLARIS|IEMobile|lgtelecom|nokia|SonyEricsson).*");
boolean mobile1 = userAgent.matches(
".*(iPhone|iPod|Android|Windows CE|BlackBerry|Symbian|Windows Phone|webOS|Opera Mini|Opera Mobi|POLARIS|IEMobile|lgtelecom|nokia|SonyEricsson).*");
boolean mobile2 = userAgent.matches(".*(LG|SAMSUNG|Samsung).*");
if (mobile1 || mobile2) {
return true;
@ -538,12 +528,13 @@ public class MainController {
/* 최초 사이트 체크와 동시에 session 설정, 점검중 페이지 적용 */
@RequestMapping(value = "/com/firstSiteCheck.do")
public String firstSiteCheck(@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO, HttpServletRequest request, @RequestParam Map<String, Object> commandMap,
ModelMap model)
throws Exception {
public String firstSiteCheck(@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
HttpServletRequest request, @RequestParam Map<String, Object> commandMap, ModelMap model) throws Exception {
// 로그인 권한정보 불러오기
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()
? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser()
: null;
String userAuthority = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getAuthority());
// 권한별 메뉴표시
@ -553,8 +544,7 @@ public class MainController {
menuManageVO.setAuthorCode(userAuthority);
} else if (userAuthority.equals("ROLE_ADMIN") || userAuthority.equals("ROLE_ADR_ADMIN")) {
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
}
else {
} else {
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
}
// 대국민, 조정위원일 경우 원뎁스 메뉴에 대시보드 링크를 걸기위해 권한 넘겨줌
@ -629,282 +619,30 @@ public class MainController {
if (totCnt == 0) {
return "web/com/alert_site";
/*redirectAttributes.addFlashAttribute("message", "등록된 사이트가 없습니다.");
RedirectUrlMaker redirectUrlMaker = new RedirectUrlMaker("/blank");
return redirectUrlMaker.getRedirectUrl();*/
/*
* redirectAttributes.addFlashAttribute("message", "등록된 사이트가 없습니다.");
* RedirectUrlMaker redirectUrlMaker = new RedirectUrlMaker("/blank"); return
* redirectUrlMaker.getRedirectUrl();
*/
} else {
return "blank";
}
// return "web/main/mainPage";
}
/**
* 사용자 페이지의 테마 네비 상단 매뉴
*/
@RequestMapping(value="/web/com/themeNaviWrap.do")
public String themeWebCommonNaviWrap(
@RequestParam Map<String, Object> commandMap, HttpServletRequest request, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
ModelMap model)
throws Exception {
//자신의 위치 정보
List<MenuManageJTreeVO> menuCurrentResultList = new ArrayList<MenuManageJTreeVO>(); //자신의 위치
List<MenuManageJTreeVO> menuLeftResultList = new ArrayList<MenuManageJTreeVO>(); //자신이 속한 위치
List<MenuManageJTreeVO> menuUnderResultList = new ArrayList<MenuManageJTreeVO>(); //한단계 하위 위치
MenuManageVO resultVO = new MenuManageVO();
MenuManageVO tempMenuManageVO = new MenuManageVO();
tempMenuManageVO.setSearchCondition("Y");
setViewMenu(request , commandMap , tempMenuManageVO , resultVO , menuManageVO );
menuCurrentResultList = menuCreateManageService.selectMenuListCurrentJtreeWeb(menuManageVO) ;
//최상단 매뉴 가져오기 : 상단 그림 변화
//관리자에서 파일가져오기
PopupzoneVO popupzoneVo = new PopupzoneVO();
popupzoneVo.setFirstIndex(0);
popupzoneVo.setRecordCountPerPage(10); //10개까지
popupzoneVo.setSeCd("06"); //뉴스레터
popupzoneVo.setUseYn("Y");
List<?> popupzoneList_06 = egovPopupManageService.selectPopupzoneList(popupzoneVo);
String topMenuId = "01" ;
String subMenuFile = "" ;
int subMenuFileSize = popupzoneList_06.size() ;
if(menuCurrentResultList.size()!=0){
topMenuId = ((MenuManageJTreeVO)menuCurrentResultList.get(0)).getMenuNo() ;
if("9100000".equals(topMenuId)){
topMenuId = "01" ;
if(subMenuFileSize > 0 ){
subMenuFile = (String)((EgovMap)popupzoneList_06.get(0)).get("popupzoneImageFile") ;
}
}else if("9200000".equals(topMenuId)){
topMenuId = "02" ;
if(subMenuFileSize > 1 ){
subMenuFile = (String)((EgovMap)popupzoneList_06.get(1)).get("popupzoneImageFile") ;
}
}else if("9300000".equals(topMenuId)){
topMenuId = "03" ;
if(subMenuFileSize > 2 ){
subMenuFile = (String)((EgovMap)popupzoneList_06.get(2)).get("popupzoneImageFile") ;
}
}else if("9400000".equals(topMenuId)){
topMenuId = "04" ;
if(subMenuFileSize > 3 ){
subMenuFile = (String)((EgovMap)popupzoneList_06.get(3)).get("popupzoneImageFile") ;
}
}else if("9500000".equals(topMenuId)){
topMenuId = "05" ;
if(subMenuFileSize > 4 ){
subMenuFile = (String)((EgovMap)popupzoneList_06.get(4)).get("popupzoneImageFile") ;
}
}else{
topMenuId = "01" ;
if(subMenuFileSize > 0 ){
subMenuFile = (String)((EgovMap)popupzoneList_06.get(0)).get("popupzoneImageFile") ;
}
}
}
model.addAttribute("topMenuId", topMenuId);
model.addAttribute("subMenuFile", subMenuFile);
menuLeftResultList = menuCreateManageService.selectMenuLeftListJtreeWeb(menuManageVO) ;
menuUnderResultList = menuCreateManageService.selectMenuUnderListJtreeWeb(menuManageVO) ;
List<MenuManageJTreeVO> showOneDepthMenu = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> showTwoDepthMenu = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> showThreeDepthMenu = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> showFourDepthMenu = new ArrayList<MenuManageJTreeVO>();
for(MenuManageJTreeVO tempLeftMenu : menuLeftResultList){
if(tempLeftMenu.getDepths().equals("2")){
for(MenuManageJTreeVO tempCurrentTwoMenu : menuCurrentResultList){
if(tempLeftMenu.getUpperMenuId().equals(tempCurrentTwoMenu.getMenuNo())){
showTwoDepthMenu.add(tempLeftMenu);
}
}
}
if(tempLeftMenu.getDepths().equals("3")){
for(MenuManageJTreeVO tempCurrentThreeMenu : menuCurrentResultList){
if(tempLeftMenu.getUpperMenuId().equals(tempCurrentThreeMenu.getMenuNo())){
showThreeDepthMenu.add(tempLeftMenu);
}
}
}
if(tempLeftMenu.getDepths().equals("4")){
for(MenuManageJTreeVO tempCurrentThreeMenu : menuCurrentResultList){
if(tempLeftMenu.getUpperMenuId().equals(tempCurrentThreeMenu.getMenuNo())){
showFourDepthMenu.add(tempLeftMenu);
}
}
}
}
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
menuManageVO.setMenuUserType(menuManageVO.getMenuUserType());
List<MenuManageJTreeVO> menuResultList = menuCreateManageService.selectMenuListJtreeWeb(menuManageVO) ;
for(MenuManageJTreeVO tempResultVo : menuResultList){ //1 뎁스
if(tempResultVo.getDepths().equals("1")){
showOneDepthMenu.add(tempResultVo);
}
}
//매뉴구조도 텍스트
String menuText = "";
menuText += "<li class='home'>&nbsp;</li>" ;
if(request.getRequestURI().contains("/eng")){ //영문사이트
int i = 0;
for(MenuManageJTreeVO menuTextVo : menuCurrentResultList){
if(i !=0){
menuText += "<li>&nbsp;&gt; "+menuTextVo.getMenuNm()+"</li>" ;
}
i= i+1;
}
}else{
for(MenuManageJTreeVO menuTextVo : menuCurrentResultList){
menuText += "<li>&nbsp;&gt; "+menuTextVo.getMenuNm()+"</li>" ;
}
}
model.addAttribute("menuText", menuText);
model.addAttribute("showOneDepthMenu", showOneDepthMenu);
model.addAttribute("showTwoDepthMenu", showTwoDepthMenu);
model.addAttribute("showThreeDepthMenu", showThreeDepthMenu);
model.addAttribute("showFourDepthMenu", showFourDepthMenu);
model.addAttribute("menuUnderResultList", menuUnderResultList); //하단매뉴
model.addAttribute("menuCurrentResultList", menuCurrentResultList);
model.addAttribute("menuLeftResultList", menuLeftResultList);
model.addAttribute("menuResultList", menuResultList);
if(request.getRequestURI().contains("/eng/")){
return "web/com/engWebCommonNaviWrap";
}
return "web/com/webCommonNaviWrap";
}
/**
* 사용자 페이지의 네비 상단 매뉴
*/
@RequestMapping(value="/web/com/naviWrapAjax.do")
public String webCommonNaviWrapAjax(
@RequestParam Map<String, Object> commandMap, HttpServletRequest request, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
ModelMap model)
throws Exception {
//자신의 위치 정보
List<MenuManageJTreeVO> menuCurrentResultList = new ArrayList<MenuManageJTreeVO>(); //자신의 위치
List<MenuManageJTreeVO> menuLeftResultList = new ArrayList<MenuManageJTreeVO>(); //자신이 속한 위치
MenuManageVO resultVO = new MenuManageVO();
if(null!=(String)commandMap.get("proFn")){ //컨텐츠 타입이면 매뉴아이디 조회
MenuManageVO tempMenuManageVO = new MenuManageVO();
tempMenuManageVO.setSearchCondition("proFn");
tempMenuManageVO.setSearchKeyword((String)commandMap.get("proFn"));
resultVO = menuManageService.selectMenuManage(tempMenuManageVO);
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
menuManageVO.setMenuUserType(menuManageVO.getMenuUserType());
menuManageVO.setMenuNo(resultVO.getMenuNo()+"");
menuManageVO.setMenuNo("9151200"); //테스트
menuCurrentResultList = menuCreateManageService.selectMenuListCurrentJtreeWeb(menuManageVO) ;
menuLeftResultList = menuCreateManageService.selectMenuLeftListJtreeWeb(menuManageVO) ;
}
List<MenuManageJTreeVO> showOneDepthMenu = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> showTwoDepthMenu = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> showThreeDepthMenu = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> showFourDepthMenu = new ArrayList<MenuManageJTreeVO>();
for(MenuManageJTreeVO tempLeftMenu : menuLeftResultList){
if(tempLeftMenu.getDepths().equals("2")){
for(MenuManageJTreeVO tempCurrentTwoMenu : menuCurrentResultList){
if(tempLeftMenu.getUpperMenuId().equals(tempCurrentTwoMenu.getMenuNo())){
showTwoDepthMenu.add(tempLeftMenu);
}
}
}
if(tempLeftMenu.getDepths().equals("3")){
for(MenuManageJTreeVO tempCurrentThreeMenu : menuCurrentResultList){
if(tempLeftMenu.getUpperMenuId().equals(tempCurrentThreeMenu.getMenuNo())){
showThreeDepthMenu.add(tempLeftMenu);
}
}
}
if(tempLeftMenu.getDepths().equals("4")){
for(MenuManageJTreeVO tempCurrentThreeMenu : menuCurrentResultList){
if(tempLeftMenu.getUpperMenuId().equals(tempCurrentThreeMenu.getMenuNo())){
showFourDepthMenu.add(tempLeftMenu);
}
}
}
}
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
menuManageVO.setMenuUserType(menuManageVO.getMenuUserType());
List<MenuManageJTreeVO> menuResultList = menuCreateManageService.selectMenuListJtreeWeb(menuManageVO) ;
for(MenuManageJTreeVO tempResultVo : menuResultList){ //1 뎁스
if(tempResultVo.getDepths().equals("1")){
showOneDepthMenu.add(tempResultVo);
}
}
//매뉴구조도 텍스트
String menuText = "";
menuText += "<li class='home'>&nbsp;</li>" ;
for(MenuManageJTreeVO menuTextVo : menuCurrentResultList){
menuText += "<li>&nbsp;&gt; "+menuTextVo.getMenuNm()+"</li>" ;
}
model.addAttribute("menuText", menuText);
model.addAttribute("showOneDepthMenu", showOneDepthMenu);
model.addAttribute("showTwoDepthMenu", showTwoDepthMenu);
model.addAttribute("showThreeDepthMenu", showThreeDepthMenu);
model.addAttribute("showFourDepthMenu", showFourDepthMenu);
model.addAttribute("menuCurrentResultList", menuCurrentResultList);
model.addAttribute("menuLeftResultList", menuLeftResultList);
model.addAttribute("menuResultList", menuResultList);
return "web/com/webCommonNaviWrap";
}
private void setViewMenu(HttpServletRequest request,
Map<String, Object> commandMap ,
MenuManageVO tempMenuManageVO,
MenuManageVO resultVO,
MenuManageJTreeVO menuManageVO) throws Exception {
private void setViewMenu(HttpServletRequest request, Map<String, Object> commandMap, MenuManageVO tempMenuManageVO,
MenuManageVO resultVO, MenuManageJTreeVO menuManageVO) throws Exception {
if (request.getRequestURI().contains("/web/survey_back")) {// 설문조사( 사이트 마다 이름이 달라) survey > survey_back 으로 사용한
tempMenuManageVO.setSearchKeyword("surveyList");
} else if (request.getRequestURI().contains("schdlr")) { // 스케줄러 경우(,, url이 달라
tempMenuManageVO.setSearchKeyword("schdlrManage");
}else if(null!=(String)commandMap.get("proFn") || null!=(String)commandMap.get("bbsId") || null!=(String)commandMap.get("nttId")){ //컨텐츠 타입, 게시판 타입의 경우
} else if (null != (String) commandMap.get("proFn") || null != (String) commandMap.get("bbsId")
|| null != (String) commandMap.get("nttId")) { // 컨텐츠 타입, 게시판 타입의 경우
if (null != (String) commandMap.get("proFn")) { // 컨텐츠
tempMenuManageVO.setSearchKeyword((String) commandMap.get("proFn"));
} else if (null != (String) commandMap.get("bbsId")) { // 게시판
ComDefaultVO searchVO = new ComDefaultVO();
String url = progrmManageService.getBbsUrlByNttId((String) commandMap.get("bbsId"));
//String url = "/web/cop/bbsWeb/selectBoardList.do?bbsId="+ (String)commandMap.get("bbsId");
if(null == url) { //사전정보공표
if(null != (String)commandMap.get("pubDetail")) {
url = "/web/cop/bbs/PubOperList.do";
}
if(null != (String)commandMap.get("tabBbsId")) {
url = "/web/cop/bbs/PubOperList.do";
}
}
searchVO.setSearchKeyword(url);
ProgrmManageVO progrmManageVO = progrmManageService.selectProgrmUrl(searchVO);
@ -932,49 +670,6 @@ public class MainController {
String menuUrl = request.getRequestURI();
if (menuUrl.equals("/web/cop/org/selectOrgDetail.do")) {
menuUrl = "/web/cop/org/selectOrgList.do";
}else if(menuUrl.equals("/web/kccadr/accdnt/ars/adjstReqStatusDetail.do")
// || menuUrl.equals("/web/kccadr/adjstExpDetail/adjstReqStatusDetail.do")
|| menuUrl.equals("/web/kccadr/accdnt/acd/adjstChangeDateList.do")
|| menuUrl.equals("/web/kccadr/accdnt/acd/adjstChangeDateCreate.do")
|| menuUrl.equals("/web/kccadr/accdnt/arc/corReqList.do")
|| menuUrl.equals("/web/kccadr/accdnt/arc/corReqCreate.do")
|| menuUrl.equals("/web/kccadr/accdnt/adr/adjstDeputyReqList.do")
|| menuUrl.equals("/web/kccadr/accdnt/adr/adjstDeputyReqDetail.do")
|| menuUrl.equals("/web/kccadr/accdnt/adr/adjstDeputyReqCreate.do")
|| menuUrl.equals("/web/kccadr/accdnt/ans/ansSubmit.do")
|| menuUrl.equals("/web/kccadr/ojct/ojctList.do")
|| menuUrl.equals("/web/kccadr/ojct/ojctRegist.do")
|| menuUrl.equals("/web/kccadr/ojct/ojctDetail.do")
|| menuUrl.equals("/web/kccadr/ojct/ojctModify.do")
|| menuUrl.equals("/web/kccadr/accdnt/awd/adjstWithDrawCreate.do")){
menuUrl = "/web/kccadr/accdnt/ai/adjstIncidentList.do";
}else if(menuUrl.equals("/web/kccadr/adjst/adjstReqRegistStep1.do")
|| menuUrl.equals("/web/kccadr/adjst/adjstReqRegistStep2.do")
|| menuUrl.equals("/web/kccadr/adjst/adjstReqRegistStep3.do")
|| menuUrl.equals("/web/kccadr/adjst/adjstReqRegistStep4.do")){
menuUrl = "/web/kccadr/adjst/adjstReqRegistInformation.do";
}else if(menuUrl.equals("/web/kccadr/adjcclt/adjstConciliatorDetail.do")
|| menuUrl.equals("/web/kccadr/adjcclt/adjstProtocolDetail.do")
|| menuUrl.equals("/web/kccadr/adjcclt/adjstNoEstablishmentDetail.do")
|| menuUrl.equals("/web/kccadr/adjcclt/adjstCancleDetail.do")
|| menuUrl.equals("/web/kccadr/adjcclt/adjstDrtDetail.do")
|| menuUrl.equals("/web/kccadr/adjcclt/adjstRecommendationDetail.do")
|| menuUrl.equals("/web/kccadr/adjcclt/adjstMediationDecisionDetail.do")
|| menuUrl.equals("/web/kccadr/adjcclt/adjstOjctList.do")){
menuUrl = "/web/kccadr/adjcclt/ai/adjstConciliatorList.do";
}else if(menuUrl.equals("/web/kccadr/accdnt/chg/selectSchChgInfo.do")){
menuUrl = "/web/kccadr/accdnt/chg/adjChg.do";
}else if(menuUrl.equals("/web/kccadr/accdnt/ai/adjstIncidentDashList.do")) { //나의사건관리 대시보드
menuUrl = "/web/kccadr/accdnt/ai/adjstIncidentList.do";
} else if (menuUrl.equals("/web/kccadr/adjstExpDetail/adjstReqStatusDetail.do") // 체험하기
|| menuUrl.equals("/web/kccadr/adjstExp/adjstIncidentList.do")
|| menuUrl.equals("/web/kccadr/adjstExpDetail/adjstIncidentDetail.do")
@ -986,21 +681,15 @@ public class MainController {
|| menuUrl.equals("/web/kccadr/adjstExp/docIssReqList.do")
|| menuUrl.equals("/web/kccadr/adjstExp/docIssReqRegist.do")
|| menuUrl.equals("/web/kccadr/adjstExp/adjstIncidentEndList.do")
||menuUrl.equals("/web/kccadr/adjstExpDetail/adjstIncidentEndDetail.do")
) { //체험하기
|| menuUrl.equals("/web/kccadr/adjstExpDetail/adjstIncidentEndDetail.do")) { // 체험하기
menuUrl = "/web/kccadr/adjstExp/adjstExpMainPage.do";
}
// 상세화면 URL로 메뉴화면 매핑이 안되어, 문자열 치환으로 매핑...
String strUrl = menuUrl/* .replace("Info", "List") */
.replace("Detail", "List")
/* .replace("Regist", "List") */
.replace("Article", "List")
.replace("Inqire", "List")
.replace("addFcltMgr", "fcltMgrList")
.replace("Article", "List").replace("Inqire", "List").replace("addFcltMgr", "fcltMgrList")
.replace("mainzoneModify", "mainzoneList");
menuUrl = strUrl;
@ -1038,16 +727,16 @@ public class MainController {
* 사용자 페이지의 네비 상단 매뉴
*/
@RequestMapping(value = "/web/com/naviWrap.do")
public String siteWebCommonNaviWrap(@RequestParam Map<String, Object> commandMap,
HttpServletRequest request, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
ModelMap model)
throws Exception {
public String siteWebCommonNaviWrap(@RequestParam Map<String, Object> commandMap, HttpServletRequest request,
@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO, ModelMap model) throws Exception {
// 전자조정 시작
// 아래 처리중 중간네비 메뉴 조회를 위해 with recurseive 중첩절을 쓰는 쿼리가 있음으로, 큐브리드 쿼리화 필요
// 로그인 권한 정보 불러오기
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()? (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser():null;
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()
? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser()
: null;
String auth = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getAuthority());
if (auth.equals("")) {
@ -1071,7 +760,6 @@ public class MainController {
// 최상단 매뉴 가져오기 : 상단 그림 변화
menuLeftResultList = menuCreateManageService.selectMenuLeftListJtreeWeb(menuManageVO);
List<MenuManageJTreeVO> showOneDepthMenu = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> showTwoDepthMenu = new ArrayList<MenuManageJTreeVO>();
@ -1101,21 +789,16 @@ public class MainController {
//
// model.addAttribute("menuText", menuText);
model.addAttribute("showOneDepthMenu", showOneDepthMenu);
model.addAttribute("showTwoDepthMenu", showTwoDepthMenu);
// model.addAttribute("showThreeDepthMenu", showThreeDepthMenu);
// model.addAttribute("showFourDepthMenu", showFourDepthMenu);
// model.addAttribute("menuUnderResultList", menuUnderResultList); //하단매뉴
model.addAttribute("menuCurrentResultList", menuCurrentResultList);
model.addAttribute("menuLeftResultList", menuLeftResultList);
// model.addAttribute("menuResultList", menuResultList);
// 아래 처리중 중간네비 메뉴 조회를 위해 with recurseive 중첩절을 쓰는 쿼리가 있음으로, 큐브리드 쿼리화 필요
@ -1129,21 +812,63 @@ public class MainController {
* 사용자 좌측 매뉴
*/
@RequestMapping(value = "/web/com/leftMenu.do")
public String webCommonLeftMenu(
HttpServletRequest request
, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
ModelMap model)
throws Exception {
public String webCommonLeftMenu(HttpServletRequest request,
@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO, ModelMap model,
@RequestParam Map<String, Object> commandMap) throws Exception {
// 로그인 권한정보 불러오기
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()
? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser()
: null;
String userAuthority = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getAuthority());
// 권한별 메뉴표시
if (!userAuthority.equals("ROLE_ADMIN") && userAuthority != "") {
menuManageVO.setAuthorCode(userAuthority);
} else if (userAuthority.equals("ROLE_ADMIN")) {
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
} else {
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
}
// 자신의 위치 정보
List<MenuManageJTreeVO> menuCurrentResultList = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> whereAmIList = new ArrayList<MenuManageJTreeVO>();
MenuManageVO resultVO = new MenuManageVO();
MenuManageVO tempMenuManageVO = new MenuManageVO();
tempMenuManageVO.setSearchCondition("Y");
setViewMenu(request, commandMap, tempMenuManageVO, resultVO, menuManageVO);
menuCurrentResultList = menuCreateManageService.selectMenuListCurrentJtreeWebCustom(menuManageVO);
MenuManageJTreeVO whereAmIVO = new MenuManageJTreeVO();
if (menuCurrentResultList != null && menuCurrentResultList.size() > 0) {
whereAmIVO = menuCurrentResultList.get(0);
whereAmIVO.setAuthorCode(menuManageVO.getAuthorCode());
whereAmIList = menuCreateManageService.selectMenuListJtreeWebCustom(whereAmIVO);
}
List<Map<String, Object>> depth2CntList = new ArrayList<Map<String, Object>>();
for(MenuManageJTreeVO tmpVO : whereAmIList.stream().filter(t -> "2".equals(t.getDepth())).collect(Collectors.toList())) {
Map<String, Object> depth2Cnt = new HashMap<String, Object>();
Integer tmpInt = 0;
tmpInt = (int) whereAmIList.stream().filter(t ->
t.getDepth().equals("3")
&& tmpVO.getMenuNo().equals(t.getUpperMenuId())
).count();
depth2Cnt.put("menuNo", tmpVO.getMenuNo());
depth2Cnt.put("cnt", tmpInt);
depth2CntList.add(depth2Cnt);
}
model.addAttribute("depth2CntList", depth2CntList);
model.addAttribute("whereAmIVO", whereAmIVO);
model.addAttribute("whereAmIList", whereAmIList);
List<MenuManageJTreeVO> menuResultList = menuCreateManageService.selectMenuListJtreeWeb(menuManageVO);
model.addAttribute("menuResultList", menuResultList);
// MenuManageVO resultVO = new MenuManageVO();
// MenuManageVO tempMenuManageVO = new MenuManageVO();
// tempMenuManageVO.setSearchCondition("Y");
// setViewMenu(request , commandMap , tempMenuManageVO , resultVO , menuManageVO );
// List<MenuManageJTreeVO> menuLeftResultList = menuCreateManageService.selectMenuLeftListJtreeWeb(menuManageVO) ;
// model.addAttribute("menuLeftResultList", menuLeftResultList);
// if(request.getRequestURI().contains("/eng/")){
// model.addAttribute("eng", "eng");
// }
return "web/com/webCommonLeftMenu";
}
@ -1163,34 +888,36 @@ public class MainController {
}
model.addAttribute("siteId", siteManagerVO.getSiteId());
model.addAttribute("siteNm", siteManagerVO.getSiteNm());
//model.addAttribute("site_path" , "/site/theme_"+siteManagerVO.getTheme()+"/"+siteManagerVO.getIsMobile());
// model.addAttribute("site_path" ,
// "/site/theme_"+siteManagerVO.getTheme()+"/"+siteManagerVO.getIsMobile());
model.addAttribute("site_path", "/site/" + siteManagerVO.getSiteId() + "/" + siteManagerVO.getIsMobile());
}
/* @RequestMapping(value="/{siteId}/web/siteMap.do")
public String siteMap(@PathVariable("siteId") String siteId, @RequestParam Map<String, Object> commandMap,
HttpServletRequest request, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
ModelMap model)
throws Exception {
model.addAttribute("siteId", siteId);
String siteFolder = "site/"+siteId ;
model.addAttribute("site_path", "/"+siteFolder);
return "web/"+siteFolder+"/member/sitemap";
}*/
/*
* @RequestMapping(value="/{siteId}/web/siteMap.do") public String
* siteMap(@PathVariable("siteId") String siteId, @RequestParam Map<String,
* Object> commandMap, HttpServletRequest
* request, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
* ModelMap model) throws Exception {
*
* model.addAttribute("siteId", siteId); String siteFolder = "site/"+siteId ;
*
* model.addAttribute("site_path", "/"+siteFolder); return
* "web/"+siteFolder+"/member/sitemap";
*
* }
*/
// 사이트맵 개발
@RequestMapping(value = "/{siteId}/web/siteMap.do")
public String siteMap(@PathVariable("siteId") String siteId, @RequestParam Map<String, Object> commandMap,
HttpServletRequest request, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
ModelMap model)
HttpServletRequest request, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO, ModelMap model)
throws Exception {
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
menuManageVO.setMenuUserType(menuManageVO.getMenuUserType());
//List<MenuManageJTreeVO> menuResultList = menuCreateManageService.selectMenuListJtree(menuManageVO) ;
// List<MenuManageJTreeVO> menuResultList =
// menuCreateManageService.selectMenuListJtree(menuManageVO) ;
menuManageVO.setSiteId(siteId);
List<MenuManageJTreeVO> menuResultList = menuCreateManageService.selectMenuListJtreeWeb(menuManageVO);
@ -1230,15 +957,13 @@ public class MainController {
return "web/" + siteFolder + "/member/sitemap";
}
/**
* 사용자 페이지의 네비 상단 매뉴
*/
@RequestMapping(value = "/{siteId}/web/com/naviWrapAjax.do")
public String ajaxSiteWebCommonNaviWrap(@PathVariable("siteId") String siteId , @RequestParam Map<String, Object> commandMap,
HttpServletRequest request, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
ModelMap model)
throws Exception {
public String ajaxSiteWebCommonNaviWrap(@PathVariable("siteId") String siteId,
@RequestParam Map<String, Object> commandMap, HttpServletRequest request,
@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO, ModelMap model) throws Exception {
// 자신의 위치 정보
List<MenuManageJTreeVO> menuCurrentResultList = new ArrayList<MenuManageJTreeVO>(); // 자신의 위치
@ -1255,7 +980,6 @@ public class MainController {
menuLeftResultList = menuCreateManageService.selectMenuLeftListJtreeWeb(menuManageVO);
menuUnderResultList = menuCreateManageService.selectMenuUnderListJtreeWeb(menuManageVO);
List<MenuManageJTreeVO> showOneDepthMenu = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> showTwoDepthMenu = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> showThreeDepthMenu = new ArrayList<MenuManageJTreeVO>();
@ -1314,14 +1038,11 @@ public class MainController {
return "web/" + siteFolder + "/com/webCommonNaviWrapAjax";
}
/* 메일전송 첨부파일등록/수정 view */
@RequestMapping(value = "/kcc/mail/itnSendMailForm.do")
public String intSendMailForm(@RequestParam Map<?, ?> commandMap, @ModelAttribute("fmsFileVO") FmsFileVO fmsFileVO,
HttpServletRequest request, HttpServletResponse response,
RedirectAttributes redirectAttributes , Model model , HttpSession session)
throws Exception {
HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes,
Model model, HttpSession session) throws Exception {
List<FmsFileVO> fmsFileList = new ArrayList<FmsFileVO>();
model.addAttribute("fmsFileList", fmsFileList); // fms파일정보
@ -1332,7 +1053,8 @@ public class MainController {
/* 메일전송 process */
@RequestMapping(value = "/kcc/mail/itnSendMailPro.do")
public ModelAndView insertFmsFileOrg(@RequestParam Map<?, ?> commandMap, @ModelAttribute("fmsFileVO") FmsFileVO fmsFileVO, final MultipartHttpServletRequest multiRequest,
public ModelAndView insertFmsFileOrg(@RequestParam Map<?, ?> commandMap,
@ModelAttribute("fmsFileVO") FmsFileVO fmsFileVO, final MultipartHttpServletRequest multiRequest,
HttpServletRequest request, HttpServletResponse response, Model model) throws Exception {
ModelAndView modelAndView = new ModelAndView();
@ -1357,7 +1079,8 @@ public class MainController {
try {
Message message = new MimeMessage(session); // MimeMessage 생성
message.setFrom(new InternetAddress(Globals_email_fromEmail)); //발신자 셋팅 , 보내는 사람의 이메일주소를 한번 입력합니다. 이때는 이메일 주소를 작성해주세요.
message.setFrom(new InternetAddress(Globals_email_fromEmail)); // 발신자 셋팅 , 보내는 사람의 이메일주소를 한번 입력합니다. 이때는
// 이메일 주소를 작성해주세요.
message.setRecipient(Message.RecipientType.TO, new InternetAddress(revRecipient)); // 수신자셋팅
message.addRecipient(Message.RecipientType.BCC, new InternetAddress(Globals_email_toEmail_BCC)); // 숨은참조자
message.setSubject((String) commandMap.get("subject")); // 제목셋팅
@ -1368,7 +1091,6 @@ public class MainController {
Multipart multipart = (Multipart) message.getContent();
// html 형식으로 본문을 작성해서 바운더리에 넣습니다.
StringBuffer contentBf = new StringBuffer();
contentBf.append("<작성자 메일주소 >: " + (String) commandMap.get("emailAddr"));
contentBf.append("\r\n");
@ -1407,8 +1129,7 @@ public class MainController {
}
@RequestMapping(value = "/web/kccadr/kccadrCom/kccadrConstantsJsp.do")
public String kccadrConstantsJsp()
throws Exception {
public String kccadrConstantsJsp() throws Exception {
return "web/kccadr/kccadrCom/kccadrConstantsJsp";
}
@ -1417,8 +1138,7 @@ public class MainController {
* 사용자 매뉴
*/
@RequestMapping(value = "/web/com/quickWrap.do")
public String webCommonQuickMenu(ModelMap model)
throws Exception {
public String webCommonQuickMenu(ModelMap model) throws Exception {
return "web/com/webCommonQuickMenu";
}
@ -1427,20 +1147,46 @@ public class MainController {
* 사용자 좌측 매뉴
*/
@RequestMapping(value = "/web/com/subVisual.do")
public String webCommonSubVisual(
HttpServletRequest request
, @ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO,
ModelMap model)
throws Exception {
public String webCommonSubVisual(HttpServletRequest request,
@ModelAttribute("menuManageVO") MenuManageJTreeVO menuManageVO, ModelMap model,
@RequestParam Map<String, Object> commandMap) throws Exception {
// 로그인 권한정보 불러오기
LoginVO loginVO = EgovUserDetailsHelper.isAuthenticated()
? (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser()
: null;
String userAuthority = loginVO == null ? "" : EgovStringUtil.isNullToString(loginVO.getAuthority());
if (!userAuthority.equals("ROLE_ADMIN") && userAuthority != "") {
menuManageVO.setAuthorCode(userAuthority);
} else if (userAuthority.equals("ROLE_ADMIN")) {
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
} else {
menuManageVO.setAuthorCode("ROLE_ANONYMOUS");
}
// 자신의 위치 정보
List<MenuManageJTreeVO> menuCurrentResultList = new ArrayList<MenuManageJTreeVO>();
List<MenuManageJTreeVO> whereAmIList = new ArrayList<MenuManageJTreeVO>();
MenuManageVO resultVO = new MenuManageVO();
MenuManageVO tempMenuManageVO = new MenuManageVO();
tempMenuManageVO.setSearchCondition("Y");
setViewMenu(request, commandMap, tempMenuManageVO, resultVO, menuManageVO);
menuCurrentResultList = menuCreateManageService.selectMenuListCurrentJtreeWebCustom(menuManageVO);
MenuManageJTreeVO whereAmIVO = new MenuManageJTreeVO();
if (menuCurrentResultList != null && menuCurrentResultList.size() > 0) {
whereAmIVO = menuCurrentResultList.get(0);
whereAmIVO.setAuthorCode(menuManageVO.getAuthorCode());
whereAmIList = menuCreateManageService.selectMenuListJtreeWebCustom(whereAmIVO);
}
model.addAttribute("whereAmIVO", whereAmIVO);
return "web/com/webCommonSubVisual";
}
// 다수의 파일 첨부 파일을 로컬로 부터 읽어와서 BodyPart 클래스로 만든다. (바운더리 변환)
private void addMulitAttachment(Multipart multipart, String realFileLoc, String filename) throws MessagingException {
private void addMulitAttachment(Multipart multipart, String realFileLoc, String filename)
throws MessagingException {
try {
DataSource source = new FileDataSource(realFileLoc);
BodyPart messageBodyPart = new MimeBodyPart();
@ -1457,8 +1203,8 @@ public class MainController {
BodyPart mbp = new MimeBodyPart();
mbp.setText(html); // setText를 이용할 경우 일반 텍스트 내용으로 설정된다.
// html 형식으로 설정(줄개행 > br로)
//mbp.setContent(html.replaceAll("(\r\n|\n)", "<br />"), "text/html; charset=utf-8"); //줄바꿈이 필요해서
// mbp.setContent(html.replaceAll("(\r\n|\n)", "<br />"), "text/html;
// charset=utf-8"); //줄바꿈이 필요해서
return mbp;
}
}

View File

@ -257,7 +257,7 @@
SELECT
A .MENU_NM AS MENUNM,
A .PROGRM_FILE_NM AS PROGRMFILENM,
A .MENU_NO AS MENUNO,
A .MENU_NO AS menuNo,
A .UPPER_MENU_NO AS UPPERMENUID,
A .MENU_ORDR AS MENUORDR,
A .MENU_DC AS MENUDC,
@ -291,7 +291,7 @@
SELECT
BB.MENU_NM AS MENUNM,
BB.PROGRM_FILE_NM AS PROGRMFILENM,
BB.MENU_NO AS MENUNO,
BB.MENU_NO AS menuNo,
BB.UPPER_MENU_NO AS UPPERMENUID,
BB.MENU_ORDR AS MENUORDR,
BB.MENU_DC AS MENUDC,
@ -351,7 +351,7 @@
SELECT
BBB.MENU_NM AS MENUNM,
BBB.PROGRM_FILE_NM AS PROGRMFILENM,
BBB.MENU_NO AS MENUNO,
BBB.MENU_NO AS menuNo,
BBB.UPPER_MENU_NO AS UPPERMENUID,
BBB.MENU_ORDR AS MENUORDR,
BBB.MENU_DC AS MENUDC,
@ -435,7 +435,7 @@
ORDER BY
AAAA.DEPTHS,
AAAA.MENUORDR,
AAAA.MENUNO * 1
AAAA.menuNo * 1
]]>
</select>
@ -991,4 +991,255 @@
FROM lettnmenucreatdtls a
WHERE a.MENU_NO = #menuNo#
</select>
<select id="menuManageDAO.selectMenuListCurrentJtreeWebCustom" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO" >
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuListCurrentJtreeWebCustom */
<![CDATA[
SELECT
CTE.MENU_NO menuNo,
CTE.MENU_NM MENUNM,
CTE.URL URL,
RANK
FROM
( (
SELECT
A.MENU_NO,
A.UPPER_MENU_NO,
C.URL,
A.MENU_NM,
ROW_NUMBER() OVER (ORDER BY A.MENU_NO) AS RANK
FROM
LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE
B.AUTHOR_CODE = #authorCode#
AND A.MENU_NO = #menuNo#
UNION
ALL
SELECT
A.MENU_NO,
A.UPPER_MENU_NO,
C.URL,
A.MENU_NM,
ROW_NUMBER() OVER (ORDER BY A.MENU_NO) AS RANK
FROM
LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
INNER JOIN (
SELECT
A.MENU_NO,
A.UPPER_MENU_NO,
C.URL,
A.MENU_NM,
ROW_NUMBER() OVER (ORDER BY A.MENU_NO) AS RANK
FROM
LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE
B.AUTHOR_CODE = #authorCode#
AND A.MENU_NO = #menuNo#
) CTE
ON CTE.UPPER_MENU_NO = A.MENU_NO
WHERE
B.AUTHOR_CODE = #authorCode#
UNION
ALL
SELECT
A.MENU_NO,
A.UPPER_MENU_NO,
C.URL,
A.MENU_NM,
ROW_NUMBER() OVER (ORDER BY A.MENU_NO) AS RANK
FROM
LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
INNER JOIN (
SELECT
A.MENU_NO,
A.UPPER_MENU_NO,
C.URL,
A.MENU_NM,
ROW_NUMBER() OVER (ORDER BY A.MENU_NO) AS RANK
FROM
LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
INNER JOIN (
SELECT
A.MENU_NO,
A.UPPER_MENU_NO,
C.URL,
A.MENU_NM,
ROW_NUMBER() OVER (ORDER BY A.MENU_NO) AS RANK
FROM
LETTNMENUINFO A
INNER JOIN LETTNMENUCREATDTLS B
ON A.MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A.PROGRM_FILE_NM = C.PROGRM_FILE_NM
WHERE
B.AUTHOR_CODE = #authorCode#
AND A.MENU_NO = #menuNo#
) CTEE
ON CTEE.UPPER_MENU_NO = A.MENU_NO
WHERE
B.AUTHOR_CODE = #authorCode#
) CTE
ON CTE.UPPER_MENU_NO = A.MENU_NO
WHERE
B.AUTHOR_CODE = #authorCode#
) ) CTE
ORDER BY
RANK DESC, MENU_NO ASC
]]>
</select>
<select id="menuManageDAO.selectMenuListJtreeWebCustom" parameterClass="menuManageJTreeVO" resultClass="menuManageJTreeVO" cacheModel="cache-webMainMenu">
/* 임시.*NOT_SQL_LOG.* menuManageDAO.selectMenuListJtreeWebCustom */
<![CDATA[
SELECT
*
FROM
(
SELECT
A .MENU_NM AS MENUNM,
A .PROGRM_FILE_NM AS PROGRMFILENM,
A .MENU_NO AS MENUNO,
A .UPPER_MENU_NO AS UPPERMENUID,
A .MENU_ORDR AS MENUORDR,
A .MENU_DC AS MENUDC,
A .RELATE_IMAGE_PATH AS RELATEIMAGEPATH,
A .RELATE_IMAGE_NM AS RELATEIMAGENM,
A .MENU_USER_TYPE AS MENUUSERTYPE,
A .USE_YN AS USEYN,
C .URL,
A .MENU_TYPE AS MENUTYPE,
1 AS DEPTH
FROM
LETTNMENUINFO A
INNER JOIN (
SELECT
BBBBB.MENU_NO,
BBBBB.USE_YN
FROM
LETTNMENUCREATDTLS BBBBB
WHERE
BBBBB.AUTHOR_CODE = #authorCode#
) B
ON A .MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A .PROGRM_FILE_NM = C .PROGRM_FILE_NM
WHERE
A .UPPER_MENU_NO = 1
AND A .MENU_NO != 1
AND B.USE_YN = 'Y'
AND A.MENU_NO = #menuNo#
UNION
ALL
SELECT
A .MENU_NM AS MENUNM,
A .PROGRM_FILE_NM AS PROGRMFILENM,
A .MENU_NO AS MENUNO,
A .UPPER_MENU_NO AS UPPERMENUID,
A .MENU_ORDR AS MENUORDR,
A .MENU_DC AS MENUDC,
A .RELATE_IMAGE_PATH AS RELATEIMAGEPATH,
A .RELATE_IMAGE_NM AS RELATEIMAGENM,
A .MENU_USER_TYPE AS MENUUSERTYPE,
A .USE_YN AS USEYN,
C .URL,
A .MENU_TYPE AS MENUTYPE,
2 AS DEPTH
FROM
LETTNMENUINFO A
INNER JOIN (
SELECT
BBBBB.MENU_NO,
BBBBB.USE_YN
FROM
LETTNMENUCREATDTLS BBBBB
WHERE
BBBBB.AUTHOR_CODE = #authorCode#
) B
ON A .MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A .PROGRM_FILE_NM = C .PROGRM_FILE_NM
WHERE
TO_CHAR(A .UPPER_MENU_NO) = #menuNo#
AND B.USE_YN = 'Y'
UNION
ALL
SELECT
A .MENU_NM AS MENUNM,
A .PROGRM_FILE_NM AS PROGRMFILENM,
A .MENU_NO AS MENUNO,
A .UPPER_MENU_NO AS UPPERMENUID,
A .MENU_ORDR AS MENUORDR,
A .MENU_DC AS MENUDC,
A .RELATE_IMAGE_PATH AS RELATEIMAGEPATH,
A .RELATE_IMAGE_NM AS RELATEIMAGENM,
A .MENU_USER_TYPE AS MENUUSERTYPE,
A .USE_YN AS USEYN,
C .URL,
A .MENU_TYPE AS MENUTYPE,
3 AS DEPTH
FROM
LETTNMENUINFO A
INNER JOIN (
SELECT
BBBBB.MENU_NO,
BBBBB.USE_YN
FROM
LETTNMENUCREATDTLS BBBBB
WHERE
BBBBB.AUTHOR_CODE = #authorCode#
) B
ON A .MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A .PROGRM_FILE_NM = C .PROGRM_FILE_NM
INNER JOIN (
SELECT
A .MENU_NO
FROM
LETTNMENUINFO A
INNER JOIN (
SELECT
BBBBB.MENU_NO,
BBBBB.USE_YN
FROM
LETTNMENUCREATDTLS BBBBB
WHERE
BBBBB.AUTHOR_CODE = #authorCode#
) B
ON A .MENU_NO = B.MENU_NO
INNER JOIN LETTNPROGRMLIST C
ON A .PROGRM_FILE_NM = C .PROGRM_FILE_NM
WHERE
TO_CHAR(A .UPPER_MENU_NO) = #menuNo#
AND B.USE_YN = 'Y'
) CC
ON A.UPPER_MENU_NO = CC.MENU_NO
) AAAA
ORDER BY
AAAA.DEPTH,
AAAA.MENUORDR,
AAAA.MENUNO * 1
]]>
</select>
</sqlMap>

View File

@ -58,7 +58,7 @@
</button>
</div>
<div class="util_btn_area">
<button type="button" class="btn btn_text btn_40 blue_fill><i class="icon sertification"></i>본인인증</button>
<button type="button" class="btn btn_text btn_40 blue_fill"><i class="icon sertification"></i>본인인증</button>
<button type="button" class="btn btn_text btn_40 blue_fill hide"><i class="icon sertification_out"></i>인증해제</button>
<button type="button" class="btn btn_text btn_40 gray_border only_icon" title="페이지 확대" onClick="zoomIn();"><i class="icon plus"></i></button>
<button type="button" class="btn btn_text btn_40 gray_border only_icon" title="페이지 축소" onClick="zoomOut();"><i class="icon minus"></i></button>

View File

@ -4,40 +4,74 @@
<!-- lnb -->
<div class="lnb">
<p class="title">분쟁조정 안내</p>
<p class="title">
<c:forEach var="list" items="${whereAmIList}" varStatus="status">
<c:if test="${list.depth eq '1'}">
<c:out value="${list.menuNm}"/>
</c:if>
</c:forEach>
</p>
<ul class="lnb_menu">
<c:set var="activeYn" value="N"/>
<c:forEach var="listDep2" items="${whereAmIList}" varStatus="status1">
<c:if test="${listDep2.depth eq '2'}">
<c:choose>
<c:when test="${activeYn eq 'N'}">
<li class="active">
<a href="#none" class="lnb_menu_title">분쟁조정 안내 <i class="icon lnb_slide_toggle"></i></a>
</c:when>
<c:otherwise>
<li>
</c:otherwise>
</c:choose>
<c:forEach var="findDep2" items="${whereAmIList}" varStatus="status2">
<c:if test="${listDep2.depth eq '2'}">
<c:choose>
<c:when test="${activeYn eq 'N'}">
<c:choose>
<c:when test="${menuManageVO.menuNo eq findDep2.menuNo}">
<c:set var="activeYn" value="Y"/>
</c:when>
</c:choose>
</c:when>
</c:choose>
</c:if>
</c:forEach>
<a href="#none" class="lnb_menu_title">
<c:out value="${listDep2.menuNm}"/>
<c:forEach var="depth2CntList" items="${depth2CntList}" varStatus="status4">
<c:if test="${
depth2CntList.menuNo eq listDep2.menuNo
&& depth2CntList.cnt gt 0
}">
<i class="icon lnb_slide_toggle"></i>
</c:if>
</c:forEach>
</a>
<c:forEach var="listDep3" items="${whereAmIList}" varStatus="status3">
<c:if test="${status3.count eq 1}">
<ul class="lnb_sub_menu">
<li><a href="#">분쟁조정 제도</a></li>
<li><a href="#">분쟁조정 절차</a></li>
<li><a href="#" class="active">분쟁조정 관련 서식</a></li>
<li><a href="#">법령자료실</a></li>
<li><a href="#">자료실</a></li>
</ul>
</li>
<li>
<a href="#none" class="lnb_menu_title">자주하는 질문 <i class="icon lnb_slide_toggle"></i></a>
<ul class="lnb_sub_menu">
<li><a href="#">조정신청 관련 질문</a></li>
<li><a href="#">절차진행 관련 질문</a></li>
<li><a href="#" class="active">(성립/불성립)절차종료 관련 질문</a></li>
<li><a href="#">(기타)절차종결 관련 질문</a></li>
</ul>
</li>
<li>
<a href="#none" class="lnb_menu_title">오시는 길</a>
</li>
<li>
<a href="#none" class="lnb_menu_title">공지사항</a>
</li>
<li>
<a href="#none" class="lnb_menu_title">뉴스레터 <i class="icon lnb_slide_toggle"></i></a>
<ul class="lnb_sub_menu">
<li><a href="#">뉴스레터 자료</a></li>
<li><a href="#">뉴스레터 서비스</a></li>
</c:if>
<c:if test="${listDep3.upperMenuId eq listDep2.menuNo}">
<c:choose>
<c:when test="${listDep3.menuNo eq menuManageVO.menuNo}">
<li><a href="#" class="active" onclick="location.href='${listDep3.url}'"><c:out value="${listDep3.menuNm}"/></a></li>
</c:when>
<c:otherwise>
<li><a href="#" onclick="location.href='${listDep3.url}'"><c:out value="${listDep3.menuNm}"/></a></li>
</c:otherwise>
</c:choose>
</c:if>
<c:if test="${status3.count eq whereAmIList.size()}">
</ul>
</c:if>
</c:forEach>
</li>
</c:if>
</c:forEach>
</ul>
</div>
<!-- //lnb -->

View File

@ -3,5 +3,5 @@
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<div class="sub_visual">
<h2>분쟁조정 안내</h2>
<h2><c:out value="${whereAmIVO.menuNm}"/></h2>
</div>

View File

@ -34,11 +34,9 @@ content="default-src * self blob: data: gap:; style-src * self 'unsafe-inline' b
<link rel="stylesheet" href="/kofair_case_seed/css/reset.css">
<link rel="stylesheet" href="/kofair_case_seed/css/font.css">
<link rel="stylesheet" href="/kofair_case_seed/usr/style/common.css">
<link rel="stylesheet" href="/kofair_case_seed/usr/style/layout.css">
<link rel="stylesheet" href="/kofair_case_seed/usr/style/case.css">
<c:if test="${!fn:contains(URL , 'main/mainPage.do')}">
<link rel="stylesheet" href="/kofair_case_seed/usr/style/style.css">
</c:if>
<link rel="stylesheet" href="/kofair_case_seed/usr/style/case.css">
<link rel="stylesheet" href="/kofair_case_seed/usr/style/layout.css">
<script src="/kofair_case_seed/script/lib/jquery-3.5.0.js"></script>
<script src="/kofair_case_seed/usr/scripts/common.js"></script>

View File

@ -132,87 +132,3 @@
<ui:pagination paginationInfo = "${paginationInfo}" type="imageWeb" jsFunction="linkPage" />
</ul>
</div>
<%-- <!DOCTYPE html>
<html lang="ko">
<head>
<title>xxx 리스트</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body>
<!-- 아래 목록의 양식은 퍼블리싱 페이지와 다름 검색, 줄수 표시, 항목정렬버튼, 번호항목, 첨부파일, 페이징 부분만 참고 -->
<div class="contWrap">
<div class="pageCont">
<div class="listSerch">
제목 :
<!-- 검색 -->
<input id="searchKeyword" name="searchKeyword" class="recentSearch" type="text" value="<c:out value='${xxxVO.searchKeyword}'/>" size="25" title="검색" maxlength="100" />
<input type="button" class="btnType1" value="검색" onclick="linkPage(1); return false;">
</div>
<div class="listTop">
<p class="tType5">게시판 수 :<span class="tType4 c_456ded fwBold"><c:out value="${paginationInfo.totalRecordCount}"/></span>건</p>
<div class="rightWrap">
<input type="button" class="printBtn">
<!-- 줄수 표시 -->
<select name="pageUnit" id="pageUnit" class="select" title="검색조건선택" onchange="linkPage(1);">
<option value='10' <c:if test="${xxxVO.pageUnit == '10' or xxxVO.pageUnit == ''}">selected</c:if>>10줄</option>
<option value='20' <c:if test="${xxxVO.pageUnit == '20'}">selected</c:if>>20줄</option>
<option value='30' <c:if test="${xxxVO.pageUnit == '30'}">selected</c:if>>30줄</option>
</select>
</div>
</div>
<div class="tableWrap">
<table class="tbType1">
<colgroup>
<col style="width: 20%">
<col style="width: 20%">
<col style="width: 20%">
<col style="width: 20%">
</colgroup>
<thead>
<tr>
<th>컬럼1</th>
<th>컬럼2</th>
<th>컬럼3</th>
<th>컬럼4</th>
</tr>
</thead>
<tbody>
<c:if test="${empty xxxList}">
<tr><td colspan="8"><spring:message code="common.nodata.msg" /></td></tr>
</c:if>
</tbody>
</table>
</div>
<div class="btnWrap">
<input type="button" class="btnType2" value="삭제" onclick="fn_xxx_delete(); return false;">
<input type="button" class="btnType1" value="등록" onclick="fn_xxx_regist(); return false;">
</div>
</div>
</div>
</body>
</html>
--%>