package itn.let.sym.grd.web; import java.util.List; import javax.annotation.Resource; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import egovframework.rte.fdl.security.userdetails.util.EgovUserDetailsHelper; import itn.com.cmm.LoginVO; import itn.let.sym.grd.service.MberGrdService; import itn.let.sym.grd.service.MberGrdVO; @Controller public class MberGrdController { @Resource(name = "mberGrdService") MberGrdService mberGrdService; /** * 등급제 관리 화면 * * @param mberGrdVO * @param model * @return * @throws Exception */ @RequestMapping("/sym/grd/selectMberGrdSetting.do") public String selectJoinSetting(MberGrdVO mberGrdVO, ModelMap model) throws Exception { List mberGrdSettingList = mberGrdService.selectMberGrdSettingList(mberGrdVO); mberGrdVO = mberGrdService.selectMberSettingDetail(mberGrdVO); model.addAttribute("grdNoti", mberGrdVO.getGrdNoti()); model.addAttribute("grdDate", mberGrdVO.getGrdDate()); model.addAttribute("mberGrdSettingList", mberGrdSettingList); return "/sym/grd/mberGrdSetting"; } // 등급제 일괄 저장 @RequestMapping(value = "/sym/grd/mberGrdSettingMassUpdateAjax.do") public ModelAndView mberGrdSettingMassUpdateAjax( @ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception { ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("jsonView"); boolean isSuccess = true; String msg = ""; int updateMberCnt = 0; // 로그인VO에서 사용자 정보 가져오기 LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser(); String frstRegisterId = loginVO == null ? "" : loginVO.getId(); mberGrdVO.setEditId(frstRegisterId); // 최초등록자ID try{ // Step1. 등급제 시행여부 변경 int updateCnt1 = mberGrdService.updateMberSetting(mberGrdVO); if (updateCnt1 == 0) { isSuccess = false; msg = "등급제 시행여부 변경에 실패했습니다."; } else { // Step2. 등급제 단가 업데이트 int updateCnt2 = mberGrdService.updateGrdSettingList(mberGrdVO); if (updateCnt2 == 0) { isSuccess = false; msg = "등급제 단가 변경에 실패했습니다."; } else { // Step3. 회원 등급 일괄변경 updateMberCnt = mberGrdService.updateMberGrdAll(mberGrdVO); } } } catch(Exception e) { isSuccess = false; msg = e.getMessage(); } modelAndView.addObject("isSuccess", isSuccess); modelAndView.addObject("msg", msg); modelAndView.addObject("updateMberCnt", updateMberCnt); return modelAndView; } // 회원별 등급 초기화 @RequestMapping(value = "/sym/grd/mberGrdEndMassUpdateAjax.do") public ModelAndView mberGrdEndMassUpdateAjax( @ModelAttribute("mberGrdVO") MberGrdVO mberGrdVO) throws Exception { ModelAndView modelAndView = new ModelAndView(); modelAndView.setViewName("jsonView"); boolean isSuccess = true; String msg = ""; int updateMberCnt = 0; // 로그인VO에서 사용자 정보 가져오기 LoginVO loginVO = (LoginVO)EgovUserDetailsHelper.getAuthenticatedUser(); String frstRegisterId = loginVO == null ? "" : loginVO.getId(); mberGrdVO.setEditId(frstRegisterId); // 최초등록자ID try{ // 회원별 등급 초기화 updateMberCnt = mberGrdService.updateMberGrdEndAll(mberGrdVO); } catch(Exception e) { isSuccess = false; msg = e.getMessage(); } modelAndView.addObject("isSuccess", isSuccess); modelAndView.addObject("msg", msg); modelAndView.addObject("updateMberCnt", updateMberCnt); return modelAndView; } }