diff --git a/src/main/java/kcc/com/cmm/LoginVO.java b/src/main/java/kcc/com/cmm/LoginVO.java
index 890c8b40..cbc0cde4 100644
--- a/src/main/java/kcc/com/cmm/LoginVO.java
+++ b/src/main/java/kcc/com/cmm/LoginVO.java
@@ -125,6 +125,8 @@ public class LoginVO implements Serializable{
private String mberCi;
+ private String joinType;
+
public String getId() {
return id;
}
@@ -440,6 +442,13 @@ public class LoginVO implements Serializable{
public void setMberCi(String mberCi) {
this.mberCi = mberCi;
}
+ public String getJoinType() {
+ return joinType;
+ }
+ public void setJoinType(String joinType) {
+ this.joinType = joinType;
+ }
+
diff --git a/src/main/java/kcc/let/uat/uia/service/impl/EgovSessionMapping.java b/src/main/java/kcc/let/uat/uia/service/impl/EgovSessionMapping.java
index 20f3a061..6b581dec 100644
--- a/src/main/java/kcc/let/uat/uia/service/impl/EgovSessionMapping.java
+++ b/src/main/java/kcc/let/uat/uia/service/impl/EgovSessionMapping.java
@@ -68,6 +68,7 @@ public class EgovSessionMapping extends EgovUsersByUsernameMapping {
String strOrgnztNm = rs.getString("orgnzt_nm");
String strAuthority = rs.getString("authority");
String strMberSeq = rs.getString("mber_seq");
+ String strJoinType = rs.getString("join_type");
HttpServletRequest request = ((ServletRequestAttributes)
@@ -88,6 +89,7 @@ public class EgovSessionMapping extends EgovUsersByUsernameMapping {
loginVO.setOrgnztNm(strOrgnztNm);
loginVO.setAuthority(strAuthority);
loginVO.setMembSeq(strMberSeq);
+ loginVO.setJoinType(strJoinType);
request.getSession().setAttribute("LoginVO", loginVO); // LoginVO세션 생성
diff --git a/src/main/java/kcc/let/uat/uia/web/EgovLoginController.java b/src/main/java/kcc/let/uat/uia/web/EgovLoginController.java
index aa4b56e6..6637bf81 100644
--- a/src/main/java/kcc/let/uat/uia/web/EgovLoginController.java
+++ b/src/main/java/kcc/let/uat/uia/web/EgovLoginController.java
@@ -1849,11 +1849,18 @@ public class EgovLoginController {
// 관리자 로그인 시
LoginVO user = (LoginVO) EgovUserDetailsHelper.getAuthenticatedUser();
- System.out.println("===========actionMain===========2");
- System.out.println(loginService.getUserAuth(user).getAuthority());
- System.out.println(user.getAuthority());
- if ("ROLE_ADMIN".equals(loginService.getUserAuth(user).getAuthority())) { // 수퍼관리자 경우
+ String authStr = user.getAuthority();
+ if(
+ "0".equals(user.getJoinType())
+ && ("ROLE_ADMIN".equals(authStr)
+ || "ROLE_VISIT".equals(authStr)
+ || "ROLE_ADR_JRSDC".equals(authStr)
+ || "ROLE_ADR_KIPO".equals(authStr)
+ || "ROLE_ADR_PREV".equals(authStr))
+ ) { //관리자 계정 생성 후 비밀번호를 한번도 변경하지 않은경우 비밀번호 변경 페이지로 이동
+ return "redirect:/uss/umt/user/EgovUserSelectUpdtView4Self.do";
+ } else if ("ROLE_ADMIN".equals(loginService.getUserAuth(user).getAuthority())) { // 수퍼관리자 경우
return "redirect:/cmm/main/mainPage.do";
} else if ("ROLE_USER_MANAGER".equals(user.getAuthority())) {
return "redirect:/web/main/mainPage.do";
diff --git a/src/main/java/kcc/let/uss/umt/service/UserManageVO.java b/src/main/java/kcc/let/uss/umt/service/UserManageVO.java
index f0c83250..3229a4b7 100644
--- a/src/main/java/kcc/let/uss/umt/service/UserManageVO.java
+++ b/src/main/java/kcc/let/uss/umt/service/UserManageVO.java
@@ -180,6 +180,8 @@ public class UserManageVO extends UserDefaultVO{
private String mberCi;
+ private String joinType;
+
public String getAuthorCode() {
return authorCode;
}
@@ -723,6 +725,13 @@ public class UserManageVO extends UserDefaultVO{
public void setMberCi(String mberCi) {
this.mberCi = mberCi;
}
+ public String getJoinType() {
+ return joinType;
+ }
+ public void setJoinType(String joinType) {
+ this.joinType = joinType;
+ }
+
diff --git a/src/main/java/kcc/let/uss/umt/service/impl/EgovUserManageServiceImpl.java b/src/main/java/kcc/let/uss/umt/service/impl/EgovUserManageServiceImpl.java
index 18fc3904..1fba2d71 100644
--- a/src/main/java/kcc/let/uss/umt/service/impl/EgovUserManageServiceImpl.java
+++ b/src/main/java/kcc/let/uss/umt/service/impl/EgovUserManageServiceImpl.java
@@ -131,6 +131,8 @@ public class EgovUserManageServiceImpl extends EgovAbstractServiceImpl implement
//pass = EgovFileScrty.encryptPassword(userManageVO.getPassword(), userManageVO.getEmplyrId());
pass = EgovNewPasswordUtil.hashPassword(userManageVO.getPassword());
userManageVO.setPassword(pass);
+ //사용자가 비밀번호 변경해야함
+ userManageVO.setJoinType("0");
}else {
//관리자 이외
userManageVO.setPassword(pass);
diff --git a/src/main/java/kcc/let/uss/umt/web/EgovUserManageController.java b/src/main/java/kcc/let/uss/umt/web/EgovUserManageController.java
index b7d951f9..d486e5b1 100644
--- a/src/main/java/kcc/let/uss/umt/web/EgovUserManageController.java
+++ b/src/main/java/kcc/let/uss/umt/web/EgovUserManageController.java
@@ -57,6 +57,7 @@ import kcc.com.cmm.service.EgovFileMngService;
import kcc.com.cmm.service.EgovFileMngUtil;
import kcc.com.cmm.util.EgovDoubleSubmitHelper;
import kcc.com.cmm.util.RedirectUrlMaker;
+import kcc.com.cmm.util.StringUtil;
import kcc.com.utl.fcc.service.EgovStringUtil;
import kcc.let.org.service.LocVO;
import kcc.let.org.service.OrgChartManageService;
@@ -2482,6 +2483,14 @@ public class EgovUserManageController {
p_model.addAttribute("userOneDepth", userOneDepth);
p_model.addAttribute("userTwoDepth", userTwoDepth);
p_model.addAttribute("orgHiddenList", orgHiddenList);
+
+ // 계정 생성 후 비밀번호를 한번도 변경하지 않았으면 관련 메시지 노출
+ if(
+ StringUtil.isNotEmpty(p_loginVO.getJoinType())
+ && "0".equals(p_loginVO.getJoinType())
+ ){
+ p_model.addAttribute("message", "계정 생성 후 비밀번호를 변경하지 않았습니다. \\n비밀번호를 변경 해주시기 바랍니다.");
+ }
}catch(Exception ex) {
ex.printStackTrace();
}
diff --git a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdServiceImpl.java b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdServiceImpl.java
index 9dd288e1..41b1f4fd 100644
--- a/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdServiceImpl.java
+++ b/src/main/java/kcc/ve/instr/tngrVisitEdu/prcsInfo/service/impl/VEPrcsAplctPrdServiceImpl.java
@@ -200,13 +200,11 @@ public class VEPrcsAplctPrdServiceImpl implements VEPrcsAplctPrdService {
//ve_prcs_aplct_prd : 처리 없음
//ve_edu_aplct : 삭제
//vea_aplct_detail_info : 삭제
- //vea_sspn_idmt_trgt : update edu_state_cd=10,edu_aplct_ord is null
+ //vea_sspn_idmt_trgt : 처리 없음
VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
vEEduAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
- //vEPrcsAplctPrdDAO.delete(vEPrcsDetailVO);
-
vEEduAplctDAO.delete(vEEduAplctVO);
vEPrcsMIXDAO.deleteAplctDetailInfo(vEPrcsDetailVO);
vEPrcsMIXDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
@@ -214,75 +212,7 @@ public class VEPrcsAplctPrdServiceImpl implements VEPrcsAplctPrdService {
}else if ("4".equals(vEPrcsDetailVO.getReqNo())) {
//대상자 교육신청후 관리자가 반려 처리
//ve_prcs_aplct_prd : 처리 없음
- //ve_edu_aplct : update aprvl_cd=35
- //vea_aplct_detail_info : 처리 없음
- //vea_sspn_idmt_trgt : update edu_state_cd=30,req_state_cd=20
-
- VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
- vEEduAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
-
- //vEPrcsAplctPrdDAO.delete(vEPrcsDetailVO);
-
- //vEEduAplctDAO.delete(vEEduAplctVO);
- vEEduAplctDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
- vEPrcsMIXDAO.updateAplctDetailInfo(vEPrcsDetailVO);
- vEPrcsMIXDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
-
- }else if ("6".equals(vEPrcsDetailVO.getReqNo())) {
- //교육확정
- //ve_prcs_aplct_prd : 처리 없음(앞에서 처리)
- //ve_edu_aplct : update aprvl_cd=60
- //vea_aplct_detail_info : 처리 없음
- //vea_sspn_idmt_trgt : update edu_state_cd=30,req_state_cd=20
-
- VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
- vEEduAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
-
- //vEPrcsAplctPrdDAO.delete(vEPrcsDetailVO);
-
- //vEEduAplctDAO.delete(vEEduAplctVO);
- vEEduAplctDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
- //vEPrcsMIXDAO.updateAplctDetailInfo(vEPrcsDetailVO);
- vEPrcsMIXDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
-
- }else if ("6-1".equals(vEPrcsDetailVO.getReqNo())) {
- //대상자 교육신청후 교육 취소 시 처리
- //ve_prcs_aplct_prd : 처리 없음
- //ve_edu_aplct : update aprvl_cd=35
- //vea_aplct_detail_info : 처리 없음
- //vea_sspn_idmt_trgt : update edu_state_cd=30,req_state_cd=20
-
- VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
- vEEduAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
-
- //vEPrcsAplctPrdDAO.delete(vEPrcsDetailVO);
-
- //vEEduAplctDAO.delete(vEEduAplctVO);
- vEEduAplctDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
- //vEPrcsMIXDAO.deleteAplctDetailInfo(vEPrcsDetailVO);
- vEPrcsMIXDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
-
- }else if ("6-2".equals(vEPrcsDetailVO.getReqNo())) {
- //대상자 교육 취소 신청 승인(취소 승인-교육종료)
- //ve_prcs_aplct_prd : 처리 없음
- //ve_edu_aplct : update aprvl_cd=40
- //vea_aplct_detail_info : 처리 없음
- //vea_sspn_idmt_trgt : update edu_state_cd=60,req_state_cd=40
-
- VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
- vEEduAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
-
- //vEPrcsAplctPrdDAO.delete(vEPrcsDetailVO);
-
- //vEEduAplctDAO.delete(vEEduAplctVO);
- vEEduAplctDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
- //vEPrcsMIXDAO.deleteAplctDetailInfo(vEPrcsDetailVO);
- vEPrcsMIXDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
-
- }else if ("6-3".equals(vEPrcsDetailVO.getReqNo())) {
- //대상자 교육 취소 신청 반려(취소 반려-교육계속)
- //ve_prcs_aplct_prd : 처리 없음
- //ve_edu_aplct : update aprvl_cd=60
+ //ve_edu_aplct : aprvl_cd=30
//vea_aplct_detail_info : 처리 없음
//vea_sspn_idmt_trgt : 처리 없음
@@ -291,10 +221,65 @@ public class VEPrcsAplctPrdServiceImpl implements VEPrcsAplctPrdService {
//vEPrcsAplctPrdDAO.delete(vEPrcsDetailVO);
- //vEEduAplctDAO.delete(vEEduAplctVO);
+ vEEduAplctDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
+ vEPrcsMIXDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
+
+ }else if ("6".equals(vEPrcsDetailVO.getReqNo())) {
+ //교육확정
+ //ve_prcs_aplct_prd : 처리 없음(앞에서 처리)
+ //ve_edu_aplct : aprvl_cd=60
+ //vea_aplct_detail_info : 처리 없음
+ //vea_sspn_idmt_trgt : 처리 없음
+
+ VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
+ vEEduAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
+
+
+ vEEduAplctDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
+
+ }else if ("6-1".equals(vEPrcsDetailVO.getReqNo())) {
+ /* 251027 기준 - 6-1 미사용 중 */
+ //대상자 교육신청후 교육 취소 요청시 처리
+ //ve_prcs_aplct_prd : 처리 없음
+ //ve_edu_aplct : 처리 없음
+ //vea_aplct_detail_info : aplct_state_cd = 35
+ //vea_sspn_idmt_trgt : 처리 없음
+
+ VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
+ vEEduAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
+
vEEduAplctDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
//vEPrcsMIXDAO.deleteAplctDetailInfo(vEPrcsDetailVO);
- //vEPrcsMIXDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
+ vEPrcsMIXDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
+
+ }else if ("6-2".equals(vEPrcsDetailVO.getReqNo())) {
+ //대상자 교육 취소 신청 승인(취소 승인-교육종료)
+ //ve_prcs_aplct_prd : 처리 없음
+ //ve_edu_aplct : 처리 없음
+ //vea_aplct_detail_info : aplct_state_cd 60(연기)
+ //vea_sspn_idmt_trgt : edu_state_cd=60(연기),req_state_cd=35(미완료)
+
+ VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
+ vEEduAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
+
+ //vEPrcsAplctPrdDAO.delete(vEPrcsDetailVO);
+
+ //vEEduAplctDAO.delete(vEEduAplctVO);
+ //vEEduAplctDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
+ vEPrcsMIXDAO.updateAplctDetailInfo(vEPrcsDetailVO);
+ vEPrcsMIXDAO.updateSspnIdmtTrgtCancelNew(vEPrcsDetailVO);
+
+ }else if ("6-3".equals(vEPrcsDetailVO.getReqNo())) {
+ //대상자 교육 취소 신청 반려(취소 반려-교육계속)
+ //ve_prcs_aplct_prd : 처리 없음
+ //ve_edu_aplct : 처리 없음
+ //vea_aplct_detail_info : aplct_state_cd = null
+ //vea_sspn_idmt_trgt : 처리 없음
+
+ VEEduAplctVO vEEduAplctVO = new VEEduAplctVO();
+ vEEduAplctVO.setEduAplctOrd(vEPrcsDetailVO.getEduAplctOrd());
+
+ vEPrcsMIXDAO.updateAplctDetailInfo(vEPrcsDetailVO);
}
return 1;
diff --git a/src/main/resources/egovframework/spring/com/context-security.xml b/src/main/resources/egovframework/spring/com/context-security.xml
index 497cdb8a..f1501519 100644
--- a/src/main/resources/egovframework/spring/com/context-security.xml
+++ b/src/main/resources/egovframework/spring/com/context-security.xml
@@ -25,7 +25,7 @@
jdbcUsersByUsernameQuery="SELECT USER_ID, ESNTL_ID AS PASSWORD, 1 ENABLED, USER_NM, USER_ZIP,
USER_ADRES, USER_EMAIL, USER_SE, '-' ORGNZT_ID, ESNTL_ID,
'-' ORGNZT_NM, AUTHOR_CODE AS AUTHORITY
- , '' AS mber_seq
+ , '' AS mber_seq, JOIN_TYPE AS JOIN_TYPE
FROM COMVNUSERMASTER A
INNER JOIN LETTNEMPLYRSCRTYESTBS B ON A.ESNTL_ID = B.SCRTY_DTRMN_TRGET_ID
WHERE CONCAT(USER_SE, USER_ID) = ?"
diff --git a/src/main/resources/egovframework/sqlmap/let/uss/umt/EgovUserManage_SQL_Postgresql.xml b/src/main/resources/egovframework/sqlmap/let/uss/umt/EgovUserManage_SQL_Postgresql.xml
index c09a453b..931b6d54 100644
--- a/src/main/resources/egovframework/sqlmap/let/uss/umt/EgovUserManage_SQL_Postgresql.xml
+++ b/src/main/resources/egovframework/sqlmap/let/uss/umt/EgovUserManage_SQL_Postgresql.xml
@@ -218,7 +218,8 @@
]]>
- CRTFC_DN_VALUE )
+ CRTFC_DN_VALUE,
+ JOIN_TYPE )
VALUES (
#uniqId# ,
#emplyrId# ,
@@ -256,7 +257,8 @@
#snsId# ,
#snsEmail# ,
- #subDn# )
+ #subDn#,
+ #joinType# )
, prcs_aplct_prd_ord_cmplt = NULL
@@ -622,6 +620,7 @@
취소요청
+|
+ 첨부파일 + |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 최대 3개 +50MB제한 + |
+ ||||||
|---|---|---|---|---|---|---|---|
|
+ 필수입력 항목* +취소사유 + |
+ + + | +||||||
| 파일 명 | +종류 | +크기 | + + +
|---|---|---|
|
+ 첨부하실 파일을 마우스끌어서 넣어주세요. + |
+
최대 1개
+50MB제한
+취소요청
+|
+ 첨부파일 + |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 최대 3개 +50MB제한 + |
+ ||||||
|---|---|---|---|---|---|---|---|
|
+ 필수입력 항목* +취소사유 + |
+ + + | +||||||
| 파일 명 | +종류 | +크기 | + + +
|---|---|---|
|
+ 첨부하실 파일을 마우스끌어서 넣어주세요. + |
+
최대 1개
+50MB제한
+