diff --git a/src/main/java/geoinfo/drilling/home/DrillingHomeController.java b/src/main/java/geoinfo/drilling/home/DrillingHomeController.java index fd81199b..6446a708 100644 --- a/src/main/java/geoinfo/drilling/home/DrillingHomeController.java +++ b/src/main/java/geoinfo/drilling/home/DrillingHomeController.java @@ -191,7 +191,7 @@ public class DrillingHomeController { int pwsearchIndex = url.indexOf("pwsearch"); if( joinsearchIndex == -1 && joinIndex == -1 && pwsearchIndex == -1) { - mv.addObject("msg", "로그인이 필요한 시버스입니다."); + mv.addObject("msg", "로그인이 필요한 서비스입니다."); } }else { diff --git a/src/main/java/geoinfo/main/login/LoginController.java b/src/main/java/geoinfo/main/login/LoginController.java index 9dea0e44..ab696506 100644 --- a/src/main/java/geoinfo/main/login/LoginController.java +++ b/src/main/java/geoinfo/main/login/LoginController.java @@ -715,6 +715,7 @@ public class LoginController { @RequestMapping(value = "/login.do", method = RequestMethod.POST) public ModelAndView login(HttpSession session, Map map, HttpServletRequest request, HttpServletResponse response, @RequestParam("location") String location, @RequestParam("login_param") String login_param, @RequestParam("id") String id, @RequestParam("cls") String cls, @RequestParam("pass") String pass) throws Exception { + strUtil sUtil = new strUtil(); ModelAndView mv = new ModelAndView("home/login"); String msg = ""; String url = ""; @@ -722,6 +723,8 @@ public class LoginController { String clientIp = ""; String liq_yn = ""; String goveCode = ""; + String admPwdChg = ""; // 관리자가 사용자의 비밀번호를 변경하면 사용자 최초 로그인시 비밀번호를 변경하여야함. + String di = ""; // 본인인증 식별 번호-값이 없으면 로그인 시 [휴대폰 인증]버튼이 있는 비밀번호 수정 화면으로 이동함 login_param = GeoinfoCommon.parseData(login_param); String userid = ""; @@ -926,6 +929,8 @@ public class LoginController { virtualNo = (String) selectWebMemberIn.get("virtualno"); userid = selectWebMemberIn.get("userid").toString(); userName = selectWebMemberIn.get("user_name").toString(); + admPwdChg = sUtil.checkNull((String)selectWebMemberIn.get("adm_pwd_chg")); //관리자가 사용자의 비밀번호를 변경하면 사용자 최초 로그인시 비밀번호를 변경하여야함. + di = sUtil.checkNull((String)selectWebMemberIn.get("dupinfo")); // 본인인증 식별 번호-값이 없으면 로그인 시 [휴대폰 인증]버튼이 있는 비밀번호 수정 화면으로 이동함 if( selectWebMemberIn.get("company_name") != null ) { companyName = selectWebMemberIn.get("company_name").toString(); } @@ -1001,6 +1006,8 @@ public class LoginController { selectWebMemberIn = loginService.selectWebMemberInLoginCount(map2); if (selectWebMemberIn != null) { + admPwdChg = sUtil.checkNull((String)selectWebMemberIn.get("adm_pwd_chg")); //관리자가 사용자의 비밀번호를 변경하면 사용자 최초 로그인시 비밀번호를 변경하여야함. + di = sUtil.checkNull((String)selectWebMemberIn.get("dupinfo")); // 본인인증 식별 번호-값이 없으면 로그인 시 [휴대폰 인증]버튼이 있는 비밀번호 수정 화면으로 이동함 loginCount = Integer.parseInt(selectWebMemberIn.get("login_count").toString()); map.put("loginCount", loginCount); } @@ -1158,6 +1165,14 @@ public class LoginController { msg = ""; mv = new ModelAndView("home/liq_chk"); } + if ("Y".equals(admPwdChg)) { + msg = ""; + url = "topMenuSelect.do?url=mypage_passch"; + } + if ("".equals(di)) { + msg = ""; + url = "topMenuSelect.do?url=mypage_passch"; + } } } @@ -1660,7 +1675,8 @@ public class LoginController { int affectedRows = 0; map.clear(); map.put("table", "WEB_MEMBER_IN"); - map.put("values", "PSWD_MONTH=SYSDATE, PASSWD='" + passwordch + "'"); + // ADM_PWD_CHG -> 관리자가 비밀번호 변경 후 사용자 최초 로그인 시 비밀번호 변경 필요(관리자가 변경시 Y, 사용자 최초 로그인하여 변경시 NULL) + map.put("values", "PSWD_MONTH=SYSDATE, PASSWD='" + passwordch + "', ADM_PWD_CHG=NULL"); if( DI != null && !DI.isEmpty() ) { //DI값을 업데이트 한다. String values = MyUtil.getStringFromObject( map.get("values") ); diff --git a/src/main/java/geoinfo/main/main/MainController.java b/src/main/java/geoinfo/main/main/MainController.java index e04f2f28..7cec2454 100644 --- a/src/main/java/geoinfo/main/main/MainController.java +++ b/src/main/java/geoinfo/main/main/MainController.java @@ -211,7 +211,7 @@ public class MainController int pwsearchIndex = url.indexOf("pwsearch"); if( joinsearchIndex == -1 && joinIndex == -1 && pwsearchIndex == -1) { - mv.addObject("msg", "로그인이 필요한 시버스입니다."); + mv.addObject("msg", "로그인이 필요한 서비스입니다."); } } else { diff --git a/src/main/java/geoinfo/regi/manageList/ManageListController.java b/src/main/java/geoinfo/regi/manageList/ManageListController.java index d00294df..dbd9a528 100644 --- a/src/main/java/geoinfo/regi/manageList/ManageListController.java +++ b/src/main/java/geoinfo/regi/manageList/ManageListController.java @@ -132,7 +132,7 @@ public class ManageListController { params.put("sortField", sortField); params.put("sortDir", sortDir); - wUtil.topTabId = "manageCoordinate"; // 검수일때 tab 활성화 시켜주기 위해 + wUtil.topTabId = "manageWait"; // 검수일때 tab 활성화 시켜주기 위해 String loginUserId = String.valueOf(request.getSession().getAttribute("USERID")); // requestString srchReportType = sUtil.checkNull(parseData.parseData((String)params.get("searchReportType"))); String searchProjectName = sUtil.checkNull(parseData.parseData((String)params.get("searchProjectName"))); diff --git a/src/main/resources/egovframework/sqlmap/mapper/main/Login_SQL.xml b/src/main/resources/egovframework/sqlmap/mapper/main/Login_SQL.xml index 5ead924e..8b85225e 100644 --- a/src/main/resources/egovframework/sqlmap/mapper/main/Login_SQL.xml +++ b/src/main/resources/egovframework/sqlmap/mapper/main/Login_SQL.xml @@ -20,13 +20,26 @@ SELECT AGREEYN, USERID, PASSWD, CLS, USER_NAME, SYSDATE, LOGIN_COUNT, LAST_LOGIN_DATE + 1/(24*12) AS SYSDATE2, VIRTUALNO, DECODE(PROJECT_MASTER_COMPANY_CODE,'','0',PROJECT_MASTER_COMPANY_CODE) MASTER_COMPANY_CODE, - to_char(trunc(months_between(SYSDATE, PSWD_MONTH))) as PSWD_LIMIT, LIQ_YN, GOVEMENT_CODE, CERTIFICATION_YN + to_char(trunc(months_between(SYSDATE, PSWD_MONTH))) as PSWD_LIMIT, LIQ_YN, GOVEMENT_CODE, CERTIFICATION_YN, ADM_PWD_CHG FROM WEB_MEMBER_IN WHERE