package itn.let.sym.cal.web;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import java.util.Map;
import egovframework.rte.fdl.property.EgovPropertyService;
import egovframework.rte.ptl.mvc.tags.ui.pagination.PaginationInfo;
import itn.com.cmm.ComDefaultCodeVO;
import itn.com.cmm.LoginVO;
import itn.com.cmm.service.EgovCmmUseService;
import itn.let.sym.cal.service.EgovCalRestdeManageService;
import itn.let.sym.cal.service.Restde;
import itn.let.sym.cal.service.RestdeVO;
import javax.annotation.Resource;
import org.apache.commons.collections.map.ListOrderedMap;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springmodules.validation.commons.DefaultBeanValidator;
/**
*
* 공휴일에 관한 요청을 받아 서비스 클래스로 요청을 전달하고 서비스클래스에서 처리한 결과를 웹 화면으로 전달을 위한 Controller를 정의한다
* @author 공통서비스 개발팀 이중호
* @since 2009.04.01
* @version 1.0
* @see
*
*
* << 개정이력(Modification Information) >>
*
* 수정일 수정자 수정내용
* ------- -------- ---------------------------
* 2009.04.01 이중호 최초 생성
* 2011.08.31 JJY 경량환경 템플릿 커스터마이징버전 생성
*
*
*/
@Controller
public class EgovCalRestdeManageController {
/** RestdeManageService */
@Resource(name = "RestdeManageService")
private EgovCalRestdeManageService restdeManageService;
/** EgovPropertyService */
@Resource(name = "propertiesService")
protected EgovPropertyService propertiesService;
/** EgovCmmUseService */
@Resource(name = "EgovCmmUseService")
private EgovCmmUseService cmmUseService;
/** beanValidator */
@Autowired
private DefaultBeanValidator beanValidator;
/**
* 달력 메인창을 호출한다.
* @param model
* @return "/cmm/sym/cal/EgovNormalCalPopup"
* @throws Exception
*/
@RequestMapping(value = "/sym/cmm/callCalPopup.do")
public String callCalendar(ModelMap model) throws Exception {
return "/cmm/sym/cal/EgovCalPopup";
}
/**
* 달력을 호출한다.
* @param model
* @return "/cmm/sym/cal/EgovNormalCalPopup"
* @throws Exception
*/
@RequestMapping(value = "/sym/cmm/callCal.do")
public String callCal(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
cal.set(iYear, iMonth - 1, 1);
int firstWeek = cal.get(Calendar.DAY_OF_WEEK);
int lastDay = cal.getActualMaximum(Calendar.DATE);
int week = cal.get(Calendar.DAY_OF_WEEK);
String year = Integer.toString(iYear);
String month = Integer.toString(iMonth);
//String day = Integer.toString(cal.get(Calendar.DAY_OF_MONTH));
restde.setStartWeekMonth(firstWeek);
restde.setLastDayMonth(lastDay);
restde.setYear(year);
restde.setMonth(month);
List CalInfoList = new ArrayList();
String tmpDay = "";
/**
* 계산... START
*/
for (int i = 0; i < 42; i++) {
ListOrderedMap map = new ListOrderedMap();
int cc = i + 1;
int dd = cc - firstWeek + 1;
if (dd > 0 && dd <= lastDay) {
tmpDay = Integer.toString(dd);
} else {
tmpDay = "";
}
map.put("year", year);
map.put("month", month);
map.put("day", tmpDay);
map.put("cellNum", cc);
map.put("weeks", (cc - 1) / 7 + 1);
map.put("week", (week - 1) % 7 + 1);
map.put("restAt", ((week - 1) % 7 + 1 == 1) ? "Y" : "N");
if (dd > 0 && dd <= lastDay) {
week++;
}
CalInfoList.add(map);
}
/**
* 계산... END
*/
model.addAttribute("resultList", CalInfoList);
return "/cmm/sym/cal/EgovCalendar";
}
/**
* 일반달력 팝업 메인창을 호출한다.
* @param model
* @return "/cmm/sym/cal/EgovNormalCalPopup"
* @throws Exception
*/
@RequestMapping(value = "/sym/cmm/EgovNormalCalPopup.do")
public String callNormalCalPopup(ModelMap model) throws Exception {
return "/sym/cal/EgovNormalCalPopup";
}
/**
* 일반달력 팝업 정보를 조회한다.
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovNormalCalendar"
* @throws Exception
*/
@RequestMapping(value = "/sym/cmm/EgovselectNormalCalendar.do")
public String selectNormalRestdePopup(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
/* DB를 사용할 경우 처리
restde.setYear(Integer.toString(iYear));
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear,iMonth-1,1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
List CalInfoList = restdeManageService.selectNormalRestdePopup(restde);
*/
cal.set(iYear, iMonth - 1, 1);
int firstWeek = cal.get(Calendar.DAY_OF_WEEK);
int lastDay = cal.getActualMaximum(Calendar.DATE);
int week = cal.get(Calendar.DAY_OF_WEEK);
String year = Integer.toString(iYear);
String month = Integer.toString(iMonth);
//String day = Integer.toString(cal.get(Calendar.DAY_OF_MONTH));
restde.setStartWeekMonth(firstWeek);
restde.setLastDayMonth(lastDay);
restde.setYear(year);
restde.setMonth(month);
List CalInfoList = new ArrayList();
String tmpDay = "";
/**
* 계산... START
*/
for (int i = 0; i < 42; i++) {
ListOrderedMap map = new ListOrderedMap();
int cc = i + 1;
int dd = cc - firstWeek + 1;
if (dd > 0 && dd <= lastDay) {
tmpDay = Integer.toString(dd);
} else {
tmpDay = "";
}
map.put("year", year);
map.put("month", month);
map.put("day", tmpDay);
map.put("cellNum", cc);
map.put("weeks", (cc - 1) / 7 + 1);
map.put("week", (week - 1) % 7 + 1);
map.put("restAt", ((week - 1) % 7 + 1 == 1) ? "Y" : "N");
if (dd > 0 && dd <= lastDay) {
week++;
}
CalInfoList.add(map);
}
/**
* 계산... END
*/
model.addAttribute("resultList", CalInfoList);
return "/sym/cal/EgovNormalCalendar";
}
/**
* 행정달력 팝업 메인창을 호출한다.
* @param model
* @return "/cmm/sym/cal/EgovAdministCalPopup"
* @throws Exception
*/
@RequestMapping(value = "/sym/cmm/EgovAdministCalPopup.do")
public String callAdministCalPopup(ModelMap model) throws Exception {
return "/cmm/sym/cal/EgovAdministCalPopup";
}
/**
* 행정달력 팝업 정보를 조회한다.
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovAdministCalendar"
* @throws Exception
*/
@RequestMapping(value = "/sym/cmm/EgovselectAdministCalendar.do")
public String selectAdministRestdePopup(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
restde.setYear(Integer.toString(iYear));
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList", restdeManageService.selectAdministRestdePopup(restde));
return "/cmm/sym/cal/EgovAdministCalendar";
}
/**
* 일반달력 일간
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovNormalDayCalendar"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovNormalDayCalendar.do")
public String selectNormalDayCalendar(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
if (restde.getDay() == null || restde.getDay().equals("")) {
restde.setDay(Integer.toString(cal.get(Calendar.DATE)));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
int iDay = Integer.parseInt(restde.getDay());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
restde.setYear(Integer.toString(iYear));
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, iDay);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
cal.set(iYear, iMonth - 1, Integer.parseInt(restde.getDay()));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DAY_OF_MONTH));
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
restde.setDay(Integer.toString(cal.get(Calendar.DAY_OF_MONTH)));
restde.setWeek(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
//List CalInfoList = restdeManageService.selectNormalDayCal(restde);
//List NormalWeekRestdeList = restdeManageService.selectNormalDayRestde(restde);
model.addAttribute("resultList", restdeManageService.selectNormalDayCal(restde));
model.addAttribute("RestdeList", restdeManageService.selectNormalDayRestde(restde));
return "/cmm/sym/cal/EgovNormalDayCalendar";
}
/**
* 일반달력 주간
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovNormalWeekCalendar"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovNormalWeekCalendar.do")
public String selectNormalWeekCalendar(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
if (restde.getDay() == null || restde.getDay().equals("")) {
restde.setDay(Integer.toString(cal.get(Calendar.DATE)));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
restde.setYear(Integer.toString(iYear));
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
cal.set(iYear, iMonth - 1, Integer.parseInt(restde.getDay()));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DAY_OF_MONTH));
int iStartWeek = restde.getStartWeekMonth();
int iLastDate = restde.getLastDayMonth();
int iDayWeek = cal.get(Calendar.DAY_OF_WEEK);
int iMaxWeeks = (int) Math.floor(iLastDate / 7);
iMaxWeeks = iMaxWeeks + (int) Math.ceil(((iLastDate - iMaxWeeks * 7) + iStartWeek - 1) / 7.0);
restde.setMaxWeeks(iMaxWeeks);
if (iMaxWeeks < restde.getWeeks()) {
restde.setWeeks(iMaxWeeks);
}
Restde vo = new Restde();
Calendar weekCal = Calendar.getInstance();
weekCal.setTime(cal.getTime());
if (restde.getWeeks() != 0) {
weekCal.set(Calendar.DATE, (restde.getWeeks() - 1) * 7 + 1);
if (restde.getWeeks() > 1) {
iDayWeek = weekCal.get(Calendar.DAY_OF_WEEK);
weekCal.add(Calendar.DATE, (-1) * (iDayWeek - 1));
}
restde.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH) + 1));
}
iDayWeek = weekCal.get(Calendar.DAY_OF_WEEK);
// 일요일
weekCal.add(Calendar.DATE, (-1) * (iDayWeek - 1));
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_1", restdeManageService.selectNormalDayCal(vo));
model.addAttribute("RestdeList_1", restdeManageService.selectNormalDayRestde(vo));
// 월요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_2", restdeManageService.selectNormalDayCal(vo));
model.addAttribute("RestdeList_2", restdeManageService.selectNormalDayRestde(vo));
// 화요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_3", restdeManageService.selectNormalDayCal(vo));
model.addAttribute("RestdeList_3", restdeManageService.selectNormalDayRestde(vo));
// 수요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
//List CalInfoList_4 = restdeManageService.selectNormalDayCal(vo);
//List NormalWeekRestdeList_4 = restdeManageService.selectNormalDayRestde(vo);
model.addAttribute("resultList_4", restdeManageService.selectNormalDayCal(vo));
model.addAttribute("RestdeList_4", restdeManageService.selectNormalDayRestde(vo));
// 목요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_5", restdeManageService.selectNormalDayCal(vo));
model.addAttribute("RestdeList_5", restdeManageService.selectNormalDayRestde(vo));
// 금요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_6", restdeManageService.selectNormalDayCal(vo));
model.addAttribute("RestdeList_6", restdeManageService.selectNormalDayRestde(vo));
// 토요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_7", restdeManageService.selectNormalDayCal(vo));
model.addAttribute("RestdeList_7", restdeManageService.selectNormalDayRestde(vo));
model.addAttribute("resultList", restdeManageService.selectNormalDayCal(restde));
return "/cmm/sym/cal/EgovNormalWeekCalendar";
}
/**
* 일반달력 월간
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovNormalMonthCalendar"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovNormalMonthCalendar.do")
public String selectNormalMonthCalendar(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
restde.setYear(Integer.toString(iYear));
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList", restdeManageService.selectNormalMonthRestde(restde));
return "/cmm/sym/cal/EgovNormalMonthCalendar";
}
/**
* 일반달력 연간
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovNormalYearCalendar"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovNormalYearCalendar.do")
public String selectNormalYearCalendar(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
restde.setYear(Integer.toString(iYear));
/* 월별확인 */
/* 1월 */
iMonth = 1;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_1", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_1", restdeManageService.selectNormalMonthRestde(restde));
/* 2월 */
iMonth = 2;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_2", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_2", restdeManageService.selectNormalMonthRestde(restde));
/* 3월 */
iMonth = 3;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_3", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_3", restdeManageService.selectNormalMonthRestde(restde));
/* 4월 */
iMonth = 4;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_4", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_4", restdeManageService.selectNormalMonthRestde(restde));
/* 5월 */
iMonth = 5;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_5", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_5", restdeManageService.selectNormalMonthRestde(restde));
/* 6월 */
iMonth = 6;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_6", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_6", restdeManageService.selectNormalMonthRestde(restde));
/* 7월 */
iMonth = 7;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_7", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_7", restdeManageService.selectNormalMonthRestde(restde));
/* 8월 */
iMonth = 8;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_8", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_8", restdeManageService.selectNormalMonthRestde(restde));
/* 9월 */
iMonth = 9;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_9", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_9", restdeManageService.selectNormalMonthRestde(restde));
/* 10월 */
iMonth = 10;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_10", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_10", restdeManageService.selectNormalMonthRestde(restde));
/* 11월 */
iMonth = 11;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_11", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_11", restdeManageService.selectNormalMonthRestde(restde));
/* 12월 */
iMonth = 12;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_12", restdeManageService.selectNormalRestdePopup(restde));
model.addAttribute("RestdeList_12", restdeManageService.selectNormalMonthRestde(restde));
return "/cmm/sym/cal/EgovNormalYearCalendar";
}
/**
* 행정달력 일간
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovAdministDayCalendar"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovAdministDayCalendar.do")
public String selectAdministDayCalendar(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
if (restde.getDay() == null || restde.getDay().equals("")) {
restde.setDay(Integer.toString(cal.get(Calendar.DATE)));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
int iDay = Integer.parseInt(restde.getDay());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
restde.setYear(Integer.toString(iYear));
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, iDay);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
cal.set(iYear, iMonth - 1, Integer.parseInt(restde.getDay()));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DAY_OF_MONTH));
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
restde.setDay(Integer.toString(cal.get(Calendar.DAY_OF_MONTH)));
restde.setWeek(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList", restdeManageService.selectAdministDayCal(restde));
model.addAttribute("RestdeList", restdeManageService.selectAdministDayRestde(restde));
return "/cmm/sym/cal/EgovAdministDayCalendar";
}
/**
* 행정달력 주간
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovAdministWeekCalendar"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovAdministWeekCalendar.do")
public String selectAdministWeekCalendar(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
if (restde.getDay() == null || restde.getDay().equals("")) {
restde.setDay(Integer.toString(cal.get(Calendar.DATE)));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
restde.setYear(Integer.toString(iYear));
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
cal.set(iYear, iMonth - 1, Integer.parseInt(restde.getDay()));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DAY_OF_MONTH));
int iStartWeek = restde.getStartWeekMonth();
int iLastDate = restde.getLastDayMonth();
int iDayWeek = cal.get(Calendar.DAY_OF_WEEK);
int iMaxWeeks = (int) Math.floor(iLastDate / 7);
iMaxWeeks = iMaxWeeks + (int) Math.ceil(((iLastDate - iMaxWeeks * 7) + iStartWeek - 1) / 7.0);
restde.setMaxWeeks(iMaxWeeks);
if (iMaxWeeks < restde.getWeeks()) {
restde.setWeeks(iMaxWeeks);
}
Restde vo = new Restde();
Calendar weekCal = Calendar.getInstance();
weekCal.setTime(cal.getTime());
if (restde.getWeeks() != 0) {
weekCal.set(Calendar.DATE, (restde.getWeeks() - 1) * 7 + 1);
if (restde.getWeeks() > 1) {
iDayWeek = weekCal.get(Calendar.DAY_OF_WEEK);
weekCal.add(Calendar.DATE, (-1) * (iDayWeek - 1));
}
restde.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH) + 1));
}
//List CalInfoList = restdeManageService.selectAdministDayCal(restde);
model.addAttribute("resultList", restdeManageService.selectAdministDayCal(restde));
iDayWeek = weekCal.get(Calendar.DAY_OF_WEEK);
// 일요일
weekCal.add(Calendar.DATE, (-1) * (iDayWeek - 1));
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
//List CalInfoList_1 = restdeManageService.selectAdministDayCal(vo);
//List AdministWeekRestdeList_1 = restdeManageService.selectAdministDayRestde(vo);
model.addAttribute("resultList_1", restdeManageService.selectAdministDayCal(vo));
model.addAttribute("RestdeList_1", restdeManageService.selectAdministDayRestde(vo));
// 월요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_2", restdeManageService.selectAdministDayCal(vo));
model.addAttribute("RestdeList_2", restdeManageService.selectAdministDayRestde(vo));
// 화요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_3", restdeManageService.selectAdministDayCal(vo));
model.addAttribute("RestdeList_3", restdeManageService.selectAdministDayRestde(vo));
// 수요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_4", restdeManageService.selectAdministDayCal(vo));
model.addAttribute("RestdeList_4", restdeManageService.selectAdministDayRestde(vo));
// 목요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_5", restdeManageService.selectAdministDayCal(vo));
model.addAttribute("RestdeList_5", restdeManageService.selectAdministDayRestde(vo));
// 금요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_6", restdeManageService.selectAdministDayCal(vo));
model.addAttribute("RestdeList_6", restdeManageService.selectAdministDayRestde(vo));
// 토요일
weekCal.add(Calendar.DATE, 1);
vo.setYear(Integer.toString(weekCal.get(Calendar.YEAR)));
vo.setMonth(Integer.toString(weekCal.get(Calendar.MONTH) + 1));
vo.setDay(Integer.toString(weekCal.get(Calendar.DAY_OF_MONTH)));
vo.setWeek(weekCal.get(Calendar.DAY_OF_WEEK));
model.addAttribute("resultList_7", restdeManageService.selectAdministDayCal(vo));
model.addAttribute("RestdeList_7", restdeManageService.selectAdministDayRestde(vo));
return "/cmm/sym/cal/EgovAdministWeekCalendar";
}
/**
* 행정달력 월간
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovAdministMonthCalendar"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovAdministMonthCalendar.do")
public String selectAdministMonthCalendar(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
restde.setYear(Integer.toString(iYear));
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList", restdeManageService.selectAdministMonthRestde(restde));
return "/cmm/sym/cal/EgovAdministMonthCalendar";
}
/**
* 행정달력 연간
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovAdministYearCalendar"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovAdministYearCalendar.do")
public String selectAdministYearCalendar(Restde restde, ModelMap model) throws Exception {
Calendar cal = Calendar.getInstance();
if (restde.getYear() == null || restde.getYear().equals("")) {
restde.setYear(Integer.toString(cal.get(Calendar.YEAR)));
}
if (restde.getMonth() == null || restde.getMonth().equals("")) {
restde.setMonth(Integer.toString(cal.get(Calendar.MONTH) + 1));
}
int iYear = Integer.parseInt(restde.getYear());
int iMonth = Integer.parseInt(restde.getMonth());
if (iMonth < 1) {
iYear--;
iMonth = 12;
}
if (iMonth > 12) {
iYear++;
iMonth = 1;
}
if (iYear < 1) {
iYear = 1;
iMonth = 1;
}
if (iYear > 9999) {
iYear = 9999;
iMonth = 12;
}
restde.setYear(Integer.toString(iYear));
/* 월별확인 */
/* 1월 */
iMonth = 1;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_1", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_1", restdeManageService.selectAdministMonthRestde(restde));
/* 2월 */
iMonth = 2;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_2", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_2", restdeManageService.selectAdministMonthRestde(restde));
/* 3월 */
iMonth = 3;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_3", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_3", restdeManageService.selectAdministMonthRestde(restde));
/* 4월 */
iMonth = 4;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_4", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_4", restdeManageService.selectAdministMonthRestde(restde));
/* 5월 */
iMonth = 5;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_5", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_5", restdeManageService.selectAdministMonthRestde(restde));
/* 6월 */
iMonth = 6;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_6", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_6", restdeManageService.selectAdministMonthRestde(restde));
/* 7월 */
iMonth = 7;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_7", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_7", restdeManageService.selectAdministMonthRestde(restde));
/* 8월 */
iMonth = 8;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_8", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_8", restdeManageService.selectAdministMonthRestde(restde));
/* 9월 */
iMonth = 9;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_9", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_9", restdeManageService.selectAdministMonthRestde(restde));
/* 10월 */
iMonth = 10;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_10", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_10", restdeManageService.selectAdministMonthRestde(restde));
/* 11월 */
iMonth = 11;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_11", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_11", restdeManageService.selectAdministMonthRestde(restde));
/* 12월 */
iMonth = 12;
restde.setMonth(Integer.toString(iMonth));
cal.set(iYear, iMonth - 1, 1);
restde.setStartWeekMonth(cal.get(Calendar.DAY_OF_WEEK));
restde.setLastDayMonth(cal.getActualMaximum(Calendar.DATE));
model.addAttribute("resultList_12", restdeManageService.selectAdministRestdePopup(restde));
model.addAttribute("RestdeList_12", restdeManageService.selectAdministMonthRestde(restde));
return "/cmm/sym/cal/EgovAdministYearCalendar";
}
/**
* 휴일을 삭제한다.
* @param loginVO
* @param restde
* @param model
* @return "forward:/sym/cal/EgovRestdeList.do"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovRestdeRemove.do")
public String deleteRestde(@ModelAttribute("loginVO") LoginVO loginVO, Restde restde, ModelMap model) throws Exception {
restdeManageService.deleteRestde(restde);
return "forward:/sym/cal/EgovRestdeList.do";
}
/**
* 휴일 세부내역을 조회한다.
* @param loginVO
* @param restde
* @param model
* @return "/cmm/sym/cal/EgovRestdeDetail"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovRestdeDetail.do")
public String selectRestdeDetail(@ModelAttribute("loginVO") LoginVO loginVO, Restde restde, ModelMap model) throws Exception {
Restde vo = restdeManageService.selectRestdeDetail(restde);
model.addAttribute("result", vo);
return "/cmm/sym/cal/EgovRestdeDetail";
}
/**
* 휴일 리스트를 조회한다.
* @param loginVO
* @param searchVO
* @param model
* @return "/cmm/sym/cal/EgovRestdeList"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovRestdeList.do")
public String selectRestdeList(@ModelAttribute("loginVO") LoginVO loginVO, @ModelAttribute("searchVO") RestdeVO searchVO, ModelMap model) throws Exception {
/** EgovPropertyService.sample */
searchVO.setPageUnit(propertiesService.getInt("pageUnit"));
searchVO.setPageSize(propertiesService.getInt("pageSize"));
/** pageing */
PaginationInfo paginationInfo = new PaginationInfo();
paginationInfo.setCurrentPageNo(searchVO.getPageIndex());
paginationInfo.setRecordCountPerPage(searchVO.getPageUnit());
paginationInfo.setPageSize(searchVO.getPageSize());
searchVO.setFirstIndex(paginationInfo.getFirstRecordIndex());
searchVO.setLastIndex(paginationInfo.getLastRecordIndex());
searchVO.setRecordCountPerPage(paginationInfo.getRecordCountPerPage());
model.addAttribute("resultList", restdeManageService.selectRestdeList(searchVO));
int totCnt = restdeManageService.selectRestdeListTotCnt(searchVO);
paginationInfo.setTotalRecordCount(totCnt);
model.addAttribute("paginationInfo", paginationInfo);
return "/cmm/sym/cal/EgovRestdeList";
}
/**
* 휴일을 수정한다.
* @param loginVO
* @param restde
* @param bindingResult
* @param commandMap
* @param model
* @return "/cmm/sym/cal/EgovRestdeModify"
* @throws Exception
*/
@RequestMapping(value = "/sym/cal/EgovRestdeModify.do")
public String updateRestde(@ModelAttribute("loginVO") LoginVO loginVO, @ModelAttribute("restde") Restde restde, BindingResult bindingResult,
@RequestParam Map commandMap, ModelMap model) throws Exception {
String sCmd = commandMap.get("cmd") == null ? "" : (String) commandMap.get("cmd");
if (sCmd.equals("")) {
Restde vo = restdeManageService.selectRestdeDetail(restde);
model.addAttribute("restde", vo);
ComDefaultCodeVO CodeVO = new ComDefaultCodeVO();
CodeVO.setCodeId("COM017");
model.addAttribute("restdeCode", cmmUseService.selectCmmCodeDetail(CodeVO));
return "/cmm/sym/cal/EgovRestdeModify";
} else if (sCmd.equals("Modify")) {
beanValidator.validate(restde, bindingResult);
if (bindingResult.hasErrors()) {
ComDefaultCodeVO CodeVO = new ComDefaultCodeVO();
CodeVO.setCodeId("COM017");
model.addAttribute("restdeCode", cmmUseService.selectCmmCodeDetail(CodeVO));
return "/cmm/sym/cal/EgovRestdeModify";
}
restde.setLastUpdusrId(loginVO.getUniqId());
restdeManageService.updateRestde(restde);
return "forward:/sym/cal/EgovRestdeList.do";
} else {
return "forward:/sym/cal/EgovRestdeList.do";
}
}
}