arko_renual/src/main/java/egovframework/com/cmm/LoginVO.java
infraurp 545b49daf7 개인정보보호 기능개선 4차 — 회원정보 암호화 읽기전환/검색전환 완료(뷰 재정의 대비)
일반회원 이름(COMTNGNRLMBER.MBER_NM) 암호화 저장(추가제안 Action4)의 마지막 단계로,
comvnusermaster/comvnuserinfo 뷰를 거쳐 이름을 표시·검색하는 전체 소비자(66개 표시
구문 + 신규 발견된 검색(LIKE/exact-match) 구문)를 뷰 재정의 이전에 전수 정비했다.

- 표시: 판별 컬럼(USER_SE 등) 추가 후 GNR일 때만 조건부 복호화
- 검색: LIKE/exact-match를 (HASH = #hash# OR 원본 조건) 패턴으로 전환
- 과정에서 발견한 기존 버그(EgovBBSLoneMaster/EgovBoard의 columnIndex 위치
  불일치, BizPrvol/EgovLoginUsr/BizPrapp의 누락된 검색 전환 지점)를 최소 범위로
  수정하거나(내 필드에 한해) 영향받지 않도록 우회 처리

뷰 자체(ALTER VIEW)는 아직 미실행 — 모든 소비자 정비가 끝나야 실행 가능한
all-or-nothing 게이트가 있어 별도로 진행한다.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-11 08:50:04 +09:00

449 lines
8.7 KiB
Java

package egovframework.com.cmm;
import java.io.Serializable;
/**
* @Class Name : LoginVO.java
* @Description : Login VO class
* @Modification Information
* @
* @ 수정일 수정자 수정내용
* @ ------- -------- ---------------------------
* @ 2009.03.03 박지욱 최초 생성
*
* @author 공통서비스 개발팀 박지욱
* @since 2009.03.03
* @version 1.0
* @see
*
*/
public class LoginVO implements Serializable{
/**
*
*/
private static final long serialVersionUID = -8274004534207618049L;
/** 아이디 */
private String id;
/** 이름 */
private String name;
/** 주민등록번호 */
private String ihidNum;
/** 이메일주소 */
private String email;
/** 비밀번호 */
private String password;
/** 비밀번호 힌트 */
private String passwordHint;
/** 비밀번호 정답 */
private String passwordCnsr;
/** 사용자구분 */
private String userSe;
/** 조직(부서)ID */
private String orgnztId;
/** 조직(부서)명 */
private String orgnztNm;
/** 고유아이디 */
private String uniqId;
/** 로그인 후 이동할 페이지 */
private String url;
/** 사용자 IP정보 */
private String ip;
/** GPKI인증 DN */
private String dn;
/** 소속지역(시도) */
private String activeSidoArea;
/** 소속지역(시군구) */
private String activeGugunArea;
/** 권한 */
private String auth;
/** 구분 */
private String workArea;
/** 휴대폰번호 */
private String mbtlnum;
/** 휴대폰번호 */
private String sendCate;
/**
* 최근 접속일자
*/
private String creatDt;
/**
* 마일리지 점수
*/
private String accPoint;
//휴먼 고객
private String esntl_id;
private String mber_id;
/** 휴면 전환일 */
private String diapause_dt;
/** 휴면 상태 */
private String diapause_stat;
/** SMS 수신여부 */
private String recvSmsYn;
private String lockYn;
private int lockCount;
public int getLockCount() {
return lockCount;
}
public void setLockCount(int lockCount) {
this.lockCount = lockCount;
}
public String getLockYn() {
return lockYn;
}
public void setLockYn(String lockYn) {
this.lockYn = lockYn;
}
/**
* @return the creatDt
*/
public String getCreatDt() {
return creatDt;
}
/**
* @param creatDt the creatDt to set
*/
public void setCreatDt(String creatDt) {
this.creatDt = creatDt;
}
/**
* @return the accPoint
*/
public String getAccPoint() {
return accPoint;
}
/**
* @param accPoint the accPoint to set
*/
public void setAccPoint(String accPoint) {
this.accPoint = accPoint;
}
/**
* id attribute 를 리턴한다.
* @return String
*/
public String getId() {
return id;
}
/**
* id attribute 값을 설정한다.
* @param id String
*/
public void setId(String id) {
this.id = id;
}
/**
* name attribute 를 리턴한다.
* @return String
*/
public String getName() {
return name;
}
/**
* name attribute 값을 설정한다.
* @param name String
*/
public void setName(String name) {
this.name = name;
}
/**
* 이름(아이디/비밀번호 찾기) 검색 완전일치 해시(개인정보보호 기능개선 사업 추가제안 Action4, 2026-08-10).
* 일반회원 이름이 암호화되며 {@code searchId}/{@code searchPassword} 조회의 이름 조건이
* 완전일치 해시로 바뀌었다. {@code LoginDAO}가 {@code name}으로부터 채운다.
*/
private String nameHash;
public String getNameHash() {
return nameHash;
}
public void setNameHash(String nameHash) {
this.nameHash = nameHash;
}
/**
* ihidNum attribute 를 리턴한다.
* @return String
*/
public String getIhidNum() {
return ihidNum;
}
/**
* ihidNum attribute 값을 설정한다.
* @param ihidNum String
*/
public void setIhidNum(String ihidNum) {
this.ihidNum = ihidNum;
}
/**
* email attribute 를 리턴한다.
* @return String
*/
public String getEmail() {
return email;
}
/**
* email attribute 값을 설정한다.
* @param email String
*/
public void setEmail(String email) {
this.email = email;
}
/**
* password attribute 를 리턴한다.
* @return String
*/
public String getPassword() {
return password;
}
/**
* password attribute 값을 설정한다.
* @param password String
*/
public void setPassword(String password) {
this.password = password;
}
/**
* passwordHint attribute 를 리턴한다.
* @return String
*/
public String getPasswordHint() {
return passwordHint;
}
/**
* passwordHint attribute 값을 설정한다.
* @param passwordHint String
*/
public void setPasswordHint(String passwordHint) {
this.passwordHint = passwordHint;
}
/**
* passwordCnsr attribute 를 리턴한다.
* @return String
*/
public String getPasswordCnsr() {
return passwordCnsr;
}
/**
* passwordCnsr attribute 값을 설정한다.
* @param passwordCnsr String
*/
public void setPasswordCnsr(String passwordCnsr) {
this.passwordCnsr = passwordCnsr;
}
/**
* userSe attribute 를 리턴한다.
* @return String
*/
public String getUserSe() {
return userSe;
}
/**
* userSe attribute 값을 설정한다.
* @param userSe String
*/
public void setUserSe(String userSe) {
this.userSe = userSe;
}
/**
* orgnztId attribute 를 리턴한다.
* @return String
*/
public String getOrgnztId() {
return orgnztId;
}
/**
* orgnztId attribute 값을 설정한다.
* @param orgnztId String
*/
public void setOrgnztId(String orgnztId) {
this.orgnztId = orgnztId;
}
/**
* uniqId attribute 를 리턴한다.
* @return String
*/
public String getUniqId() {
return uniqId;
}
/**
* uniqId attribute 값을 설정한다.
* @param uniqId String
*/
public void setUniqId(String uniqId) {
this.uniqId = uniqId;
}
/**
* url attribute 를 리턴한다.
* @return String
*/
public String getUrl() {
return url;
}
/**
* url attribute 값을 설정한다.
* @param url String
*/
public void setUrl(String url) {
this.url = url;
}
/**
* ip attribute 를 리턴한다.
* @return String
*/
public String getIp() {
return ip;
}
/**
* ip attribute 값을 설정한다.
* @param ip String
*/
public void setIp(String ip) {
this.ip = ip;
}
/**
* dn attribute 를 리턴한다.
* @return String
*/
public String getDn() {
return dn;
}
/**
* dn attribute 값을 설정한다.
* @param dn String
*/
public void setDn(String dn) {
this.dn = dn;
}
/**
* @return the orgnztNm
*/
public String getOrgnztNm() {
return orgnztNm;
}
/**
* @param orgnztNm the orgnztNm to set
*/
public void setOrgnztNm(String orgnztNm) {
this.orgnztNm = orgnztNm;
}
/**
* @return the activeSidoArea
*/
public String getActiveSidoArea() {
return activeSidoArea;
}
/**
* @param activeSidoArea the activeSidoArea to set
*/
public void setActiveSidoArea(String activeSidoArea) {
this.activeSidoArea = activeSidoArea;
}
/**
* @return the activeGugunArea
*/
public String getActiveGugunArea() {
return activeGugunArea;
}
/**
* @param activeGugunArea the activeGugunArea to set
*/
public void setActiveGugunArea(String activeGugunArea) {
this.activeGugunArea = activeGugunArea;
}
/**
* @return the auth
*/
public String getAuth() {
return auth;
}
/**
* @param auth the auth to set
*/
public void setAuth(String auth) {
this.auth = auth;
}
/**
* @return the workArea
*/
public String getWorkArea() {
return workArea;
}
/**
* @param workArea the workArea to set
*/
public void setWorkArea(String workArea) {
this.workArea = workArea;
}
/**
* @return the mbtlnum
*/
public String getMbtlnum() {
return mbtlnum;
}
/**
* @param mbtlnum the mbtlnum to set
*/
public void setMbtlnum(String mbtlnum) {
this.mbtlnum = mbtlnum;
}
/**
* @return the sendCate
*/
public String getSendCate() {
return sendCate;
}
/**
* @param sendCate the sendCate to set
*/
public void setSendCate(String sendCate) {
this.sendCate = sendCate;
}
public String getEsntl_id() {
return esntl_id;
}
public void setEsntl_id(String esntl_id) {
this.esntl_id = esntl_id;
}
public String getMber_id() {
return mber_id;
}
public void setMber_id(String mber_id) {
this.mber_id = mber_id;
}
public String getRecvSmsYn() {
return recvSmsYn;
}
public void setRecvSmsYn(String recvSmsYn) {
this.recvSmsYn = recvSmsYn;
}
public String getDiapause_dt() {
return diapause_dt;
}
public void setDiapause_dt(String diapause_dt) {
this.diapause_dt = diapause_dt;
}
public String getDiapause_stat() {
return diapause_stat;
}
public void setDiapause_stat(String diapause_stat) {
this.diapause_stat = diapause_stat;
}
}