diff --git a/pom.xml b/pom.xml index 82ec598..022b2a1 100644 --- a/pom.xml +++ b/pom.xml @@ -1,234 +1,234 @@ - - 4.0.0 - - cokr.xit - xit-user - 23.04.01 - jar - - xit-user - http://maven.apache.org - - - UTF-8 - - 1.8 - ${java.version} - ${java.version} - - 5.3.20 - 4.1.0 - - - - - mvn2s - https://repo1.maven.org/maven2/ - - true - - - true - - - - egovframe - http://maven.egovframe.kr:8080/maven/ - - true - - - false - - - - egovframe2 - https://www.egovframe.go.kr/maven/ - - true - - - false - - - - - - - - cokr.xit - xit-foundation - 23.04.01 - - - - org.mariadb.jdbc - mariadb-java-client - 2.7.2 - test - - - - - - install - ${basedir}/target - ${project.artifactId}-${project.version} - - - ${basedir}/src/main/resources - - - - ${basedir}/src/test/resources - ${basedir}/src/main/resources - - - - - - org.apache.tomcat.maven - tomcat7-maven-plugin - 2.2 - - 80 - / - - -Xms256m -Xmx768m -XX:MaxPermSize=256m - - - - - org.apache.maven.plugins - maven-compiler-plugin - - 1.8 - 1.8 - UTF-8 - - - - org.codehaus.mojo - hibernate3-maven-plugin - 2.1 - - - - hbm2ddl - annotationconfiguration - - - - - - org.hsqldb - hsqldb - 2.3.2 - - - - - - org.codehaus.mojo - emma-maven-plugin - 1.0-alpha-3 - - - - org.apache.maven.plugins - maven-pmd-plugin - 3.1 - - - - - - org.apache.maven.plugins - maven-jar-plugin - 3.3.0 - - - **/*.class - - - - - - org.apache.maven.plugins - maven-surefire-plugin - 3.0.0 - - true - xml - - **/Abstract*.java - **/*Suite.java - - - **/*Test.java - - - - - org.codehaus.mojo - emma-maven-plugin - true - - - org.apache.maven.plugins - maven-source-plugin - 2.2 - - - attach-sources - - jar - - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 2.9.1 - - - - - - - - - maven-snapshot - http://xit.xit-nexus.com:8081/repository/maven-snapshots/ - - - - maven-release - http://xit.xit-nexus.com:8081/repository/maven-releases/ - - - + + 4.0.0 + + cokr.xit + xit-user + 23.04.01 + jar + + xit-user + http://maven.apache.org + + + UTF-8 + + 1.8 + ${java.version} + ${java.version} + + 5.3.20 + 4.1.0 + + + + + mvn2s + https://repo1.maven.org/maven2/ + + true + + + true + + + + egovframe + http://maven.egovframe.kr:8080/maven/ + + true + + + false + + + + egovframe2 + https://www.egovframe.go.kr/maven/ + + true + + + false + + + + + + + + cokr.xit + xit-foundation + 23.04.01 + + + + org.mariadb.jdbc + mariadb-java-client + 2.7.2 + test + + + + + + install + ${basedir}/target + ${project.artifactId}-${project.version} + + + ${basedir}/src/main/resources + + + + ${basedir}/src/test/resources + ${basedir}/src/main/resources + + + + + + org.apache.tomcat.maven + tomcat7-maven-plugin + 2.2 + + 80 + / + + -Xms256m -Xmx768m -XX:MaxPermSize=256m + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.8 + 1.8 + UTF-8 + + + + org.codehaus.mojo + hibernate3-maven-plugin + 2.1 + + + + hbm2ddl + annotationconfiguration + + + + + + org.hsqldb + hsqldb + 2.3.2 + + + + + + org.codehaus.mojo + emma-maven-plugin + 1.0-alpha-3 + + + + org.apache.maven.plugins + maven-pmd-plugin + 3.1 + + + + + + org.apache.maven.plugins + maven-jar-plugin + 3.3.0 + + + **/*.class + + + + + + org.apache.maven.plugins + maven-surefire-plugin + 3.0.0 + + true + xml + + **/Abstract*.java + **/*Suite.java + + + **/*Test.java + + + + + org.codehaus.mojo + emma-maven-plugin + true + + + org.apache.maven.plugins + maven-source-plugin + 2.2 + + + attach-sources + + jar + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + 2.9.1 + + + + + + + + + maven-snapshot + http://xit.xit-nexus.com:8081/repository/maven-snapshots/ + + + + maven-release + http://xit.xit-nexus.com:8081/repository/maven-releases/ + + + \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/EnterpriseMember.java b/src/main/java/cokr/xit/base/user/EnterpriseMember.java index ab91801..4621ad3 100644 --- a/src/main/java/cokr/xit/base/user/EnterpriseMember.java +++ b/src/main/java/cokr/xit/base/user/EnterpriseMember.java @@ -1,89 +1,89 @@ -package cokr.xit.base.user; - -/**기업회원 사용자 정보 - * @author mjkhan - */ -public class EnterpriseMember extends GenericUser { - private static final long serialVersionUID = 1L; - private String - ceoName, - entityRegistrationNo, - industry, - applicantName, - applicantResidentRegistrationNo; - - @Override - public String getType() { - return "USR02"; //"ent"; - } - - /**대표이사 이름을 반환한다. - * @return 대표이사 이름 - */ - public String getCeoName() { - return ceoName; - } - - /**대표이사 이름을 설정한다. - * @param ceoName 대표이사 이름 - */ - public void setCeoName(String ceoName) { - this.ceoName = ceoName; - } - - /**법인등록번호를 반환한다. - * @return 법인등록번호 - */ - public String getEntityRegistrationNo() { - return entityRegistrationNo; - } - - /**법인등록번호를 설정한다. - * @param entityRegistrationNo 법인등록번호 - */ - public void setEntityRegistrationNo(String entityRegistrationNo) { - this.entityRegistrationNo = entityRegistrationNo; - } - - /**업종을 반환한다. - * @return 업종코드 - */ - public String getIndustry() { - return industry; - } - - /**업종을 설정한다. - * @param industry 업종코드 - */ - public void setIndustry(String industry) { - this.industry = industry; - } - - /**신청인 이름을 반환한다. - * @return 신청인 이름 - */ - public String getApplicantName() { - return applicantName; - } - - /**신청인 이름을 설정한다. - * @param applicantName 신청인 이름 - */ - public void setApplicantName(String applicantName) { - this.applicantName = applicantName; - } - - /**신청인 주민등록번호를 반환한다. - * @return 신청인 주민등록번호 - */ - public String getApplicantResidentRegistrationNo() { - return applicantResidentRegistrationNo; - } - - /**신청인 주민등록번호를 설정한다. - * @param applicantResidentRegistrationNo 신청인 주민등록번호 - */ - public void setApplicantResidentRegistrationNo(String applicantResidentRegistrationNo) { - this.applicantResidentRegistrationNo = applicantResidentRegistrationNo; - } +package cokr.xit.base.user; + +/**기업회원 사용자 정보 + * @author mjkhan + */ +public class EnterpriseMember extends GenericUser { + private static final long serialVersionUID = 1L; + private String + ceoName, + entityRegistrationNo, + industry, + applicantName, + applicantResidentRegistrationNo; + + @Override + public String getType() { + return "USR02"; //"ent"; + } + + /**대표이사 이름을 반환한다. + * @return 대표이사 이름 + */ + public String getCeoName() { + return ceoName; + } + + /**대표이사 이름을 설정한다. + * @param ceoName 대표이사 이름 + */ + public void setCeoName(String ceoName) { + this.ceoName = ceoName; + } + + /**법인등록번호를 반환한다. + * @return 법인등록번호 + */ + public String getEntityRegistrationNo() { + return entityRegistrationNo; + } + + /**법인등록번호를 설정한다. + * @param entityRegistrationNo 법인등록번호 + */ + public void setEntityRegistrationNo(String entityRegistrationNo) { + this.entityRegistrationNo = entityRegistrationNo; + } + + /**업종을 반환한다. + * @return 업종코드 + */ + public String getIndustry() { + return industry; + } + + /**업종을 설정한다. + * @param industry 업종코드 + */ + public void setIndustry(String industry) { + this.industry = industry; + } + + /**신청인 이름을 반환한다. + * @return 신청인 이름 + */ + public String getApplicantName() { + return applicantName; + } + + /**신청인 이름을 설정한다. + * @param applicantName 신청인 이름 + */ + public void setApplicantName(String applicantName) { + this.applicantName = applicantName; + } + + /**신청인 주민등록번호를 반환한다. + * @return 신청인 주민등록번호 + */ + public String getApplicantResidentRegistrationNo() { + return applicantResidentRegistrationNo; + } + + /**신청인 주민등록번호를 설정한다. + * @param applicantResidentRegistrationNo 신청인 주민등록번호 + */ + public void setApplicantResidentRegistrationNo(String applicantResidentRegistrationNo) { + this.applicantResidentRegistrationNo = applicantResidentRegistrationNo; + } } \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/GenericUser.java b/src/main/java/cokr/xit/base/user/GenericUser.java index 328d69b..5d11268 100644 --- a/src/main/java/cokr/xit/base/user/GenericUser.java +++ b/src/main/java/cokr/xit/base/user/GenericUser.java @@ -1,342 +1,342 @@ -package cokr.xit.base.user; - -import java.util.Date; - -import cokr.xit.foundation.Assert; -import cokr.xit.foundation.User; - -/**사용자 정보 베이스 클래스 - * @author mjkhan - */ -public abstract class GenericUser extends User { - private static final long serialVersionUID = 1L; - - /**사용자 상태 - * @author mjkhan - */ - public static enum Status { - /** 가입신청 */ - APPLIED("A"), - /** 가입승인 */ - APPROVED("P"), - /** 가입삭제 */ - REMOVED("D"); - - private final String code; - - private Status(String code) { - this.code = code; - } - - /**사용자 상태의 코드를 반환한다. - * @return 사용자 상태 코드 - */ - public String code() { - return code; - } - - /**코드에 해당하는 Status를 반환한다. - * @param code 사용자 상태 코드 - * @return Status - */ - public static Status codeOf(String code) { - if (Assert.isEmpty(code)) - return null; - for (Status status: values()) { - if (code.equals(status.code)) - return status; - } - throw new IllegalArgumentException("Invalid code: " + code); - } - } - - private String - key, - passwordHint, - passwordHintAnswer, - emailAddress, - areaNo, - zipCode, - address, - addressDetail, - phoneNo, - faxNo, - mobilePhoneNo, - groupID, - locked, - status; - private int lockCount; - private Date - registeredDate, - lockedDate; - - /**사용자의 유형을 반환한다. - * @return 사용자 유형 코드 - */ - public abstract String getType(); - - /**사용자의 고유 ID를 반환한다. - * @return 사용자의 고유 ID - */ - public String getKey() { - return key; - } - - /**사용자의 고유 ID를 설정한다. - * @param key 사용자의 고유 ID - */ - public void setKey(String key) { - this.key = key; - } - - /**비밀번호의 힌트를 반환한다. - * @return - */ - public String getPasswordHint() { - return passwordHint; - } - - /**비밀번호의 힌트를 설정한다. - * @param passwordHint 비밀번호의 힌트 - */ - public void setPasswordHint(String passwordHint) { - this.passwordHint = passwordHint; - } - - /**비밀번호 힌트의 답을 반환한다. - * @return 비밀번호 힌트의 답 - */ - public String getPasswordHintAnswer() { - return passwordHintAnswer; - } - - /**비밀번호 힌트의 답을 설정한다. - * @param passwordHintAnswer 비밀번호 힌트의 답 - */ - public void setPasswordHintAnswer(String passwordHintAnswer) { - this.passwordHintAnswer = passwordHintAnswer; - } - - /**사용자의 이메일 주소를 반환한다. - * @return 이메일 주소 - */ - public String getEmailAddress() { - return emailAddress; - } - - /**사용자의 이메일 주소를 설정한다. - * @param emailAddress 이메일 주소 - */ - public void setEmailAddress(String emailAddress) { - this.emailAddress = emailAddress; - } - - /**사용자의 지역번호를 반환한다. - * @return 사용자의 지역번호 - */ - public String getAreaNo() { - return areaNo; - } - - /**사용자의 지역번호를 설정한다. - * @param areaNo 사용자의 지역번호 - */ - public void setAreaNo(String areaNo) { - this.areaNo = areaNo; - } - - /**사용자의 우편번호를 반환한다. - * @return 사용자의 우편번호 - */ - public String getZipCode() { - return zipCode; - } - - /**사용자의 우편번호를 설정한다. - * @param zipCode 사용자의 우편번호 - */ - public void setZipCode(String zipCode) { - this.zipCode = zipCode; - } - - /**사용자의 주소를 반환한다. - * @return 사용자의 주소 - */ - public String getAddress() { - return address; - } - - /**사용자의 주소를 설정한다. - * @param address 사용자의 주소 - */ - public void setAddress(String address) { - this.address = address; - } - - /**사용자의 상세주소를 반환한다. - * @return 사용자의 상세주소 - */ - public String getAddressDetail() { - return addressDetail; - } - - /**사용자의 상세주소를 설정한다. - * @param addressDetail 사용자의 상세주소 - */ - public void setAddressDetail(String addressDetail) { - this.addressDetail = addressDetail; - } - - /**유선 전화번호를 반환한다. - * @return 유선 전화번호 - */ - public String getPhoneNo() { - return phoneNo; - } - - /**유선 전화번호를 설정한다. - * @param phoneNo 유선 전화번호 - */ - public void setPhoneNo(String phoneNo) { - this.phoneNo = phoneNo; - } - - - /**사용자의 팩스번호를 반환한다. - * @return 사용자의 팩스번호 - */ - public String getFaxNo() { - return faxNo; - } - - /**사용자의 팩스번호를 설정한다. - * @param faxNo 사용자의 팩스번호 - */ - public void setFaxNo(String faxNo) { - this.faxNo = faxNo; - } - - /**무선 전화번호를 반환한다. - * @return 무선 전화번호 - */ - public String getMobilePhoneNo() { - return mobilePhoneNo; - } - - /**무선 전화번호를 설정한다. - * @param mobilePhoneNo 무선 전화번호 - */ - public void setMobilePhoneNo(String mobilePhoneNo) { - this.mobilePhoneNo = mobilePhoneNo; - } - - /**사용자의 그룹 아이디를 반환한다. - * @return 사용자의 그룹 아이디 - */ - public String getGroupID() { - return groupID; - } - - /**사용자의 그룹 아이디를 설정한다. - * @param groupID 사용자의 그룹 아이디 - */ - public void setGroupID(String groupID) { - this.groupID = groupID; - } - - /**사용자 계정의 잠금여부를 반환한다. - * @return 사용자 계정의 잠금여부 - */ - public String getLocked() { - return Assert.ifEmpty(locked, "N"); - } - - /**사용자 계정의 잠금여부를 설정한다. - * @param locked 사용자 계정의 잠금여부 - */ - public void setLocked(String locked) { - this.locked = locked; - } - - /**사용자 계정의 잠금횟수를 반환한다. - * @return 사용자 계정의 잠금횟수 - */ - public int getLockCount() { - return lockCount; - } - - /**사용자 계정의 잠금횟수를 설정한다. - * @param lockCount 사용자 계정의 잠금횟수 - */ - public void setLockCount(int lockCount) { - this.lockCount = lockCount; - } - - /**사용자 계정이 잠긴 날짜를 반환한다. - * @return 사용자 계정이 잠긴 날짜 - */ - public Date getLockedDate() { - return lockedDate; - } - - /**사용자 계정이 잠긴 날짜를 설정한다. - * @param lockedDate 사용자 계정이 잠긴 날짜 - */ - public void setLockedDate(Date lockedDate) { - this.lockedDate = lockedDate; - } - - /**사용자가 가입한 날짜를 반환한다. - * @return 사용자가 가입한 날짜 - */ - public Date getRegisteredDate() { - return registeredDate; - } - - /**사용자가 가입한 날짜를 설정한다. - * @param registeredDate 사용자가 가입한 날짜 - */ - public void setRegisteredDate(Date registeredDate) { - this.registeredDate = registeredDate; - } - - /**사용자의 상태코드를 반환한다. - * @return 사용자의 상태코드 - * - */ - public String getStatus() { - return Assert.ifEmpty(status, Status.APPLIED.code); - } - - /**사용자의 상태드를 반환한다. - * @return 사용자의 상태 - */ - public Status status() { - return Status.codeOf(getStatus()); - } - - /**사용자의 상태코드를 설정한다. - * @param status 사용자의 상태코드 - * - */ - public void setStatus(String status) { - this.status = status; - } -/* - @Override - public boolean isEnabled() { - return "P".equals(getStatus()); - } - - @Override - public boolean isAccountNonLocked() { - return "N".equals(getLocked()); - } -*/ +package cokr.xit.base.user; + +import java.util.Date; + +import cokr.xit.foundation.Assert; +import cokr.xit.foundation.User; + +/**사용자 정보 베이스 클래스 + * @author mjkhan + */ +public abstract class GenericUser extends User { + private static final long serialVersionUID = 1L; + + /**사용자 상태 + * @author mjkhan + */ + public static enum Status { + /** 가입신청 */ + APPLIED("A"), + /** 가입승인 */ + APPROVED("P"), + /** 가입삭제 */ + REMOVED("D"); + + private final String code; + + private Status(String code) { + this.code = code; + } + + /**사용자 상태의 코드를 반환한다. + * @return 사용자 상태 코드 + */ + public String code() { + return code; + } + + /**코드에 해당하는 Status를 반환한다. + * @param code 사용자 상태 코드 + * @return Status + */ + public static Status codeOf(String code) { + if (Assert.isEmpty(code)) + return null; + for (Status status: values()) { + if (code.equals(status.code)) + return status; + } + throw new IllegalArgumentException("Invalid code: " + code); + } + } + + private String + key, + passwordHint, + passwordHintAnswer, + emailAddress, + areaNo, + zipCode, + address, + addressDetail, + phoneNo, + faxNo, + mobilePhoneNo, + groupID, + locked, + status; + private int lockCount; + private Date + registeredDate, + lockedDate; + + /**사용자의 유형을 반환한다. + * @return 사용자 유형 코드 + */ + public abstract String getType(); + + /**사용자의 고유 ID를 반환한다. + * @return 사용자의 고유 ID + */ + public String getKey() { + return key; + } + + /**사용자의 고유 ID를 설정한다. + * @param key 사용자의 고유 ID + */ + public void setKey(String key) { + this.key = key; + } + + /**비밀번호의 힌트를 반환한다. + * @return + */ + public String getPasswordHint() { + return passwordHint; + } + + /**비밀번호의 힌트를 설정한다. + * @param passwordHint 비밀번호의 힌트 + */ + public void setPasswordHint(String passwordHint) { + this.passwordHint = passwordHint; + } + + /**비밀번호 힌트의 답을 반환한다. + * @return 비밀번호 힌트의 답 + */ + public String getPasswordHintAnswer() { + return passwordHintAnswer; + } + + /**비밀번호 힌트의 답을 설정한다. + * @param passwordHintAnswer 비밀번호 힌트의 답 + */ + public void setPasswordHintAnswer(String passwordHintAnswer) { + this.passwordHintAnswer = passwordHintAnswer; + } + + /**사용자의 이메일 주소를 반환한다. + * @return 이메일 주소 + */ + public String getEmailAddress() { + return emailAddress; + } + + /**사용자의 이메일 주소를 설정한다. + * @param emailAddress 이메일 주소 + */ + public void setEmailAddress(String emailAddress) { + this.emailAddress = emailAddress; + } + + /**사용자의 지역번호를 반환한다. + * @return 사용자의 지역번호 + */ + public String getAreaNo() { + return areaNo; + } + + /**사용자의 지역번호를 설정한다. + * @param areaNo 사용자의 지역번호 + */ + public void setAreaNo(String areaNo) { + this.areaNo = areaNo; + } + + /**사용자의 우편번호를 반환한다. + * @return 사용자의 우편번호 + */ + public String getZipCode() { + return zipCode; + } + + /**사용자의 우편번호를 설정한다. + * @param zipCode 사용자의 우편번호 + */ + public void setZipCode(String zipCode) { + this.zipCode = zipCode; + } + + /**사용자의 주소를 반환한다. + * @return 사용자의 주소 + */ + public String getAddress() { + return address; + } + + /**사용자의 주소를 설정한다. + * @param address 사용자의 주소 + */ + public void setAddress(String address) { + this.address = address; + } + + /**사용자의 상세주소를 반환한다. + * @return 사용자의 상세주소 + */ + public String getAddressDetail() { + return addressDetail; + } + + /**사용자의 상세주소를 설정한다. + * @param addressDetail 사용자의 상세주소 + */ + public void setAddressDetail(String addressDetail) { + this.addressDetail = addressDetail; + } + + /**유선 전화번호를 반환한다. + * @return 유선 전화번호 + */ + public String getPhoneNo() { + return phoneNo; + } + + /**유선 전화번호를 설정한다. + * @param phoneNo 유선 전화번호 + */ + public void setPhoneNo(String phoneNo) { + this.phoneNo = phoneNo; + } + + + /**사용자의 팩스번호를 반환한다. + * @return 사용자의 팩스번호 + */ + public String getFaxNo() { + return faxNo; + } + + /**사용자의 팩스번호를 설정한다. + * @param faxNo 사용자의 팩스번호 + */ + public void setFaxNo(String faxNo) { + this.faxNo = faxNo; + } + + /**무선 전화번호를 반환한다. + * @return 무선 전화번호 + */ + public String getMobilePhoneNo() { + return mobilePhoneNo; + } + + /**무선 전화번호를 설정한다. + * @param mobilePhoneNo 무선 전화번호 + */ + public void setMobilePhoneNo(String mobilePhoneNo) { + this.mobilePhoneNo = mobilePhoneNo; + } + + /**사용자의 그룹 아이디를 반환한다. + * @return 사용자의 그룹 아이디 + */ + public String getGroupID() { + return groupID; + } + + /**사용자의 그룹 아이디를 설정한다. + * @param groupID 사용자의 그룹 아이디 + */ + public void setGroupID(String groupID) { + this.groupID = groupID; + } + + /**사용자 계정의 잠금여부를 반환한다. + * @return 사용자 계정의 잠금여부 + */ + public String getLocked() { + return Assert.ifEmpty(locked, "N"); + } + + /**사용자 계정의 잠금여부를 설정한다. + * @param locked 사용자 계정의 잠금여부 + */ + public void setLocked(String locked) { + this.locked = locked; + } + + /**사용자 계정의 잠금횟수를 반환한다. + * @return 사용자 계정의 잠금횟수 + */ + public int getLockCount() { + return lockCount; + } + + /**사용자 계정의 잠금횟수를 설정한다. + * @param lockCount 사용자 계정의 잠금횟수 + */ + public void setLockCount(int lockCount) { + this.lockCount = lockCount; + } + + /**사용자 계정이 잠긴 날짜를 반환한다. + * @return 사용자 계정이 잠긴 날짜 + */ + public Date getLockedDate() { + return lockedDate; + } + + /**사용자 계정이 잠긴 날짜를 설정한다. + * @param lockedDate 사용자 계정이 잠긴 날짜 + */ + public void setLockedDate(Date lockedDate) { + this.lockedDate = lockedDate; + } + + /**사용자가 가입한 날짜를 반환한다. + * @return 사용자가 가입한 날짜 + */ + public Date getRegisteredDate() { + return registeredDate; + } + + /**사용자가 가입한 날짜를 설정한다. + * @param registeredDate 사용자가 가입한 날짜 + */ + public void setRegisteredDate(Date registeredDate) { + this.registeredDate = registeredDate; + } + + /**사용자의 상태코드를 반환한다. + * @return 사용자의 상태코드 + * + */ + public String getStatus() { + return Assert.ifEmpty(status, Status.APPLIED.code); + } + + /**사용자의 상태드를 반환한다. + * @return 사용자의 상태 + */ + public Status status() { + return Status.codeOf(getStatus()); + } + + /**사용자의 상태코드를 설정한다. + * @param status 사용자의 상태코드 + * + */ + public void setStatus(String status) { + this.status = status; + } +/* + @Override + public boolean isEnabled() { + return "P".equals(getStatus()); + } + + @Override + public boolean isAccountNonLocked() { + return "N".equals(getLocked()); + } +*/ } \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/ManagedUser.java b/src/main/java/cokr/xit/base/user/ManagedUser.java index 69f5055..374abf9 100644 --- a/src/main/java/cokr/xit/base/user/ManagedUser.java +++ b/src/main/java/cokr/xit/base/user/ManagedUser.java @@ -1,134 +1,134 @@ -package cokr.xit.base.user; - -/**업무 사용자 정보 - * @author mjkhan - */ -public class ManagedUser extends GenericUser { - private static final long serialVersionUID = 1L; - private String - empNo, - residentRegNo, - orgID, - gender, - birthday, - positionName, - institute, - certificateDn; - - @Override - public String getType() { - return "USR03"; //"usr"; - } - - /**사번을 반환한다. - * @return empNo 사번 - */ - public String getEmpNo() { - return empNo; - } - - /**사번을 설정한다. - * @param empNo 사번 - */ - public void setEmpNo(String empNo) { - this.empNo = empNo; - } - - /**주민등록번호를 반환한다. - * @return 주민등록번호 - */ - public String getResidentRegNo() { - return residentRegNo; - } - - /**주민등록번호를 설정한다. - * @param residentNo 주민등록번호 - */ - public void setResidentRegNo(String residentNo) { - this.residentRegNo = residentNo; - } - - /**조직ID를 반환한다. - * @return 조직ID - */ - public String getOrgID() { - return orgID; - } - - /**조직ID를 설정한다. - * @param orgID 조직ID - */ - public void setOrgID(String orgID) { - this.orgID = orgID; - } - - /**성별을 반환한다. - * @return gender 성별코드 - */ - public String getGender() { - return gender; - } - - /**성별을 설정한다. - * @param gender 성별코드 - */ - public void setGender(String gender) { - this.gender = gender; - } - - /**생년월일을 반환한다. - * @return 생년월일 - */ - public String getBirthday() { - return birthday; - } - - /**생년월일을 설정한다. - * @param birthday 생년월일 - */ - public void setBirthday(String birthday) { - this.birthday = birthday; - } - - /**직위이름을 반환한다. - * @return 직위이름 - */ - public String getPositionName() { - return positionName; - } - - /**직위이름을 설정한다. - * @param positionName 직위이름 - */ - public void setPositionName(String positionName) { - this.positionName = positionName; - } - - /**소속기관을 반환한다. - * @return 소속기관 코드 - */ - public String getInstitute() { - return institute; - } - - /**소속기관을 설정한다. - * @param insititute 소속기관 코드 - */ - public void setInstitute(String insititute) { - this.institute = insititute; - } - - /**인증 DN값을 반환한다. - * @return 인증 DN값 - */ - public String getCertificateDn() { - return certificateDn; - } - - /**인증 DN값을 설정한다. - * @param certificateDn 인증 DN값 - */ - public void setCertificateDn(String certificateDn) { - this.certificateDn = certificateDn; - } +package cokr.xit.base.user; + +/**업무 사용자 정보 + * @author mjkhan + */ +public class ManagedUser extends GenericUser { + private static final long serialVersionUID = 1L; + private String + empNo, + residentRegNo, + orgID, + gender, + birthday, + positionName, + institute, + certificateDn; + + @Override + public String getType() { + return "USR03"; //"usr"; + } + + /**사번을 반환한다. + * @return empNo 사번 + */ + public String getEmpNo() { + return empNo; + } + + /**사번을 설정한다. + * @param empNo 사번 + */ + public void setEmpNo(String empNo) { + this.empNo = empNo; + } + + /**주민등록번호를 반환한다. + * @return 주민등록번호 + */ + public String getResidentRegNo() { + return residentRegNo; + } + + /**주민등록번호를 설정한다. + * @param residentNo 주민등록번호 + */ + public void setResidentRegNo(String residentNo) { + this.residentRegNo = residentNo; + } + + /**조직ID를 반환한다. + * @return 조직ID + */ + public String getOrgID() { + return orgID; + } + + /**조직ID를 설정한다. + * @param orgID 조직ID + */ + public void setOrgID(String orgID) { + this.orgID = orgID; + } + + /**성별을 반환한다. + * @return gender 성별코드 + */ + public String getGender() { + return gender; + } + + /**성별을 설정한다. + * @param gender 성별코드 + */ + public void setGender(String gender) { + this.gender = gender; + } + + /**생년월일을 반환한다. + * @return 생년월일 + */ + public String getBirthday() { + return birthday; + } + + /**생년월일을 설정한다. + * @param birthday 생년월일 + */ + public void setBirthday(String birthday) { + this.birthday = birthday; + } + + /**직위이름을 반환한다. + * @return 직위이름 + */ + public String getPositionName() { + return positionName; + } + + /**직위이름을 설정한다. + * @param positionName 직위이름 + */ + public void setPositionName(String positionName) { + this.positionName = positionName; + } + + /**소속기관을 반환한다. + * @return 소속기관 코드 + */ + public String getInstitute() { + return institute; + } + + /**소속기관을 설정한다. + * @param insititute 소속기관 코드 + */ + public void setInstitute(String insititute) { + this.institute = insititute; + } + + /**인증 DN값을 반환한다. + * @return 인증 DN값 + */ + public String getCertificateDn() { + return certificateDn; + } + + /**인증 DN값을 설정한다. + * @param certificateDn 인증 DN값 + */ + public void setCertificateDn(String certificateDn) { + this.certificateDn = certificateDn; + } } \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/MemberUser.java b/src/main/java/cokr/xit/base/user/MemberUser.java index 9d3f471..c6c9125 100644 --- a/src/main/java/cokr/xit/base/user/MemberUser.java +++ b/src/main/java/cokr/xit/base/user/MemberUser.java @@ -1,28 +1,28 @@ -package cokr.xit.base.user; - -/**회원 사용자 정보 - * @author mjkhan - */ -public class MemberUser extends GenericUser { - private static final long serialVersionUID = 1L; - private String gender; - - @Override - public String getType() { - return "USR01"; //"gnr"; - } - - /**성별을 반환한다. - * @return 성별코드 - */ - public String getGender() { - return gender; - } - - /**성별을 설정한다. - * @param gender 성별코드 - */ - public void setGender(String gender) { - this.gender = gender; - } +package cokr.xit.base.user; + +/**회원 사용자 정보 + * @author mjkhan + */ +public class MemberUser extends GenericUser { + private static final long serialVersionUID = 1L; + private String gender; + + @Override + public String getType() { + return "USR01"; //"gnr"; + } + + /**성별을 반환한다. + * @return 성별코드 + */ + public String getGender() { + return gender; + } + + /**성별을 설정한다. + * @param gender 성별코드 + */ + public void setGender(String gender) { + this.gender = gender; + } } \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/dao/UserMapper.java b/src/main/java/cokr/xit/base/user/dao/UserMapper.java index b38cb85..5458279 100644 --- a/src/main/java/cokr/xit/base/user/dao/UserMapper.java +++ b/src/main/java/cokr/xit/base/user/dao/UserMapper.java @@ -1,147 +1,147 @@ -package cokr.xit.base.user.dao; - -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; -import java.util.stream.Stream; - -import org.egovframe.rte.psl.dataaccess.mapper.Mapper; - -import cokr.xit.base.user.service.UserQuery; -import cokr.xit.foundation.User; -import cokr.xit.foundation.component.AbstractMapper; -import cokr.xit.foundation.data.DataObject; - -/** 사용자 정보 DAO */ -@Mapper("userMapper") -public interface UserMapper extends AbstractMapper { - /**주어진 조건에 따라 사용자 목록을 조회하여 반환한다.
- * @param req 사용자 조회 요청 - *

by는 조건필드 - *

- * @return 사용자 목록 - */ - List getUserList(UserQuery req); - - /**지정한 아이디의 사용자들을 반환한다. - * @param 사용자 타입 - * @param req 사용자 아이디를 설정한 요청 - * @return 사용자 목록 - */ - List getUsers(UserQuery req); - - /**지정한 아이디의 사용자들을 반환한다. - * @param 사용자 타입 - * @param userID 사용자 아이디 - * @return 사용자 - */ - default List getUsers(String... userIDs) { - return getUsers(new UserQuery().setUserIDs(userIDs).setOrderBy("USER_ID")); - } - - /**지정한 아이디의 사용자를 반환한다. - * @param 사용자 타입 - * @param userID 사용자 아이디 - * @return 사용자 - */ - default T getUser(String userID) { - List users = getUsers(userID); - return !users.isEmpty() ? users.get(0) : null; - } - - /**사용자 정보를 등록한다. - * @param user 사용자 - * @return 저장된 정보수 - */ - int insertUser(User user); - - /**사용자 정보를 수정한다. - * @param user 사용자 - * @return 저장된 정보수 - */ - int updateUser(User user); - - /**지정한 사용자들의 비밀번호를 변경한다. - * @param params 파라미터 - *
{
-	 *     "userIDs":사용자 아이디 배열,
-	 *     "userPassword":[{"userID":사용자 아이디, "password":암호화한 비밀번호}]
-	 * }
- * @return 저장된 정보수 - */ - int changePassword(Map params); - - /**지정한 사용자들의 비밀번호를 변경한다. - * @param password 암호화한 비밀번호 - * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - default int changePassword(String password, String... userIDs) { - List userPasswords = Stream.of(userIDs) - .map(userID -> new DataObject().set("userID", userID).set("password", password)) - .collect(Collectors.toList()); - - return changePassword( - params() - .set("userIDs", userIDs) - .set("userPasswords", userPasswords) - ); - } - - /**지정한 사용자들을 잠금 또는 잠김해제한다. - * @param params 파라미터 - *
{
-	 *     "userIDs":사용자 아이디 배열,
-	 *     "lock": 잠금 여부(true || false)
-	 * }
- * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - int lockUsers(Map params); - - /**지정한 사용자들을 잠금 또는 잠김해제한다. - * @param lock 잠금 여부 - *
  • 잠금이면 true
  • - *
  • 잠김해제면 false
  • - *
- * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - default int lockUsers(boolean lock, String... userIDs) { - return lockUsers( - params() - .set("lock", lock) - .set("userIDs", userIDs) - ); - } - - /**지정한 사용자의 상태를 설정한다. - * @param params 파라미터 - *
{
-	 *     "userIDs": 사용자 아이디 배열,
-	 *     "status": 사용자 상태(A, P, D)
-	 * }
- * @return 저장된 정보수 - */ - int setStatus(Map params); - - /**지정한 사용자의 상태를 설정한다. - * @param status 사용자 상태 - *
  • 'A' - 신청
  • - *
  • 'P' - 승인
  • - *
  • 'D' - 삭제
  • - *
  • 지정하지 않으면 삭제되지 않은 전체 사용자
  • - *
- * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - default int setStatus(String status, String... userIDs) { - return setStatus( - params() - .set("status", status) - .set("userIDs", userIDs) - ); - } +package cokr.xit.base.user.dao; + +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +import org.egovframe.rte.psl.dataaccess.mapper.Mapper; + +import cokr.xit.base.user.service.UserQuery; +import cokr.xit.foundation.User; +import cokr.xit.foundation.component.AbstractMapper; +import cokr.xit.foundation.data.DataObject; + +/** 사용자 정보 DAO */ +@Mapper("userMapper") +public interface UserMapper extends AbstractMapper { + /**주어진 조건에 따라 사용자 목록을 조회하여 반환한다.
+ * @param req 사용자 조회 요청 + *

by는 조건필드 + *

  • 'userName' - 사용자 이름(디폴트)
  • + *
  • 'userID' - 사용자 아이디
  • + *
+ * @return 사용자 목록 + */ + List getUserList(UserQuery req); + + /**지정한 아이디의 사용자들을 반환한다. + * @param 사용자 타입 + * @param req 사용자 아이디를 설정한 요청 + * @return 사용자 목록 + */ + List getUsers(UserQuery req); + + /**지정한 아이디의 사용자들을 반환한다. + * @param 사용자 타입 + * @param userID 사용자 아이디 + * @return 사용자 + */ + default List getUsers(String... userIDs) { + return getUsers(new UserQuery().setUserIDs(userIDs).setOrderBy("USER_ID")); + } + + /**지정한 아이디의 사용자를 반환한다. + * @param 사용자 타입 + * @param userID 사용자 아이디 + * @return 사용자 + */ + default T getUser(String userID) { + List users = getUsers(userID); + return !users.isEmpty() ? users.get(0) : null; + } + + /**사용자 정보를 등록한다. + * @param user 사용자 + * @return 저장된 정보수 + */ + int insertUser(User user); + + /**사용자 정보를 수정한다. + * @param user 사용자 + * @return 저장된 정보수 + */ + int updateUser(User user); + + /**지정한 사용자들의 비밀번호를 변경한다. + * @param params 파라미터 + *
{
+	 *     "userIDs":사용자 아이디 배열,
+	 *     "userPassword":[{"userID":사용자 아이디, "password":암호화한 비밀번호}]
+	 * }
+ * @return 저장된 정보수 + */ + int changePassword(Map params); + + /**지정한 사용자들의 비밀번호를 변경한다. + * @param password 암호화한 비밀번호 + * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + default int changePassword(String password, String... userIDs) { + List userPasswords = Stream.of(userIDs) + .map(userID -> new DataObject().set("userID", userID).set("password", password)) + .collect(Collectors.toList()); + + return changePassword( + params() + .set("userIDs", userIDs) + .set("userPasswords", userPasswords) + ); + } + + /**지정한 사용자들을 잠금 또는 잠김해제한다. + * @param params 파라미터 + *
{
+	 *     "userIDs":사용자 아이디 배열,
+	 *     "lock": 잠금 여부(true || false)
+	 * }
+ * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + int lockUsers(Map params); + + /**지정한 사용자들을 잠금 또는 잠김해제한다. + * @param lock 잠금 여부 + *
  • 잠금이면 true
  • + *
  • 잠김해제면 false
  • + *
+ * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + default int lockUsers(boolean lock, String... userIDs) { + return lockUsers( + params() + .set("lock", lock) + .set("userIDs", userIDs) + ); + } + + /**지정한 사용자의 상태를 설정한다. + * @param params 파라미터 + *
{
+	 *     "userIDs": 사용자 아이디 배열,
+	 *     "status": 사용자 상태(A, P, D)
+	 * }
+ * @return 저장된 정보수 + */ + int setStatus(Map params); + + /**지정한 사용자의 상태를 설정한다. + * @param status 사용자 상태 + *
  • 'A' - 신청
  • + *
  • 'P' - 승인
  • + *
  • 'D' - 삭제
  • + *
  • 지정하지 않으면 삭제되지 않은 전체 사용자
  • + *
+ * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + default int setStatus(String status, String... userIDs) { + return setStatus( + params() + .set("status", status) + .set("userIDs", userIDs) + ); + } } \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/dao/package-info.java b/src/main/java/cokr/xit/base/user/dao/package-info.java index 85f3d73..1b34df7 100644 --- a/src/main/java/cokr/xit/base/user/dao/package-info.java +++ b/src/main/java/cokr/xit/base/user/dao/package-info.java @@ -1,3 +1,3 @@ -/**사용자 정보 테이블 접근 객체 - */ +/**사용자 정보 테이블 접근 객체 + */ package cokr.xit.base.user.dao; \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/package-info.java b/src/main/java/cokr/xit/base/user/package-info.java index cd6461d..fbdbcf9 100644 --- a/src/main/java/cokr/xit/base/user/package-info.java +++ b/src/main/java/cokr/xit/base/user/package-info.java @@ -1,15 +1,15 @@ -/**사용자 정보 관리 모듈. - *

  • 사용자 클래스로 ManagedUser를 디폴트로 사용하고 있다.
  • - *
  • 사용자 정보는 데이터베이스의 TBL_USER 테이블에 저장하여 관리한다
  • - *
  • 사용자 클래스를 변경하려면 - *
    • 변경하려는 사용자 정보 클래스를 선택하거나 새로 정의한다.
    • - *
    • 필요할 경우 TBL_USER 테이블을 수정한다.
    • - *
    • user.xml 파일의 내용을 수정한다.
    • - *
    - *
  • - *
- *
  • 배포 모듈: xit-user-yy.mm.dd.jar
  • - *
  • 의존 모듈: {@link cokr.xit.foundation xit-foundation-yy.mm.dd.jar}
  • - *
- */ +/**사용자 정보 관리 모듈. + *

  • 사용자 클래스로 ManagedUser를 디폴트로 사용하고 있다.
  • + *
  • 사용자 정보는 데이터베이스의 TBL_USER 테이블에 저장하여 관리한다
  • + *
  • 사용자 클래스를 변경하려면 + *
    • 변경하려는 사용자 정보 클래스를 선택하거나 새로 정의한다.
    • + *
    • 필요할 경우 TBL_USER 테이블을 수정한다.
    • + *
    • user.xml 파일의 내용을 수정한다.
    • + *
    + *
  • + *
+ *
  • 배포 모듈: xit-user-yy.mm.dd.jar
  • + *
  • 의존 모듈: {@link cokr.xit.foundation xit-foundation-yy.mm.dd.jar}
  • + *
+ */ package cokr.xit.base.user; \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/service/UserQuery.java b/src/main/java/cokr/xit/base/user/service/UserQuery.java index 2f6654e..24d1a21 100644 --- a/src/main/java/cokr/xit/base/user/service/UserQuery.java +++ b/src/main/java/cokr/xit/base/user/service/UserQuery.java @@ -1,74 +1,74 @@ -package cokr.xit.base.user.service; - -import cokr.xit.foundation.component.QueryRequest; - -/**사용자 정보 조회 요청 - * @author mjkhan - */ -public class UserQuery extends QueryRequest { - private static final long serialVersionUID = 1L; - - private boolean password; - private String[] userIDs; - private String status; - - /**비밀번호 필드포함 여부를 반환한다. - * @return 비밀번호 필드포함 여부 - *
  • 비밀번호 필드를 포함하려면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - public boolean isPassword() { - return password; - } - - /**비밀번호 필드포함 여부를 설정한다. - * @param password 비밀번호 필드포함 여부 - *
  • 비밀번호 필드를 포함하려면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - public void setPassword(boolean password) { - this.password = password; - } - - /**사용자 아이디를 반환한다. - * @return 사용자 아이디 - */ - public String[] getUserIDs() { - return ifEmpty(userIDs, () -> null); - } - - /**사용자 아이디를 설정한다. - * @param userIDs 사용자 아이디 - * @returns UserQuery - */ - public T setUserIDs(String... userIDs) { - this.userIDs = userIDs; - return self(); - } - - /**사용자 상태를 반환한다. - * @return 사용자 상태 - *
  • 'A' - 신청
  • - *
  • 'P' - 승인
  • - *
  • 'D' - 삭제
  • - *
  • 지정하지 않으면 삭제되지 않은 전체 사용자
  • - *
- */ - public String getStatus() { - return status; - } - - /**사용자 상태를 설정한다. - * @param status 사용자 상태 - *
  • 'A' - 신청
  • - *
  • 'P' - 승인
  • - *
  • 'D' - 삭제
  • - *
  • 지정하지 않으면 삭제되지 않은 전체 사용자
  • - *
- */ - public void setStatus(String status) { - this.status = status; - } +package cokr.xit.base.user.service; + +import cokr.xit.foundation.component.QueryRequest; + +/**사용자 정보 조회 요청 + * @author mjkhan + */ +public class UserQuery extends QueryRequest { + private static final long serialVersionUID = 1L; + + private boolean password; + private String[] userIDs; + private String status; + + /**비밀번호 필드포함 여부를 반환한다. + * @return 비밀번호 필드포함 여부 + *
  • 비밀번호 필드를 포함하려면 true
  • + *
  • 그렇지 않으면 false
  • + *
+ */ + public boolean isPassword() { + return password; + } + + /**비밀번호 필드포함 여부를 설정한다. + * @param password 비밀번호 필드포함 여부 + *
  • 비밀번호 필드를 포함하려면 true
  • + *
  • 그렇지 않으면 false
  • + *
+ */ + public void setPassword(boolean password) { + this.password = password; + } + + /**사용자 아이디를 반환한다. + * @return 사용자 아이디 + */ + public String[] getUserIDs() { + return ifEmpty(userIDs, () -> null); + } + + /**사용자 아이디를 설정한다. + * @param userIDs 사용자 아이디 + * @returns UserQuery + */ + public T setUserIDs(String... userIDs) { + this.userIDs = userIDs; + return self(); + } + + /**사용자 상태를 반환한다. + * @return 사용자 상태 + *
  • 'A' - 신청
  • + *
  • 'P' - 승인
  • + *
  • 'D' - 삭제
  • + *
  • 지정하지 않으면 삭제되지 않은 전체 사용자
  • + *
+ */ + public String getStatus() { + return status; + } + + /**사용자 상태를 설정한다. + * @param status 사용자 상태 + *
  • 'A' - 신청
  • + *
  • 'P' - 승인
  • + *
  • 'D' - 삭제
  • + *
  • 지정하지 않으면 삭제되지 않은 전체 사용자
  • + *
+ */ + public void setStatus(String status) { + this.status = status; + } } \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/service/UserService.java b/src/main/java/cokr/xit/base/user/service/UserService.java index eed780b..d81ea1f 100644 --- a/src/main/java/cokr/xit/base/user/service/UserService.java +++ b/src/main/java/cokr/xit/base/user/service/UserService.java @@ -1,87 +1,87 @@ -package cokr.xit.base.user.service; - -import java.util.List; - -import cokr.xit.foundation.User; -import cokr.xit.foundation.data.DataObject; - -/**사용자 관리 서비스를 제공한다. - *
  • {@link #getUserList(UserQuery) 사용자 정보 조회}
  • - *
  • {@link #getUsers(String...) 사용자 가져오기}
  • - *
  • {@link #create(User) 사용자 정보 등록}
  • - *
  • {@link #update(User) 사용자 정보 수정}
  • - *
  • {@link #changePassword(String, String...) 사용자 비밀번호 변경}
  • - *
  • {@link #approve(String...) 사용자 가입신청 승인}
  • - *
  • {@link #lock(boolean, String...) 사용자 잠금}
  • - *
  • {@link #remove(String...) 사용자 제거}
  • - *
- * @author mjkhan - */ -public interface UserService { - /**주어진 조건에 따라 사용자 목록을 조회하여 반환한다.
- * @param req 사용자 조회 요청 - * @return 사용자 목록 - */ - List getUserList(UserQuery req); - - /**지정한 아이디의 사용자들을 반환한다. - * @param 사용자 타입 - * @param userIDs 사용자 아이디 - * @return 사용자 목록 - */ - List getUsers(String... userIDs); - - /**지정한 아이디의 사용자를 반환한다. - * @param 사용자 타입 - * @param userID 사용자 아이디 - * @return 사용자 - */ - T getUser(String userID); - - /**사용자 정보를 등록한다. 사용자 정보 등록 시 {@link cokr.xit.foundation.util.CharsEncoder 비밀번호는 암호화}하여 저장한다. - * @param user 사용자 - * @return 등록 결과 - *
  • 등록됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - boolean create(User user); - - /**사용자 정보를 수정한다. - * @param user 사용자 - * @return 수정 결과 - *
  • 수정됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - boolean update(User user); - - /**지정한 사용자들의 비밀번호를 변경한다. {@link cokr.xit.foundation.util.CharsEncoder 비밀번호는 암호화}하여 저장한다. - * @param password 새 비밀번호 - * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - int changePassword(String password, String... userIDs); - - /**지정한 사용자들을 잠금 또는 잠김해제한다. - * @param lock 잠김 여부 - *
  • 잠금이면 true
  • - *
  • 잠김해제면 false
  • - *
- * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - int lock(boolean lock, String... userIDs); - - /**지정한 사용자들의 가입신청을 승인한다. - * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - int approve(String... userIDs); - - /**지정한 사용자들을 제거한다. - * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - int remove(String... userIDs); +package cokr.xit.base.user.service; + +import java.util.List; + +import cokr.xit.foundation.User; +import cokr.xit.foundation.data.DataObject; + +/**사용자 관리 서비스를 제공한다. + *
  • {@link #getUserList(UserQuery) 사용자 정보 조회}
  • + *
  • {@link #getUsers(String...) 사용자 가져오기}
  • + *
  • {@link #create(User) 사용자 정보 등록}
  • + *
  • {@link #update(User) 사용자 정보 수정}
  • + *
  • {@link #changePassword(String, String...) 사용자 비밀번호 변경}
  • + *
  • {@link #approve(String...) 사용자 가입신청 승인}
  • + *
  • {@link #lock(boolean, String...) 사용자 잠금}
  • + *
  • {@link #remove(String...) 사용자 제거}
  • + *
+ * @author mjkhan + */ +public interface UserService { + /**주어진 조건에 따라 사용자 목록을 조회하여 반환한다.
+ * @param req 사용자 조회 요청 + * @return 사용자 목록 + */ + List getUserList(UserQuery req); + + /**지정한 아이디의 사용자들을 반환한다. + * @param 사용자 타입 + * @param userIDs 사용자 아이디 + * @return 사용자 목록 + */ + List getUsers(String... userIDs); + + /**지정한 아이디의 사용자를 반환한다. + * @param 사용자 타입 + * @param userID 사용자 아이디 + * @return 사용자 + */ + T getUser(String userID); + + /**사용자 정보를 등록한다. 사용자 정보 등록 시 {@link cokr.xit.foundation.util.CharsEncoder 비밀번호는 암호화}하여 저장한다. + * @param user 사용자 + * @return 등록 결과 + *
  • 등록됐으면 true
  • + *
  • 그렇지 않으면 false
  • + *
+ */ + boolean create(User user); + + /**사용자 정보를 수정한다. + * @param user 사용자 + * @return 수정 결과 + *
  • 수정됐으면 true
  • + *
  • 그렇지 않으면 false
  • + *
+ */ + boolean update(User user); + + /**지정한 사용자들의 비밀번호를 변경한다. {@link cokr.xit.foundation.util.CharsEncoder 비밀번호는 암호화}하여 저장한다. + * @param password 새 비밀번호 + * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + int changePassword(String password, String... userIDs); + + /**지정한 사용자들을 잠금 또는 잠김해제한다. + * @param lock 잠김 여부 + *
  • 잠금이면 true
  • + *
  • 잠김해제면 false
  • + *
+ * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + int lock(boolean lock, String... userIDs); + + /**지정한 사용자들의 가입신청을 승인한다. + * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + int approve(String... userIDs); + + /**지정한 사용자들을 제거한다. + * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + int remove(String... userIDs); } \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/service/bean/UserBean.java b/src/main/java/cokr/xit/base/user/service/bean/UserBean.java index 7a966dd..9759105 100644 --- a/src/main/java/cokr/xit/base/user/service/bean/UserBean.java +++ b/src/main/java/cokr/xit/base/user/service/bean/UserBean.java @@ -1,127 +1,127 @@ -package cokr.xit.base.user.service.bean; - -import java.util.List; - -import javax.annotation.Resource; - -import org.springframework.stereotype.Component; - -import cokr.xit.base.user.dao.UserMapper; -import cokr.xit.base.user.service.UserQuery; -import cokr.xit.foundation.AbstractComponent; -import cokr.xit.foundation.User; -import cokr.xit.foundation.data.DataObject; -import cokr.xit.foundation.util.CharsEncoder; - -/**사용자 정보 관리 Bean - */ -@Component("userBean") -public class UserBean extends AbstractComponent { - @Resource(name = "userMapper") - private UserMapper userMapper; - /** 사용자 비밀번호 인코더 */ - @Resource(name="passwordEncoder") - protected CharsEncoder passwordEncoder; - - /**주어진 조건에 따라 사용자 목록을 조회하여 반환한다.
- * @param req 사용자 조회 요청 - *

by는 조건필드 - *

  • 'userName' - 사용자 이름(디폴트)
  • - *
  • 'userID' - 사용자 아이디
  • - *
- * @return 사용자 목록 - */ - public List getUserList(UserQuery req) { - switch (ifEmpty(req.getBy(), () -> "")) { - case "userID": req.setBy("USER_ID"); break; - default: req.setBy("USER_NM"); break; - } - req.setOrderBy(req.getBy()); - return userMapper.getUserList(req); - } - - /**지정한 아이디의 사용자들을 반환한다. - * @param 사용자 타입 - * @param userIDs 사용자 아이디 - * @return 사용자 목록 - */ - public List getUsers(String... userIDs) { - return userMapper.getUsers(userIDs); - } - - /**지정한 아이디의 사용자를 반환한다. - * @param 사용자 타입 - * @param userID 사용자 아이디 - * @return 사용자 - */ - public T getUser(String userID) { - return userMapper.getUser(userID); - } - - /**사용자 정보를 등록한다. 사용자 정보 등록 시 {@link cokr.xit.foundation.util.CharsEncoder 비밀번호는 암호화}하여 저장한다. - * @param user 사용자 - * @return 등록 결과 - *
  • 등록됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - public boolean create(User user) { - if (user == null) return false; - - String userID = notEmpty(user.getId(), "user.id"); - User existing = getUser(userID); - if (existing != null) - throw applicationException(null) - .setMessage(message("duplicate.object", "사용자")); - - String password = user.getPassword(); - user.setPassword(passwordEncoder.encode(password)); - return userMapper.insertUser(user) > 0; - } - - /**사용자 정보를 수정한다. - * @param user 사용자 - * @return 수정 결과 - *
  • 수정됐으면 true
  • - *
  • 그렇지 않으면 false
  • - *
- */ - public boolean update(User user) { - return user!= null ? userMapper.updateUser(user) > 0 : false; - } - - /**지정한 사용자들의 비밀번호를 변경한다. {@link cokr.xit.foundation.util.CharsEncoder 비밀번호는 암호화}하여 저장한다. - * @param password 새 비밀번호 - * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - public int changePassword(String password, String... userIDs) { - return userMapper.changePassword(passwordEncoder.encode(password), userIDs); - } - - /**지정한 사용자들을 잠금 또는 잠김해제한다. - * @param lock 잠김 여부 - *
  • 잠금이면 true
  • - *
  • 잠김해제면 false
  • - *
- * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - public int lock(boolean lock, String... userIDs) { - return userMapper.lockUsers(lock, userIDs); - } - - /**지정한 사용자의 상태를 설정한다. - * @param status 사용자 상태 - *
  • 'A' - 신청
  • - *
  • 'P' - 승인
  • - *
  • 'D' - 삭제
  • - *
  • 지정하지 않으면 삭제되지 않은 전체 사용자
  • - *
- * @param userIDs 사용자 아이디 - * @return 저장된 정보수 - */ - public int setStatus(String status, String... userIDs) { - return userMapper.setStatus(status, userIDs); - } +package cokr.xit.base.user.service.bean; + +import java.util.List; + +import javax.annotation.Resource; + +import org.springframework.stereotype.Component; + +import cokr.xit.base.user.dao.UserMapper; +import cokr.xit.base.user.service.UserQuery; +import cokr.xit.foundation.AbstractComponent; +import cokr.xit.foundation.User; +import cokr.xit.foundation.data.DataObject; +import cokr.xit.foundation.util.CharsEncoder; + +/**사용자 정보 관리 Bean + */ +@Component("userBean") +public class UserBean extends AbstractComponent { + @Resource(name = "userMapper") + private UserMapper userMapper; + /** 사용자 비밀번호 인코더 */ + @Resource(name="passwordEncoder") + protected CharsEncoder passwordEncoder; + + /**주어진 조건에 따라 사용자 목록을 조회하여 반환한다.
+ * @param req 사용자 조회 요청 + *

by는 조건필드 + *

  • 'userName' - 사용자 이름(디폴트)
  • + *
  • 'userID' - 사용자 아이디
  • + *
+ * @return 사용자 목록 + */ + public List getUserList(UserQuery req) { + switch (ifEmpty(req.getBy(), () -> "")) { + case "userID": req.setBy("USER_ID"); break; + default: req.setBy("USER_NM"); break; + } + req.setOrderBy(req.getBy()); + return userMapper.getUserList(req); + } + + /**지정한 아이디의 사용자들을 반환한다. + * @param 사용자 타입 + * @param userIDs 사용자 아이디 + * @return 사용자 목록 + */ + public List getUsers(String... userIDs) { + return userMapper.getUsers(userIDs); + } + + /**지정한 아이디의 사용자를 반환한다. + * @param 사용자 타입 + * @param userID 사용자 아이디 + * @return 사용자 + */ + public T getUser(String userID) { + return userMapper.getUser(userID); + } + + /**사용자 정보를 등록한다. 사용자 정보 등록 시 {@link cokr.xit.foundation.util.CharsEncoder 비밀번호는 암호화}하여 저장한다. + * @param user 사용자 + * @return 등록 결과 + *
  • 등록됐으면 true
  • + *
  • 그렇지 않으면 false
  • + *
+ */ + public boolean create(User user) { + if (user == null) return false; + + String userID = notEmpty(user.getId(), "user.id"); + User existing = getUser(userID); + if (existing != null) + throw applicationException(null) + .setMessage(message("duplicate.object", "사용자")); + + String password = user.getPassword(); + user.setPassword(passwordEncoder.encode(password)); + return userMapper.insertUser(user) > 0; + } + + /**사용자 정보를 수정한다. + * @param user 사용자 + * @return 수정 결과 + *
  • 수정됐으면 true
  • + *
  • 그렇지 않으면 false
  • + *
+ */ + public boolean update(User user) { + return user!= null ? userMapper.updateUser(user) > 0 : false; + } + + /**지정한 사용자들의 비밀번호를 변경한다. {@link cokr.xit.foundation.util.CharsEncoder 비밀번호는 암호화}하여 저장한다. + * @param password 새 비밀번호 + * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + public int changePassword(String password, String... userIDs) { + return userMapper.changePassword(passwordEncoder.encode(password), userIDs); + } + + /**지정한 사용자들을 잠금 또는 잠김해제한다. + * @param lock 잠김 여부 + *
  • 잠금이면 true
  • + *
  • 잠김해제면 false
  • + *
+ * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + public int lock(boolean lock, String... userIDs) { + return userMapper.lockUsers(lock, userIDs); + } + + /**지정한 사용자의 상태를 설정한다. + * @param status 사용자 상태 + *
  • 'A' - 신청
  • + *
  • 'P' - 승인
  • + *
  • 'D' - 삭제
  • + *
  • 지정하지 않으면 삭제되지 않은 전체 사용자
  • + *
+ * @param userIDs 사용자 아이디 + * @return 저장된 정보수 + */ + public int setStatus(String status, String... userIDs) { + return userMapper.setStatus(status, userIDs); + } } \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/service/bean/UserServiceBean.java b/src/main/java/cokr/xit/base/user/service/bean/UserServiceBean.java index b6109f5..2b55e57 100644 --- a/src/main/java/cokr/xit/base/user/service/bean/UserServiceBean.java +++ b/src/main/java/cokr/xit/base/user/service/bean/UserServiceBean.java @@ -1,73 +1,73 @@ -package cokr.xit.base.user.service.bean; - -import java.util.List; - -import javax.annotation.Resource; - -import org.springframework.stereotype.Service; - -import cokr.xit.base.user.GenericUser; -import cokr.xit.base.user.service.UserQuery; -import cokr.xit.base.user.service.UserService; -import cokr.xit.foundation.User; -import cokr.xit.foundation.component.AbstractServiceBean; -import cokr.xit.foundation.data.DataObject; - -/**사용자 서비스 인터페이스의 구현체. - * @author mjkhan - */ -@Service("userService") -public class UserServiceBean extends AbstractServiceBean implements UserService { - /** 사용자 정보 DAO */ - @Resource(name="userBean") - protected UserBean userBean; - - @Override - public List getUserList(UserQuery req) { - return userBean.getUserList(req); - } - - @Override - public List getUsers(String... userIDs) { - return userBean.getUsers(userIDs); - } - - @Override - public T getUser(String userID) { - return userBean.getUser(userID); - } - - @Override - public boolean create(User user) { - return userBean.create(user); - } - - @Override - public boolean update(User user) { - return userBean.update(user); - } - - @Override - public int changePassword(String password, String... userIDs) { - return userBean.changePassword(password, userIDs); - } - - @Override - public int lock(boolean lock, String... userIDs) { - return userBean.lock(lock, userIDs); - } - - @Override - public int approve(String... userIDs) { - return !isEmpty(userIDs) ? - userBean.setStatus(GenericUser.Status.APPROVED.code(), userIDs) : - 0; - } - - @Override - public int remove(String... userIDs) { - return !isEmpty(userIDs) ? - userBean.setStatus(GenericUser.Status.REMOVED.code(), userIDs) : - 0; - } +package cokr.xit.base.user.service.bean; + +import java.util.List; + +import javax.annotation.Resource; + +import org.springframework.stereotype.Service; + +import cokr.xit.base.user.GenericUser; +import cokr.xit.base.user.service.UserQuery; +import cokr.xit.base.user.service.UserService; +import cokr.xit.foundation.User; +import cokr.xit.foundation.component.AbstractServiceBean; +import cokr.xit.foundation.data.DataObject; + +/**사용자 서비스 인터페이스의 구현체. + * @author mjkhan + */ +@Service("userService") +public class UserServiceBean extends AbstractServiceBean implements UserService { + /** 사용자 정보 DAO */ + @Resource(name="userBean") + protected UserBean userBean; + + @Override + public List getUserList(UserQuery req) { + return userBean.getUserList(req); + } + + @Override + public List getUsers(String... userIDs) { + return userBean.getUsers(userIDs); + } + + @Override + public T getUser(String userID) { + return userBean.getUser(userID); + } + + @Override + public boolean create(User user) { + return userBean.create(user); + } + + @Override + public boolean update(User user) { + return userBean.update(user); + } + + @Override + public int changePassword(String password, String... userIDs) { + return userBean.changePassword(password, userIDs); + } + + @Override + public int lock(boolean lock, String... userIDs) { + return userBean.lock(lock, userIDs); + } + + @Override + public int approve(String... userIDs) { + return !isEmpty(userIDs) ? + userBean.setStatus(GenericUser.Status.APPROVED.code(), userIDs) : + 0; + } + + @Override + public int remove(String... userIDs) { + return !isEmpty(userIDs) ? + userBean.setStatus(GenericUser.Status.REMOVED.code(), userIDs) : + 0; + } } \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/service/bean/package-info.java b/src/main/java/cokr/xit/base/user/service/bean/package-info.java index 75bca97..8399969 100644 --- a/src/main/java/cokr/xit/base/user/service/bean/package-info.java +++ b/src/main/java/cokr/xit/base/user/service/bean/package-info.java @@ -1,3 +1,3 @@ -/**사용자 서비스 구현부 - */ +/**사용자 서비스 구현부 + */ package cokr.xit.base.user.service.bean; \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/service/package-info.java b/src/main/java/cokr/xit/base/user/service/package-info.java index 3836fb5..9ed1748 100644 --- a/src/main/java/cokr/xit/base/user/service/package-info.java +++ b/src/main/java/cokr/xit/base/user/service/package-info.java @@ -1,3 +1,3 @@ -/**사용자 서비스 인터페이스 - */ +/**사용자 서비스 인터페이스 + */ package cokr.xit.base.user.service; \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/web/UserController.java b/src/main/java/cokr/xit/base/user/web/UserController.java index 546c30c..25c09e1 100644 --- a/src/main/java/cokr/xit/base/user/web/UserController.java +++ b/src/main/java/cokr/xit/base/user/web/UserController.java @@ -1,197 +1,197 @@ -package cokr.xit.base.user.web; - -import java.util.List; - -import javax.annotation.Resource; - -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.servlet.ModelAndView; - -import cokr.xit.base.user.service.UserQuery; -import cokr.xit.base.user.service.UserService; -import cokr.xit.foundation.User; -import cokr.xit.foundation.data.DataObject; -import cokr.xit.foundation.web.AbstractController; - -/**사용자 서비스의 웹 컨트롤러.
- * {웹컨텍스트}/user/*로 접근할 수 있다. - * @param 사용자 유형 - * @author mjkhan - */ -@RequestMapping(name="사용자", value="/user") -public class UserController extends AbstractController { - /**사용자 서비스*/ - @Resource(name="userService") - protected UserService userService; - - /**사용자 관리 메인화면(user/user-main)을 연다. - * 조건없는 {@link #getUserList(UserQuery) 사용자 조회 결과}를 포함시킨다. - * @return ModelAndView - * - */ - @RequestMapping(name="사용자 메인", value="/main.do") - public ModelAndView main() { - ModelAndView mav = getUserList(new UserQuery().setPageNum(1)); - mav.setViewName("base/user/user-main"); - return mav.addObject("userList", toJson(mav.getModel().get("userList"))); - } - - /**{@link UserService#getUserList(UserQuery)} 참고. - * @param req 사용자 조회 요청 - * @return jsonView - *
{
-	 *     "userList": [...], // 사용자 목록
-	 *     "userStart": 0,    // 사용자 목록 시작 인덱스
-	 *     "userFetch": 10,   // 한 번에 가져오는 사용자 목록 수
-	 *     "userTotal":       // 조회 결과 찾은 전체 사용자 수
-	 * }
- */ - @RequestMapping(name="사용자 조회", value="/list.do") - public ModelAndView getUserList(UserQuery req) { - List result = userService.getUserList(setFetchSize(req)); - return setCollectionInfo(new ModelAndView("jsonView"), result, "user"); - } - - /**사용자 선택을 위한 화면을 연다. - * @return "base/user/select-user" - */ - @RequestMapping(name="사용자 선택", value="/select.do") - public ModelAndView select(boolean multiple) { - ModelAndView mav = getUserList(new UserQuery().setPageNum(1)); - mav.setViewName("base/user/select-user"); - List list = (List)mav.getModel().remove("userList"); - return mav.addObject("userList", toJson(list)); - } - - /**지정한 사용자 아이디가 사용 중인지 반환한다. - * @param userID 사용자 아이디 - * @return - *
{
-	 *     "duplicate": true || false // 사용 중이면 true, 그렇지 않으면 false
-	 * }
- */ - @RequestMapping(name="중복 확인", value="/duplicate.do") - public ModelAndView isDuplicate(String userID) { - U user = userService.getUser(userID); - return new ModelAndView("jsonView") - .addObject("duplicate", user != null); - } - - /**지정한 아이디의 사용자 정보를 반환한다. - * @param userID 사용자 아이디 - * @return jsonView - *
{
-	 *     "userInfo": 사용자 정보(map)
-	 * }
- */ - @RequestMapping(name="사용자 정보 조회", value="/info.do") - public ModelAndView getInfo(String userID) { - if (!isEmpty(userID)) { - UserQuery req = new UserQuery() - .setBy("userID") - .setTerm(userID); - List userList = userService.getUserList(req); - DataObject userInfo = !userList.isEmpty() ? userList.get(0) : null; - boolean json = jsonResponse(); - return new ModelAndView(json ? "jsonView" : "base/user/user-info") - .addObject("userInfo", json ? userInfo : toJson(userInfo)); - } else { - return new ModelAndView("base/user/user-info"); - } - } - - /**사용자를 등록한다. - * @param user 사용자 정보 - * @return - *
{
-	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
-	 * }
- */ - @PostMapping(name="사용자 등록", value="/create.do") - public ModelAndView create(U user) { - boolean saved = userService.create(user); - return new ModelAndView("jsonView") - .addObject("saved", saved); - } - - /**사용자 정보를 수정한다. - * @param user 사용자 정보 - * @return - *
{
-	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
-	 * }
- */ - @PostMapping(name="사용자 수정", value="/update.do") - public ModelAndView update(U user) { - boolean saved = userService.update(user); - return new ModelAndView("jsonView") - .addObject("saved", saved); - } - - /**사용자 비밀번호를 변경한다. - * @param userID 사용자 아이디 - * @param password 비밀번호 - * @return - *
{
-	 *     "affected": 1, // 저장된 정보수
-	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
-	 * }
- */ - @PostMapping(name="비밀번호 변경", value="/changePassword.do") - public ModelAndView changePassword(String userID, String password) { - int affected = userService.changePassword(password, userID); - return new ModelAndView("jsonView") - .addObject("affected", affected) - .addObject("saved", affected > 0); - } - - /**사용자 가입신청을 승인한다. - * @param userIDs 사용자 아이디 - * @return - *
{
-	 *     "affected": 1, // 저장된 정보수
-	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
-	 * }
- */ - @PostMapping(name="사용자 가입 승인", value="/approve.do") - public ModelAndView approve(String... userIDs) { - int affected = userService.approve(userIDs); - return new ModelAndView("jsonView") - .addObject("affected", affected) - .addObject("saved", affected > 0); - } - - /**사용자 잠금이나 잠금해제를 수행한다. - * @param lock 잠금 여부(잠그면 true, 잠금을 해제하면 false) - * @param userIDs 사용자 아이디 - * @return - *
{
-	 *     "affected": 1, // 저장된 정보수
-	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
-	 * }
- */ - @PostMapping(name="사용자 잠김/잠김해제", value="/unlock.do") - public ModelAndView lock(boolean lock, String... userIDs) { - int affected = userService.lock(lock, userIDs); - return new ModelAndView("jsonView") - .addObject("affected", affected) - .addObject("saved", affected > 0); - } - - /**지정한 사용자를 제거한다. - * @param userIDs 사용자 아이디 - * @return - *
{
-	 *     "affected": 1, // 저장된 정보수
-	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
-	 * }
- */ - @PostMapping(name="사용자 제거", value="/remove.do") - public ModelAndView remove(String... userIDs) { - int affected = userService.remove(userIDs); - return new ModelAndView("jsonView") - .addObject("affected", affected) - .addObject("saved", affected > 0); - } +package cokr.xit.base.user.web; + +import java.util.List; + +import javax.annotation.Resource; + +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.servlet.ModelAndView; + +import cokr.xit.base.user.service.UserQuery; +import cokr.xit.base.user.service.UserService; +import cokr.xit.foundation.User; +import cokr.xit.foundation.data.DataObject; +import cokr.xit.foundation.web.AbstractController; + +/**사용자 서비스의 웹 컨트롤러.
+ * {웹컨텍스트}/user/*로 접근할 수 있다. + * @param 사용자 유형 + * @author mjkhan + */ +@RequestMapping(name="사용자", value="/user") +public class UserController extends AbstractController { + /**사용자 서비스*/ + @Resource(name="userService") + protected UserService userService; + + /**사용자 관리 메인화면(user/user-main)을 연다. + * 조건없는 {@link #getUserList(UserQuery) 사용자 조회 결과}를 포함시킨다. + * @return ModelAndView + * + */ + @RequestMapping(name="사용자 메인", value="/main.do") + public ModelAndView main() { + ModelAndView mav = getUserList(new UserQuery().setPageNum(1)); + mav.setViewName("base/user/user-main"); + return mav.addObject("userList", toJson(mav.getModel().get("userList"))); + } + + /**{@link UserService#getUserList(UserQuery)} 참고. + * @param req 사용자 조회 요청 + * @return jsonView + *
{
+	 *     "userList": [...], // 사용자 목록
+	 *     "userStart": 0,    // 사용자 목록 시작 인덱스
+	 *     "userFetch": 10,   // 한 번에 가져오는 사용자 목록 수
+	 *     "userTotal":       // 조회 결과 찾은 전체 사용자 수
+	 * }
+ */ + @RequestMapping(name="사용자 조회", value="/list.do") + public ModelAndView getUserList(UserQuery req) { + List result = userService.getUserList(setFetchSize(req)); + return setCollectionInfo(new ModelAndView("jsonView"), result, "user"); + } + + /**사용자 선택을 위한 화면을 연다. + * @return "base/user/select-user" + */ + @RequestMapping(name="사용자 선택", value="/select.do") + public ModelAndView select(boolean multiple) { + ModelAndView mav = getUserList(new UserQuery().setPageNum(1)); + mav.setViewName("base/user/select-user"); + List list = (List)mav.getModel().remove("userList"); + return mav.addObject("userList", toJson(list)); + } + + /**지정한 사용자 아이디가 사용 중인지 반환한다. + * @param userID 사용자 아이디 + * @return + *
{
+	 *     "duplicate": true || false // 사용 중이면 true, 그렇지 않으면 false
+	 * }
+ */ + @RequestMapping(name="중복 확인", value="/duplicate.do") + public ModelAndView isDuplicate(String userID) { + U user = userService.getUser(userID); + return new ModelAndView("jsonView") + .addObject("duplicate", user != null); + } + + /**지정한 아이디의 사용자 정보를 반환한다. + * @param userID 사용자 아이디 + * @return jsonView + *
{
+	 *     "userInfo": 사용자 정보(map)
+	 * }
+ */ + @RequestMapping(name="사용자 정보 조회", value="/info.do") + public ModelAndView getInfo(String userID) { + if (!isEmpty(userID)) { + UserQuery req = new UserQuery() + .setBy("userID") + .setTerm(userID); + List userList = userService.getUserList(req); + DataObject userInfo = !userList.isEmpty() ? userList.get(0) : null; + boolean json = jsonResponse(); + return new ModelAndView(json ? "jsonView" : "base/user/user-info") + .addObject("userInfo", json ? userInfo : toJson(userInfo)); + } else { + return new ModelAndView("base/user/user-info"); + } + } + + /**사용자를 등록한다. + * @param user 사용자 정보 + * @return + *
{
+	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
+	 * }
+ */ + @PostMapping(name="사용자 등록", value="/create.do") + public ModelAndView create(U user) { + boolean saved = userService.create(user); + return new ModelAndView("jsonView") + .addObject("saved", saved); + } + + /**사용자 정보를 수정한다. + * @param user 사용자 정보 + * @return + *
{
+	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
+	 * }
+ */ + @PostMapping(name="사용자 수정", value="/update.do") + public ModelAndView update(U user) { + boolean saved = userService.update(user); + return new ModelAndView("jsonView") + .addObject("saved", saved); + } + + /**사용자 비밀번호를 변경한다. + * @param userID 사용자 아이디 + * @param password 비밀번호 + * @return + *
{
+	 *     "affected": 1, // 저장된 정보수
+	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
+	 * }
+ */ + @PostMapping(name="비밀번호 변경", value="/changePassword.do") + public ModelAndView changePassword(String userID, String password) { + int affected = userService.changePassword(password, userID); + return new ModelAndView("jsonView") + .addObject("affected", affected) + .addObject("saved", affected > 0); + } + + /**사용자 가입신청을 승인한다. + * @param userIDs 사용자 아이디 + * @return + *
{
+	 *     "affected": 1, // 저장된 정보수
+	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
+	 * }
+ */ + @PostMapping(name="사용자 가입 승인", value="/approve.do") + public ModelAndView approve(String... userIDs) { + int affected = userService.approve(userIDs); + return new ModelAndView("jsonView") + .addObject("affected", affected) + .addObject("saved", affected > 0); + } + + /**사용자 잠금이나 잠금해제를 수행한다. + * @param lock 잠금 여부(잠그면 true, 잠금을 해제하면 false) + * @param userIDs 사용자 아이디 + * @return + *
{
+	 *     "affected": 1, // 저장된 정보수
+	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
+	 * }
+ */ + @PostMapping(name="사용자 잠김/잠김해제", value="/unlock.do") + public ModelAndView lock(boolean lock, String... userIDs) { + int affected = userService.lock(lock, userIDs); + return new ModelAndView("jsonView") + .addObject("affected", affected) + .addObject("saved", affected > 0); + } + + /**지정한 사용자를 제거한다. + * @param userIDs 사용자 아이디 + * @return + *
{
+	 *     "affected": 1, // 저장된 정보수
+	 *     "saved": true || false // 저장되었으면 true, 그렇지 않으면 false
+	 * }
+ */ + @PostMapping(name="사용자 제거", value="/remove.do") + public ModelAndView remove(String... userIDs) { + int affected = userService.remove(userIDs); + return new ModelAndView("jsonView") + .addObject("affected", affected) + .addObject("saved", affected > 0); + } } \ No newline at end of file diff --git a/src/main/java/cokr/xit/base/user/web/package-info.java b/src/main/java/cokr/xit/base/user/web/package-info.java index 225a7d2..646776b 100644 --- a/src/main/java/cokr/xit/base/user/web/package-info.java +++ b/src/main/java/cokr/xit/base/user/web/package-info.java @@ -1,3 +1,3 @@ -/**사용자 서비스 웹 컨트롤러 - */ +/**사용자 서비스 웹 컨트롤러 + */ package cokr.xit.base.user.web; \ No newline at end of file diff --git a/src/test/java/cokr/xit/base/user/service/UserServiceTest.java b/src/test/java/cokr/xit/base/user/service/UserServiceTest.java index a578ff1..679a000 100644 --- a/src/test/java/cokr/xit/base/user/service/UserServiceTest.java +++ b/src/test/java/cokr/xit/base/user/service/UserServiceTest.java @@ -1,178 +1,178 @@ -package cokr.xit.base.user.service; - -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; -import java.util.stream.Stream; - -import javax.annotation.Resource; - -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; - -import cokr.xit.base.user.ManagedUser; -import cokr.xit.foundation.data.paging.BoundedList; -import cokr.xit.foundation.test.TestSupport; - -public class UserServiceTest extends TestSupport { - @Resource(name = "userService") - protected UserService userService; - - @Test - public void getUserList() { - UserQuery req = new UserQuery(); - List result = userService.getUserList(req); - Assertions.assertNotNull(result); - Assertions.assertFalse(result instanceof BoundedList); - req.setTerm("홍길"); - result = userService.getUserList(req); - Assertions.assertNotNull(result); - Assertions.assertFalse(result instanceof BoundedList); - req.setBy("userID"); - req.setTerm("user"); - req.setPageNum(1); - req.setFetchSize(10); - result = userService.getUserList(req); - Assertions.assertNotNull(result); - Assertions.assertTrue(result instanceof BoundedList); - BoundedList> bounded = (BoundedList>)result; - Assertions.assertEquals(bounded.isEmpty() ? -1 : 0, bounded.getStart()); - Assertions.assertEquals(req.getFetchSize(), bounded.getFetchSize()); - Assertions.assertEquals(bounded.getTotalSize(), bounded.isEmpty() ? 0 : toLong(bounded.get(0).get("TOT_CNT"))); - } - - @Test - public void getUsers() { - List result = userService.getUsers("user-00", "user-01"); - Assertions.assertNotNull(result); - } - - protected ManagedUser create(String userID) { - ManagedUser user = new ManagedUser(); - - user.setId(userID); - user.setName(userID + " name"); - user.setPassword(userID + "-password"); - - userService.create(user); - - return user; - } - - @Test - public void create() { - String userID = "test-user"; - ManagedUser user = create(userID); - ManagedUser loaded = userService.getUser(userID); - - Assertions.assertNotNull(user); - Assertions.assertEquals(user.getId(), loaded.getId()); - Assertions.assertEquals(user.getName(), loaded.getName()); - - testDao.execDelete("DELETE FROM TBL_USER WHERE USER_ID = '" + userID + "'"); - testDao.commit(); - } - - @Test - public void update() { - String userID = "test-user"; - ManagedUser user = create(userID); - - user.setKey("USER_KEY"); - user.setName("USER_NM"); - user.setPasswordHint("PASSWD_HINT"); - user.setPasswordHintAnswer("PASSWD_NSR"); - user.setEmpNo("EMP_NO"); - user.setResidentRegNo("RSDNT_NO"); - user.setGender("F"); - user.setBirthday("BIRTHDAY"); - user.setAreaNo("AREA_NO"); - user.setZipCode("ZIP000"); - user.setAddress("ADRS"); - user.setAddressDetail("ADRS_DTL"); - user.setPhoneNo("PHN_NO"); - user.setMobilePhoneNo("MBL_PHN_NO"); - user.setFaxNo("FX_NO"); - user.setEmailAddress("EML_ADRS"); - user.setPositionName("POS_NM"); - user.setGroupID("GRP_ID"); - user.setOrgID("ORG_ID"); - user.setInstitute("NSTT_CD"); - user.setCertificateDn("CRTFC_DN"); - - userService.update(user); - - ManagedUser loaded = userService.getUser(userID); - Assertions.assertNotNull(loaded); - Assertions.assertEquals(user.getKey(), loaded.getKey()); - Assertions.assertEquals(user.getName(), loaded.getName()); - Assertions.assertEquals(user.getPasswordHint(), loaded.getPasswordHint()); - Assertions.assertEquals(user.getPasswordHintAnswer(), loaded.getPasswordHintAnswer()); - Assertions.assertEquals(user.getEmpNo(), loaded.getEmpNo()); - Assertions.assertEquals(user.getResidentRegNo(), loaded.getResidentRegNo()); - Assertions.assertEquals(user.getGender(), loaded.getGender()); - Assertions.assertEquals(user.getBirthday(), loaded.getBirthday()); - Assertions.assertEquals(user.getAreaNo(), loaded.getAreaNo()); - Assertions.assertEquals(user.getZipCode(), loaded.getZipCode()); - Assertions.assertEquals(user.getAddress(), loaded.getAddress()); - Assertions.assertEquals(user.getAddressDetail(), loaded.getAddressDetail()); - Assertions.assertEquals(user.getPhoneNo(), loaded.getPhoneNo()); - Assertions.assertEquals(user.getMobilePhoneNo(), loaded.getMobilePhoneNo()); - Assertions.assertEquals(user.getFaxNo(), loaded.getFaxNo()); - Assertions.assertEquals(user.getEmailAddress(), loaded.getEmailAddress()); - Assertions.assertEquals(user.getPositionName(), loaded.getPositionName()); - Assertions.assertEquals(user.getGroupID(), loaded.getGroupID()); - Assertions.assertEquals(user.getOrgID(), loaded.getOrgID()); - Assertions.assertEquals(user.getInstitute(), loaded.getInstitute()); - Assertions.assertEquals(user.getCertificateDn(), loaded.getCertificateDn()); - - deleteUsers(userID); - } - - protected void deleteUsers(String... userIDs) { - String condition = Stream.of(userIDs) - .map(userID -> "'" + userID + "'") - .collect(Collectors.joining(",")); - - testDao.execDelete("DELETE FROM TBL_USER WHERE USER_ID IN (" + condition + ")"); - testDao.commit(); - } - - @Test - public void lockUsers() { - String[] userIDs = {"test-user-00", "test-user-01"}; - for (String userID: userIDs) - create(userID); - - userService.lock(true, userIDs); - List users = userService.getUsers(userIDs); - Assertions.assertEquals(userIDs.length, users.size()); - users.forEach(user -> Assertions.assertEquals("Y", user.getLocked())); - - userService.lock(false, userIDs); - users = userService.getUsers(userIDs); - Assertions.assertEquals(userIDs.length, users.size()); - users.forEach(user -> Assertions.assertEquals("N", user.getLocked())); - - deleteUsers(userIDs); - } - - @Test - public void setStatus() { - String[] userIDs = {"test-user-00", "test-user-01"}; - for (String userID: userIDs) - create(userID); - - userService.approve(userIDs); - List users = userService.getUsers(userIDs); - Assertions.assertEquals(userIDs.length, users.size()); - users.forEach(user -> Assertions.assertEquals("P", user.getStatus())); - - userService.remove(userIDs); - users = userService.getUsers(userIDs); - Assertions.assertEquals(userIDs.length, users.size()); - users.forEach(user -> Assertions.assertEquals("D", user.getStatus())); - - deleteUsers(userIDs); - } +package cokr.xit.base.user.service; + +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +import javax.annotation.Resource; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import cokr.xit.base.user.ManagedUser; +import cokr.xit.foundation.data.paging.BoundedList; +import cokr.xit.foundation.test.TestSupport; + +public class UserServiceTest extends TestSupport { + @Resource(name = "userService") + protected UserService userService; + + @Test + public void getUserList() { + UserQuery req = new UserQuery(); + List result = userService.getUserList(req); + Assertions.assertNotNull(result); + Assertions.assertFalse(result instanceof BoundedList); + req.setTerm("홍길"); + result = userService.getUserList(req); + Assertions.assertNotNull(result); + Assertions.assertFalse(result instanceof BoundedList); + req.setBy("userID"); + req.setTerm("user"); + req.setPageNum(1); + req.setFetchSize(10); + result = userService.getUserList(req); + Assertions.assertNotNull(result); + Assertions.assertTrue(result instanceof BoundedList); + BoundedList> bounded = (BoundedList>)result; + Assertions.assertEquals(bounded.isEmpty() ? -1 : 0, bounded.getStart()); + Assertions.assertEquals(req.getFetchSize(), bounded.getFetchSize()); + Assertions.assertEquals(bounded.getTotalSize(), bounded.isEmpty() ? 0 : toLong(bounded.get(0).get("TOT_CNT"))); + } + + @Test + public void getUsers() { + List result = userService.getUsers("user-00", "user-01"); + Assertions.assertNotNull(result); + } + + protected ManagedUser create(String userID) { + ManagedUser user = new ManagedUser(); + + user.setId(userID); + user.setName(userID + " name"); + user.setPassword(userID + "-password"); + + userService.create(user); + + return user; + } + + @Test + public void create() { + String userID = "test-user"; + ManagedUser user = create(userID); + ManagedUser loaded = userService.getUser(userID); + + Assertions.assertNotNull(user); + Assertions.assertEquals(user.getId(), loaded.getId()); + Assertions.assertEquals(user.getName(), loaded.getName()); + + testDao.execDelete("DELETE FROM TBL_USER WHERE USER_ID = '" + userID + "'"); + testDao.commit(); + } + + @Test + public void update() { + String userID = "test-user"; + ManagedUser user = create(userID); + + user.setKey("USER_KEY"); + user.setName("USER_NM"); + user.setPasswordHint("PASSWD_HINT"); + user.setPasswordHintAnswer("PASSWD_NSR"); + user.setEmpNo("EMP_NO"); + user.setResidentRegNo("RSDNT_NO"); + user.setGender("F"); + user.setBirthday("BIRTHDAY"); + user.setAreaNo("AREA_NO"); + user.setZipCode("ZIP000"); + user.setAddress("ADRS"); + user.setAddressDetail("ADRS_DTL"); + user.setPhoneNo("PHN_NO"); + user.setMobilePhoneNo("MBL_PHN_NO"); + user.setFaxNo("FX_NO"); + user.setEmailAddress("EML_ADRS"); + user.setPositionName("POS_NM"); + user.setGroupID("GRP_ID"); + user.setOrgID("ORG_ID"); + user.setInstitute("NSTT_CD"); + user.setCertificateDn("CRTFC_DN"); + + userService.update(user); + + ManagedUser loaded = userService.getUser(userID); + Assertions.assertNotNull(loaded); + Assertions.assertEquals(user.getKey(), loaded.getKey()); + Assertions.assertEquals(user.getName(), loaded.getName()); + Assertions.assertEquals(user.getPasswordHint(), loaded.getPasswordHint()); + Assertions.assertEquals(user.getPasswordHintAnswer(), loaded.getPasswordHintAnswer()); + Assertions.assertEquals(user.getEmpNo(), loaded.getEmpNo()); + Assertions.assertEquals(user.getResidentRegNo(), loaded.getResidentRegNo()); + Assertions.assertEquals(user.getGender(), loaded.getGender()); + Assertions.assertEquals(user.getBirthday(), loaded.getBirthday()); + Assertions.assertEquals(user.getAreaNo(), loaded.getAreaNo()); + Assertions.assertEquals(user.getZipCode(), loaded.getZipCode()); + Assertions.assertEquals(user.getAddress(), loaded.getAddress()); + Assertions.assertEquals(user.getAddressDetail(), loaded.getAddressDetail()); + Assertions.assertEquals(user.getPhoneNo(), loaded.getPhoneNo()); + Assertions.assertEquals(user.getMobilePhoneNo(), loaded.getMobilePhoneNo()); + Assertions.assertEquals(user.getFaxNo(), loaded.getFaxNo()); + Assertions.assertEquals(user.getEmailAddress(), loaded.getEmailAddress()); + Assertions.assertEquals(user.getPositionName(), loaded.getPositionName()); + Assertions.assertEquals(user.getGroupID(), loaded.getGroupID()); + Assertions.assertEquals(user.getOrgID(), loaded.getOrgID()); + Assertions.assertEquals(user.getInstitute(), loaded.getInstitute()); + Assertions.assertEquals(user.getCertificateDn(), loaded.getCertificateDn()); + + deleteUsers(userID); + } + + protected void deleteUsers(String... userIDs) { + String condition = Stream.of(userIDs) + .map(userID -> "'" + userID + "'") + .collect(Collectors.joining(",")); + + testDao.execDelete("DELETE FROM TBL_USER WHERE USER_ID IN (" + condition + ")"); + testDao.commit(); + } + + @Test + public void lockUsers() { + String[] userIDs = {"test-user-00", "test-user-01"}; + for (String userID: userIDs) + create(userID); + + userService.lock(true, userIDs); + List users = userService.getUsers(userIDs); + Assertions.assertEquals(userIDs.length, users.size()); + users.forEach(user -> Assertions.assertEquals("Y", user.getLocked())); + + userService.lock(false, userIDs); + users = userService.getUsers(userIDs); + Assertions.assertEquals(userIDs.length, users.size()); + users.forEach(user -> Assertions.assertEquals("N", user.getLocked())); + + deleteUsers(userIDs); + } + + @Test + public void setStatus() { + String[] userIDs = {"test-user-00", "test-user-01"}; + for (String userID: userIDs) + create(userID); + + userService.approve(userIDs); + List users = userService.getUsers(userIDs); + Assertions.assertEquals(userIDs.length, users.size()); + users.forEach(user -> Assertions.assertEquals("P", user.getStatus())); + + userService.remove(userIDs); + users = userService.getUsers(userIDs); + Assertions.assertEquals(userIDs.length, users.size()); + users.forEach(user -> Assertions.assertEquals("D", user.getStatus())); + + deleteUsers(userIDs); + } } \ No newline at end of file diff --git a/src/test/resources/lombok.config b/src/test/resources/lombok.config index 0a8874c..23be078 100644 --- a/src/test/resources/lombok.config +++ b/src/test/resources/lombok.config @@ -1,2 +1,2 @@ -# see https://projectlombok.org/features/constructor lombok.copyableAnnotations -lombok.copyableAnnotations += org.springframework.beans.factory.annotation.Qualifier +# see https://projectlombok.org/features/constructor lombok.copyableAnnotations +lombok.copyableAnnotations += org.springframework.beans.factory.annotation.Qualifier diff --git a/src/test/resources/message/message-common.properties b/src/test/resources/message/message-common.properties index 02e921c..b457dc0 100644 --- a/src/test/resources/message/message-common.properties +++ b/src/test/resources/message/message-common.properties @@ -1,382 +1,382 @@ -valueRequired={0}\uac00 \uc124\uc815\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4. - -pageNotFound=\uc694\uccad\ud558\uc2e0 \ud398\uc774\uc9c0\ub97c \ucc3e\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. -sessionExpired=\uc138\uc158\uc774 \ub9cc\ub8cc\ub410\uc2b5\ub2c8\ub2e4. - -duplicate.object=\uc774\ubbf8 \ub4f1\ub85d\ub41c {0}\uc785\ub2c8\ub2e4. - -fail.common.msg=\uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4! -fail.common.sql=sql \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4! error code: {0}, error msg: {1} -info.nodata.msg=\ud574\ub2f9 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. - -#UI Common resource# -table.num=\ubc88\ud638 -table.regdate=\ub4f1\ub85d\uc77c -table.reger=\ub4f1\ub85d\uc790 -table.select=\uc120\ud0dd -title.html=egovframe common component -title.detail=\uc0c1\uc138\uc870\ud68c -title.inquire=\uc870\ud68c -title.update=\uc218\uc815 -title.create=\ub4f1\ub85d -title.delete=\uc0ad\uc81c -title.save=\uc800\uc7a5 -title.list=\ubaa9\ub85d -title.searchCondition=\uac80\uc0c9\uc870\uac74 -title.search=\uac80\uc0c9\uc5b4 -title.reply=\ub2f5\uae00 -title.scrap=\uc2a4\ud06c\ub7a9 -title.comment=\ub313\uae00 -title.attachedFileSelect=\ud30c\uc77c\uc120\ud0dd -title.attachedFileDelete=\ud30c\uc77c\uc0ad\uc81c -title.link=\ub9c1\ud06c -title.management=\uad00\ub9ac -title.all=\uc804\uccb4 - -input.select=\uc120\ud0dd\ud558\uc138\uc694 -input.cSelect=\uc120\ud0dd -input.input=\uc785\ub825 -input.button=\ubc84\ud2bc -input.selectAll.title=\uc804\uccb4\uc120\ud0dd\uccb4\ud06c\ubc15\uc2a4 -input.yes=\uc608 -input.no=\uc544\ub2c8\uc624 - -select.searchCondition=\uc870\ud68c\uc870\uac74 \uc120\ud0dd - -button.select=\uc120\ud0dd -button.search=\uac80\uc0c9 -button.use=\uc0ac\uc6a9 -button.notUsed=\uc0ac\uc6a9\uc911\uc9c0 -button.inquire=\uc870\ud68c -button.update=\uc218\uc815 -button.create=\ub4f1\ub85d -button.delete=\uc0ad\uc81c -button.deleteDatabase=\uc644\uc804\uc0ad\uc81c -button.close=\ub2eb\uae30 -button.save=\uc800\uc7a5 -button.list=\ubaa9\ub85d -button.reset=\ucde8\uc18c -button.passwordUpdate=\uc554\ud638\ubcc0\uacbd -button.subscribe=\uac00\uc785\uc2e0\uccad -button.realname=\uc2e4\uba85\ud655\uc778 -button.moveToGpin=GPIN\uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9 -button.moveToIhidnum=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638 \uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9 -button.agree=\ub3d9\uc758 -button.disagree=\ube44\ub3d9\uc758 -button.possible=\uac00\ub2a5 -button.impossible=\ubd88\uac00\ub2a5 -button.qnaregist=Q&A\ub4f1\ub85d -button.cnsltregist=\uc0c1\ub2f4\ub4f1\ub85d -button.preview=\ubbf8\ub9ac\ubcf4\uae30 -button.next=\ub2e4\uc74c -button.add=\ubc14\ub85c\ucd94\uac00 -button.confirm=\ud655\uc778 -button.back = \ub4a4\ub85c -button.yes = \uc608 -button.no = \uc544\ub2c8\uc624 -button.home = \ud648 -button.user = \uc0ac\uc6a9\uc790\uc9c0\uc6d0 -button.cop = \ud611\uc5c5 -button.wrkstart = \ucd9c\uadfc -button.wrkend = \ud1f4\uadfc -button.reply = \ub2f5\uae00 -button.scrap = \uc2a4\ud06c\ub7a9 -button.comment = \ub313\uae00 -button.excel = \uc5d1\uc140 -button.init=\ucd08\uae30\ud654 -button.acknowledgment=\uc2b9\uc778 -button.cancelAcknowledgment=\uc2b9\uc778\ucde8\uc18c -button.bulkUpload=\uc77c\uad04\ub4f1\ub85d -button.log = \ub85c\uadf8 -button.set = \uc124\uc815 -button.move = \uc774\ub3d9 - - -#UI Common Message# -common.noScriptTitle.msg=\uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c\ub294 \uc77c\ubd80 \uae30\ub2a5\uc744 \uc0ac\uc6a9\ud558\uc2e4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -common.searchCondition.msg=\uc774 \ub808\uc774\uc544\uc6c3\uc740 \ud558\ub2e8 \uc815\ubcf4\ub97c \ub300\ud55c \uac80\uc0c9 \uc815\ubcf4\ub85c \uad6c\uc131\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. - -common.summary.list={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \ubaa9\ub85d\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4. -common.summary.regist={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \ub4f1\ub85d\ud55c\ub2e4. -common.summary.update={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \uc218\uc815\ud55c\ub2e4. -common.summary.inqire={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \uc0c1\uc138\uc870\ud68c \ub0b4\uc5ed\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4. - -common.save.msg=\uc800\uc7a5\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.regist.msg=\ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.delete.msg=\uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.update.msg=\uc218\uc815\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.nodata.msg=\uc790\ub8cc\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. \ub2e4\ub978 \uac80\uc0c9\uc870\uac74\uc744 \uc120\ud0dd\ud574\uc8fc\uc138\uc694 -common.required.msg=(\uc740)\ub294 \ud544\uc218\uc785\ub825\ud56d\ubaa9\uc785\ub2c8\ub2e4. -common.acknowledgement.msg=\uc2b9\uc778\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.acknowledgementcancel.msg=\uc2b9\uc778\ucde8\uc18c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.nocomment.msg=\ub313\uae00\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. -common.noguest.msg=\uc791\uc131\ub41c \ubc29\uba85\ub85d\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. - -success.request.msg = \uc694\uccad\ucc98\ub9ac\uac00 \uc131\uacf5\uc801\uc73c\ub85c \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4. -success.common.select=\uc815\uc0c1\uc801\uc73c\ub85c \uc870\ud68c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. -success.common.insert=\uc815\uc0c1\uc801\uc73c\ub85c \ub4f1\ub85d\ub418\uc5c8\uc2b5\ub2c8\ub2e4. -success.common.update=\uc815\uc0c1\uc801\uc73c\ub85c \uc218\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4. -success.common.delete=\uc815\uc0c1\uc801\uc73c\ub85c \uc0ad\uc81c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. - -common.imposbl.fileupload = \ub354 \uc774\uc0c1 \ud30c\uc77c\uc744 \ucca8\ubd80\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -common.isConfmDe.msg=\uc2b9\uc778\uc77c\uc790\ub97c \ud655\uc778 \ubc14\ub78d\ub2c8\ub2e4. -common.isExist.msg = \uc774\ubbf8 \uc874\uc7ac\ud558\uac70\ub098 \uacfc\uac70\uc5d0 \ub4f1\ub85d\uc774 \ub418\uc5c8\ub358 \uc0c1\ud0dc\uc785\ub2c8\ub2e4. - -fail.common.insert = \uc0dd\uc131\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.update = \uc218\uc815\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.delete = \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.delete.upperMenuExist = \ucc38\uc870\ub418\ub294 \uba54\ub274\uac00 \uc788\uc5b4 \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.select = \uc870\ud68c\uc5d0 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.login = \ub85c\uadf8\uc778 \uc815\ubcf4\uac00 \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. -fail.common.loginIncorrect = {0}\ud68c \uc774\uc0c1 \ub85c\uadf8\uc778 \uc811\uc18d\uc774 \uc2dc\ub3c4 \ub418\uc5b4 \uacc4\uc815\uc774 \uc7a0\uaca8\uc2b5\ub2c8\ub2e4! -fail.common.login.password = \ud328\uc2a4\uc6cc\ub4dc \uc790\ub9ac \uc218\uac00 \uc77c\uce58 \ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.(8\uc790\ub9ac \uc774\uc0c1 20\uc790\ub9ac \uc774\ud558) -fail.common.idsearch = \uc544\uc774\ub514\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -fail.common.pwsearch = \ube44\ubc00\ubc88\ud638\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -fail.request.msg = \uc694\uccad\ucc98\ub9ac\ub97c \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.login.ip = \ub4f1\ub85d\ub41c IP\uac00 \uc544\ub2c8\ubbc0\ub85c \ub85c\uadf8\uc778\uc774 \uac70\ubd80\ub418\uc5c8\uc2b5\ub2c8\ub2e4. - -#UI User Message# -fail.user.passwordUpdate1=\ud604\uc7ac \ube44\ubc00\ubc88\ud638\uac00 \ub9de\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. -fail.user.passwordUpdate2=\ube44\ubc00\ubc88\ud638\uc640 \ube44\ubc00\ubc88\ud638 \ud655\uc778\uc774 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. -info.user.rlnmCnfirm=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624. -success.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4. -fail.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. -fail.user.connectFail=\uc2dc\uc2a4\ud15c \uc7a5\uc560\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.(\uc778\uc99d\uc11c\ubc84 \uc5f0\uacb0 \uc2e4\ud328) -info.user.rlnmPinCnfirm=\uacf5\uacf5 \uc544\uc774\ud540 \uc544\uc774\ub514\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624. -success.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4. -fail.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. - - -#UI Cop Message# -cop.extrlUser = \uc678\ubd80\uc0ac\uc6a9\uc790 -cop.intrlUser = \ub0b4\ubd80\uc0ac\uc6a9\uc790 -cop.private = \ube44\uacf5\uac1c -cop.public = \uacf5\uac1c - -cop.adbkNm = \uc8fc\uc18c\ub85d\uba85 -cop.othbcScope = \uacf5\uac1c\ubc94\uc704 -cop.company = \ud68c\uc0ac -cop.part = \ubd80\uc11c -cop.man = \uac1c\uc778 -cop.adbkUser = \uad6c\uc131\uc6d0 -cop.bbsNm = \uac8c\uc2dc\ud310\uba85 -cop.bbsIntrcn = \uac8c\uc2dc\ud310\uc18c\uac1c -cop.bbsTyCode = \uac8c\uc2dc\ud310 \uc720\ud615 -cop.bbsAttrbCode = \uac8c\uc2dc\ud310 \uc18d\uc131 -cop.replyPosblAt = \ub2f5\uc7a5\uac00\ub2a5\uc5ec\ubd80 -cop.fileAtchPosblAt = \ud30c\uc77c\ucca8\ubd80\uac00\ub2a5\uc5ec\ubd80 -cop.posblAtchFileNumber = \ucca8\ubd80\uac00\ub2a5\ud30c\uc77c \uc22b\uc790 -cop.tmplatId = \ud15c\ud50c\ub9bf \uc815\ubcf4 -cop.guestList.subject = \ubc29\uba85\ub85d \uac8c\uc2dc\uae00\uc785\ub2c8\ub2e4. -cop.nttSj = \uc81c\ubaa9 -cop.nttCn = \uae00\ub0b4\uc6a9 -cop.ntceBgnde = \uac8c\uc2dc\uc2dc\uc791\uc77c -cop.ntceEndde = \uac8c\uc2dc\uc885\ub8cc\uc77c -cop.ntcrNm = \uc791\uc131\uc790 -cop.password = \ud328\uc2a4\uc6cc\ub4dc -cop.atchFile = \ud30c\uc77c\ucca8\ubd80 -cop.guestList = \ubc29\uba85\ub85d -cop.guestListCn = \ubc29\uba85\ub85d \ub0b4\uc6a9 -cop.noticeTerm = \uac8c\uc2dc\uae30\uac04 -cop.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d -cop.cmmntyNm = \ucee4\ubba4\ub2c8\ud2f0\uba85 -cop.cmmntyIntrcn = \ucee4\ubba4\ub2c8\ud2f0 \uc18c\uac1c -cop.cmmntyMngr = \ucee4\ubba4\ub2c8\ud2f0 \uad00\ub9ac\uc790 -cop.clbOprtr = \ub3d9\ud638\ud68c \uc6b4\uc601\uc790 -cop.clbIntrcn = \ub3d9\ud638\ud68c \uc18c\uac1c -cop.clbNm = \ub3d9\ud638\ud68c \uba85 -cop.tmplatNm = \ud15c\ud50c\ub9bf\uba85 -cop.tmplatSeCode = \ud15c\ud50c\ub9bf \uad6c\ubd84 -cop.tmplatCours = \ud15c\ud50c\ub9bf\uacbd\ub85c -cop.useAt = \uc0ac\uc6a9\uc5ec\ubd80 -cop.ncrdNm = \uc774\ub984 -cop.cmpnyNm = \ud68c\uc0ac\uba85 -cop.deptNm = \ubd80\uc11c\uba85 -cop.ofcpsNm = \uc9c1\uc704 -cop.clsfNm = \uc9c1\uae09 -cop.emailAdres = \uc774\uba54\uc77c\uc8fc\uc18c -cop.telNo = \uc804\ud654\ubc88\ud638 -cop.mbtlNum = \ud734\ub300\ud3f0\ubc88\ud638 -cop.adres = \uc8fc\uc18c -cop.extrlUserAt = \uc678\ubd80\uc0ac\uc6a9\uc790\uc5ec\ubd80 -cop.publicAt = \uacf5\uac1c\uc5ec\ubd80 -cop.remark = \ube44\uace0 -cop.trgetNm = \ucee4\ubba4\ub2c8\ud2f0/\ub3d9\ud638\ud68c \uc815\ubcf4 -cop.preview = \ubbf8\ub9ac\ubcf4\uae30 - -cop.withdraw.msg=\ud0c8\ud1f4\ucc98\ub9ac \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -cop.reregist.msg=\uc7ac\uac00\uc785 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -cop.registmanager.msg=\uc6b4\uc601\uc9c4\uc73c\ub85c \ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -cop.use.msg=\uc0ac\uc6a9 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -cop.unuse.msg=\uc0ac\uc6a9\uc911\uc9c0 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -cop.delete.confirm.msg=\uc0ac\uc6a9\uc911\uc9c0\ub97c \uc120\ud0dd\ud558\uc2e4 \uacbd\uc6b0 \ub2e4\uc2dc \uc0ac\uc6a9\uc73c\ub85c \ubcc0\uacbd\uc774 \ubd88\uac00\ub2a5\ud569\ub2c8\ub2e4. -cop.ing.msg=\uc2b9\uc778\uc694\uccad \uc911\uc785\ub2c8\ub2e4. -cop.request.msg=\uac00\uc785\uc2e0\uccad\uc774 \uc815\uc0c1\uc801\uc73c\ub85c \uc694\uccad\ub418\uc5c8\uc2b5\ub2c8\ub2e4 -cop.password.msg=\ud328\uc2a4\uc6cc\ub4dc\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. -cop.password.not.same.msg=\ud328\uc2a4\uc6cc\ub4dc\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. - -cop.comment.wrterNm = \uc791\uc131\uc790 -cop.comment.commentCn = \ub0b4\uc6a9 -cop.comment.commentPassword = \ud328\uc2a4\uc6cc\ub4dc - -cop.satisfaction.wrterNm = \uc791\uc131\uc790 -cop.satisfaction.stsfdgCn = \ub0b4\uc6a9 -cop.satisfaction.stsfdg = \ub9cc\uc871\ub3c4 -cop.satisfaction.stsfdgPassword = \ud328\uc2a4\uc6cc\ub4dc - -cop.scrap.scrapNm = \uc2a4\ud06c\ub7a9\uba85 - -#UI USS Message# -uss.ion.noi.ntfcSj=\uc81c\ubaa9 -uss.ion.noi.ntfcCn=\ub0b4\uc6a9 -uss.ion.noi.ntfcDate=\uc54c\ub9bc\uc77c\uc790 -uss.ion.noi.ntfcTime=\uc54c\ub9bc\uc2dc\uac04 -uss.ion.noi.ntfcHH=\uc54c\ub9bc\uc2dc\uac04 -uss.ion.noi.ntfcMM=\uc54c\ub9bc\ubd84 -uss.ion.noi.bhNtfcIntrvl=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9 -uss.ion.noi.bhNtfcIntrvl.msg=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. -uss.ion.noi.alertNtfcTime=\uc54c\ub9bc\uc77c\uc790 \ubc0f \uc2dc\uac04\uc774 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. - -#UI COP Message# -cop.sms.trnsmitTelno=\ubc1c\uc2e0\uc804\ud654\ubc88\ud638 -cop.sms.trnsmitCn=\uc804\uc1a1\ub0b4\uc6a9 -cop.sms.recptnTelno=\uc218\uc2e0\uc804\ud654\ubc88\ud638 -cop.sms.send=\uc804\uc1a1 -cop.sms.addRecptn=\ucd94\uac00 -cop.sms.recptnTelno.msg=\uc218\uc2e0\uc804\ud654\ubc88\ud638 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. - -#UI sym.log Message# -sym.log.histSeCode = \uc774\ub825\uad6c\ubd84 -sym.log.sysNm = \uc2dc\uc2a4\ud15c\uba85 -sym.log.histCn = \uc774\ub825\ub0b4\uc6a9 -sym.log.atchFile = \ucca8\ubd80\ud30c\uc77c -sym.log.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d -sym.ems.receiver = \ubc1b\ub294\uc0ac\ub78c -sym.ems.title = \uc81c\ubaa9 -sym.ems.content = \ubc1c\uc2e0\ub0b4\uc6a9 - -#Vlidator Errors# -errors.prefix=
-errors.suffix=

- -errors.required={0}\uc740(\ub294) \ud544\uc218 \uc785\ub825\uac12\uc785\ub2c8\ub2e4. -errors.minlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. -errors.maxlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -errors.invalid={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uac12\uc785\ub2c8\ub2e4. -errors.minInteger={0}\uc740(\ub294) \uc720\ud6a8\ud55c \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4. 1 \uc774\uc0c1\uc758 \uac12\uc744 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. -errors.byte={0}\uc740(\ub294) byte\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.short={0}\uc740(\ub294) short\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.integer={0}\uc740(\ub294) \uc815\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.long={0}\uc740(\ub294) long \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.float={0}\uc740(\ub294) \uc2e4\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.double={0}\uc740(\ub294) double \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. - -errors.date={0}\uc740(\ub294) \ub0a0\uc9dc \uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4. -errors.range={0}\uc740(\ub294) {1}\uacfc {2} \uc0ac\uc774\uc758 \uac12\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.creditcard={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc2e0\uc6a9\uce74\ub4dc \ubc88\ud638\uc785\ub2c8\ub2e4. -errors.email={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc774\uba54\uc77c \uc8fc\uc18c\uc785\ub2c8\ub2e4. - -errors.ihidnum=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\uc785\ub2c8\ub2e4. -errors.korean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc785\ub825\ud558\uc154\uc57c \ud569\ub2c8\ub2e4. -errors.ip=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 IP\uc8fc\uc18c\uc785\ub2c8\ub2e4. - -errors.password1={0}\uc740(\ub294) 8~20\uc790 \ub0b4\uc5d0\uc11c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. -errors.password2={0}\uc740(\ub294) \ud55c\uae00,\ud2b9\uc218\ubb38\uc790,\ub744\uc5b4\uc4f0\uae30\ub294 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. -errors.password3={0}\uc740(\ub294) \uc21c\ucc28\uc801\uc778 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -errors.password4={0}\uc740(\ub294) \ubc18\ubcf5\ub418\ub294 \ubb38\uc790\ub098 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. - -errors.notKorean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc0ac\uc6a9\ud558\uc2e4\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -error.security.runtime.error = error - -#Xss Errors# -errors.xss.checkerUser=\ud574\ub2f9 \uae30\ub2a5\uc5d0 \ub300\ud55c \uc0ac\uc6a9 \ubc0f \ucc98\ub9ac \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. - -#File Upload / Download -errors.file.extension=\uc9c0\uc6d0\ub418\ub294 \ud30c\uc77c\uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4. -errors.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc911 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. -success.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4. - -#Vlidator Errors- wordDicaryVO# -wordDicaryVO.wordNm=\uc6a9\uc5b4\uba85 -wordDicaryVO.engNm=\uc601\ubb38\uba85 -wordDicaryVO.wordDc=\uc6a9\uc5b4\uc124\uba85 -wordDicaryVO.synonm=\ub3d9\uc758\uc5b4 - -#Vlidator Errors- cnsltManageVO# -cnsltManageVO.cnsltSj=\uc0c1\ub2f4\uc81c\ubaa9 -cnsltManageVO.cnsltCn=\uc0c1\ub2f4\ub0b4\uc6a9 -cnsltManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638 -cnsltManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638 -cnsltManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638 -cnsltManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638 -cnsltManageVO.wrterNm=\uc791\uc131\uc790\uba85 -cnsltManageVO.managtCn=\ub2f5\ubcc0\ub0b4\uc6a9 - -#Vlidator Errors- siteManageVO# -siteManageVO.siteNm=\uc0ac\uc774\ud2b8\uba85 -siteManageVO.siteUrl=\uc0ac\uc774\ud2b8 URL -siteManageVO.siteDc=\uc0ac\uc774\ud2b8\uc124\uba85 -siteManageVO.siteThemaClCode=\uc0ac\uc774\ud2b8\uc8fc\uc81c\ubd84\ub958 -siteManageVO.actvtyAt=\ud65c\uc131\uc5ec\ubd80 -siteManageVO.useAt=\uc0ac\uc6a9\uc5ec\ubd80 - -#Vlidator Errors- recomendSiteManageVO# -recomendSiteManageVO.recomendSiteNm=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uba85 -recomendSiteManageVO.recomendSiteUrl=\ucd94\ucc9c\uc0ac\uc774\ud2b8 URL -recomendSiteManageVO.recomendSiteDc=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc124\uba85 -recomendSiteManageVO.recomendResnCn=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc2b9\uc778\uc0ac\uc720 -recomendSiteManageVO.confmDe=\uc2b9\uc778\uc77c\uc790 - -#Vlidator Errors- hpcmManageVO# -hpcmManageVO.hpcmSeCode=\ub3c4\uc6c0\ub9d0\uad6c\ubd84 -hpcmManageVO.hpcmDf=\ub3c4\uc6c0\ub9d0\uc815\uc758 -hpcmManageVO.hpcmDc=\ub3c4\uc6c0\ub9d0\uc124\uba85 - -#Vlidator Errors- newsManageVO# -newsManageVO.newsSj=\ub274\uc2a4\uc81c\ubaa9 -newsManageVO.newsCn=\ub274\uc2a4\ub0b4\uc6a9 -newsManageVO.ntceDe=\uac8c\uc2dc\uc77c\uc790 - -#Vlidator Errors- faqManageVO# -faqManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9 -faqManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9 -faqManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9 - -#Vlidator Errors- stplatManageVO# -stplatManageVO.useStplatNm=\uc774\uc6a9\uc57d\uad00\uba85 -stplatManageVO.useStplatCn=\uc774\uc6a9\uc57d\uad00\ub0b4\uc6a9 -stplatManageVO.infoProvdAgreCn=\uc815\ubcf4\uc81c\uacf5\ub3d9\uc758\ub0b4\uc6a9 - -#Vlidator Errors- cpyrhtPrtcPolicyVO# -cpyrhtPrtcPolicyVO.cpyrhtPrtcPolicyCn=\uc800\uc791\uad8c\ubcf4\ud638\uc815\ucc45\ub0b4\uc6a9 - -#Vlidator Errors- qnaManageVO# -qnaManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9 -qnaManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9 -qnaManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638 -qnaManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638 -qnaManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638 -qnaManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638 -qnaManageVO.wrterNm=\uc791\uc131\uc790\uba85 -qnaManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9 - -#Vlidator Errors- ReprtStatsVO# -sts.reprtId = \ubcf4\uace0\uc11cID -sts.title = \ubcf4\uace0\uc11c\uba85 -sts.category = \ubcf4\uace0\uc11c\uc720\ud615 -sts.status = \uc9c4\ud589\uc0c1\ud0dc -sts.regDate = \ub4f1\ub85d\uc77c\uc2dc - -#Rest day messages# -sym.cal.restDay = \ud734\uc77c\uc77c\uc790 -sym.cal.restName = \ud734\uc77c\uba85 -sym.cal.restDetail = \ud734\uc77c\uc124\uba85 -sym.cal.restCategory = \ud734\uc77c\uad6c\ubd84 - -image.errorBg = \uc624\ub958\uc774\ubbf8\uc9c0 - - -#Custom message# -custom.fail.access=\uc815\uc0c1\uc801\uc778 \uc811\uadfc\uc774 \uc544\ub2d9\ub2c8\ub2e4. \ub85c\uadf8\uc778 \ud6c4 \uc774\uc6a9\ud558\uc138\uc694. -custom.fail.accessDenied=\uc694\uccad\uc5d0 \ub300\ud55c \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. -custom.isNotExist.msg=\ucc98\ub9ac\uc5d0 \ud544\uc694\ud55c \uc790\ub8cc\uac00 \uc874\uc7ac\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +valueRequired={0}\uac00 \uc124\uc815\ub418\uc9c0 \uc54a\uc558\uc2b5\ub2c8\ub2e4. + +pageNotFound=\uc694\uccad\ud558\uc2e0 \ud398\uc774\uc9c0\ub97c \ucc3e\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4. +sessionExpired=\uc138\uc158\uc774 \ub9cc\ub8cc\ub410\uc2b5\ub2c8\ub2e4. + +duplicate.object=\uc774\ubbf8 \ub4f1\ub85d\ub41c {0}\uc785\ub2c8\ub2e4. + +fail.common.msg=\uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4! +fail.common.sql=sql \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4! error code: {0}, error msg: {1} +info.nodata.msg=\ud574\ub2f9 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. + +#UI Common resource# +table.num=\ubc88\ud638 +table.regdate=\ub4f1\ub85d\uc77c +table.reger=\ub4f1\ub85d\uc790 +table.select=\uc120\ud0dd +title.html=egovframe common component +title.detail=\uc0c1\uc138\uc870\ud68c +title.inquire=\uc870\ud68c +title.update=\uc218\uc815 +title.create=\ub4f1\ub85d +title.delete=\uc0ad\uc81c +title.save=\uc800\uc7a5 +title.list=\ubaa9\ub85d +title.searchCondition=\uac80\uc0c9\uc870\uac74 +title.search=\uac80\uc0c9\uc5b4 +title.reply=\ub2f5\uae00 +title.scrap=\uc2a4\ud06c\ub7a9 +title.comment=\ub313\uae00 +title.attachedFileSelect=\ud30c\uc77c\uc120\ud0dd +title.attachedFileDelete=\ud30c\uc77c\uc0ad\uc81c +title.link=\ub9c1\ud06c +title.management=\uad00\ub9ac +title.all=\uc804\uccb4 + +input.select=\uc120\ud0dd\ud558\uc138\uc694 +input.cSelect=\uc120\ud0dd +input.input=\uc785\ub825 +input.button=\ubc84\ud2bc +input.selectAll.title=\uc804\uccb4\uc120\ud0dd\uccb4\ud06c\ubc15\uc2a4 +input.yes=\uc608 +input.no=\uc544\ub2c8\uc624 + +select.searchCondition=\uc870\ud68c\uc870\uac74 \uc120\ud0dd + +button.select=\uc120\ud0dd +button.search=\uac80\uc0c9 +button.use=\uc0ac\uc6a9 +button.notUsed=\uc0ac\uc6a9\uc911\uc9c0 +button.inquire=\uc870\ud68c +button.update=\uc218\uc815 +button.create=\ub4f1\ub85d +button.delete=\uc0ad\uc81c +button.deleteDatabase=\uc644\uc804\uc0ad\uc81c +button.close=\ub2eb\uae30 +button.save=\uc800\uc7a5 +button.list=\ubaa9\ub85d +button.reset=\ucde8\uc18c +button.passwordUpdate=\uc554\ud638\ubcc0\uacbd +button.subscribe=\uac00\uc785\uc2e0\uccad +button.realname=\uc2e4\uba85\ud655\uc778 +button.moveToGpin=GPIN\uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9 +button.moveToIhidnum=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638 \uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9 +button.agree=\ub3d9\uc758 +button.disagree=\ube44\ub3d9\uc758 +button.possible=\uac00\ub2a5 +button.impossible=\ubd88\uac00\ub2a5 +button.qnaregist=Q&A\ub4f1\ub85d +button.cnsltregist=\uc0c1\ub2f4\ub4f1\ub85d +button.preview=\ubbf8\ub9ac\ubcf4\uae30 +button.next=\ub2e4\uc74c +button.add=\ubc14\ub85c\ucd94\uac00 +button.confirm=\ud655\uc778 +button.back = \ub4a4\ub85c +button.yes = \uc608 +button.no = \uc544\ub2c8\uc624 +button.home = \ud648 +button.user = \uc0ac\uc6a9\uc790\uc9c0\uc6d0 +button.cop = \ud611\uc5c5 +button.wrkstart = \ucd9c\uadfc +button.wrkend = \ud1f4\uadfc +button.reply = \ub2f5\uae00 +button.scrap = \uc2a4\ud06c\ub7a9 +button.comment = \ub313\uae00 +button.excel = \uc5d1\uc140 +button.init=\ucd08\uae30\ud654 +button.acknowledgment=\uc2b9\uc778 +button.cancelAcknowledgment=\uc2b9\uc778\ucde8\uc18c +button.bulkUpload=\uc77c\uad04\ub4f1\ub85d +button.log = \ub85c\uadf8 +button.set = \uc124\uc815 +button.move = \uc774\ub3d9 + + +#UI Common Message# +common.noScriptTitle.msg=\uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c\ub294 \uc77c\ubd80 \uae30\ub2a5\uc744 \uc0ac\uc6a9\ud558\uc2e4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +common.searchCondition.msg=\uc774 \ub808\uc774\uc544\uc6c3\uc740 \ud558\ub2e8 \uc815\ubcf4\ub97c \ub300\ud55c \uac80\uc0c9 \uc815\ubcf4\ub85c \uad6c\uc131\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. + +common.summary.list={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \ubaa9\ub85d\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4. +common.summary.regist={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \ub4f1\ub85d\ud55c\ub2e4. +common.summary.update={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \uc218\uc815\ud55c\ub2e4. +common.summary.inqire={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \uc0c1\uc138\uc870\ud68c \ub0b4\uc5ed\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4. + +common.save.msg=\uc800\uc7a5\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.regist.msg=\ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.delete.msg=\uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.update.msg=\uc218\uc815\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.nodata.msg=\uc790\ub8cc\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. \ub2e4\ub978 \uac80\uc0c9\uc870\uac74\uc744 \uc120\ud0dd\ud574\uc8fc\uc138\uc694 +common.required.msg=(\uc740)\ub294 \ud544\uc218\uc785\ub825\ud56d\ubaa9\uc785\ub2c8\ub2e4. +common.acknowledgement.msg=\uc2b9\uc778\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.acknowledgementcancel.msg=\uc2b9\uc778\ucde8\uc18c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.nocomment.msg=\ub313\uae00\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. +common.noguest.msg=\uc791\uc131\ub41c \ubc29\uba85\ub85d\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. + +success.request.msg = \uc694\uccad\ucc98\ub9ac\uac00 \uc131\uacf5\uc801\uc73c\ub85c \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4. +success.common.select=\uc815\uc0c1\uc801\uc73c\ub85c \uc870\ud68c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. +success.common.insert=\uc815\uc0c1\uc801\uc73c\ub85c \ub4f1\ub85d\ub418\uc5c8\uc2b5\ub2c8\ub2e4. +success.common.update=\uc815\uc0c1\uc801\uc73c\ub85c \uc218\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4. +success.common.delete=\uc815\uc0c1\uc801\uc73c\ub85c \uc0ad\uc81c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. + +common.imposbl.fileupload = \ub354 \uc774\uc0c1 \ud30c\uc77c\uc744 \ucca8\ubd80\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +common.isConfmDe.msg=\uc2b9\uc778\uc77c\uc790\ub97c \ud655\uc778 \ubc14\ub78d\ub2c8\ub2e4. +common.isExist.msg = \uc774\ubbf8 \uc874\uc7ac\ud558\uac70\ub098 \uacfc\uac70\uc5d0 \ub4f1\ub85d\uc774 \ub418\uc5c8\ub358 \uc0c1\ud0dc\uc785\ub2c8\ub2e4. + +fail.common.insert = \uc0dd\uc131\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.update = \uc218\uc815\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.delete = \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.delete.upperMenuExist = \ucc38\uc870\ub418\ub294 \uba54\ub274\uac00 \uc788\uc5b4 \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.select = \uc870\ud68c\uc5d0 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.login = \ub85c\uadf8\uc778 \uc815\ubcf4\uac00 \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +fail.common.loginIncorrect = {0}\ud68c \uc774\uc0c1 \ub85c\uadf8\uc778 \uc811\uc18d\uc774 \uc2dc\ub3c4 \ub418\uc5b4 \uacc4\uc815\uc774 \uc7a0\uaca8\uc2b5\ub2c8\ub2e4! +fail.common.login.password = \ud328\uc2a4\uc6cc\ub4dc \uc790\ub9ac \uc218\uac00 \uc77c\uce58 \ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.(8\uc790\ub9ac \uc774\uc0c1 20\uc790\ub9ac \uc774\ud558) +fail.common.idsearch = \uc544\uc774\ub514\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +fail.common.pwsearch = \ube44\ubc00\ubc88\ud638\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +fail.request.msg = \uc694\uccad\ucc98\ub9ac\ub97c \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.login.ip = \ub4f1\ub85d\ub41c IP\uac00 \uc544\ub2c8\ubbc0\ub85c \ub85c\uadf8\uc778\uc774 \uac70\ubd80\ub418\uc5c8\uc2b5\ub2c8\ub2e4. + +#UI User Message# +fail.user.passwordUpdate1=\ud604\uc7ac \ube44\ubc00\ubc88\ud638\uac00 \ub9de\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +fail.user.passwordUpdate2=\ube44\ubc00\ubc88\ud638\uc640 \ube44\ubc00\ubc88\ud638 \ud655\uc778\uc774 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +info.user.rlnmCnfirm=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624. +success.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4. +fail.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +fail.user.connectFail=\uc2dc\uc2a4\ud15c \uc7a5\uc560\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.(\uc778\uc99d\uc11c\ubc84 \uc5f0\uacb0 \uc2e4\ud328) +info.user.rlnmPinCnfirm=\uacf5\uacf5 \uc544\uc774\ud540 \uc544\uc774\ub514\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624. +success.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4. +fail.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. + + +#UI Cop Message# +cop.extrlUser = \uc678\ubd80\uc0ac\uc6a9\uc790 +cop.intrlUser = \ub0b4\ubd80\uc0ac\uc6a9\uc790 +cop.private = \ube44\uacf5\uac1c +cop.public = \uacf5\uac1c + +cop.adbkNm = \uc8fc\uc18c\ub85d\uba85 +cop.othbcScope = \uacf5\uac1c\ubc94\uc704 +cop.company = \ud68c\uc0ac +cop.part = \ubd80\uc11c +cop.man = \uac1c\uc778 +cop.adbkUser = \uad6c\uc131\uc6d0 +cop.bbsNm = \uac8c\uc2dc\ud310\uba85 +cop.bbsIntrcn = \uac8c\uc2dc\ud310\uc18c\uac1c +cop.bbsTyCode = \uac8c\uc2dc\ud310 \uc720\ud615 +cop.bbsAttrbCode = \uac8c\uc2dc\ud310 \uc18d\uc131 +cop.replyPosblAt = \ub2f5\uc7a5\uac00\ub2a5\uc5ec\ubd80 +cop.fileAtchPosblAt = \ud30c\uc77c\ucca8\ubd80\uac00\ub2a5\uc5ec\ubd80 +cop.posblAtchFileNumber = \ucca8\ubd80\uac00\ub2a5\ud30c\uc77c \uc22b\uc790 +cop.tmplatId = \ud15c\ud50c\ub9bf \uc815\ubcf4 +cop.guestList.subject = \ubc29\uba85\ub85d \uac8c\uc2dc\uae00\uc785\ub2c8\ub2e4. +cop.nttSj = \uc81c\ubaa9 +cop.nttCn = \uae00\ub0b4\uc6a9 +cop.ntceBgnde = \uac8c\uc2dc\uc2dc\uc791\uc77c +cop.ntceEndde = \uac8c\uc2dc\uc885\ub8cc\uc77c +cop.ntcrNm = \uc791\uc131\uc790 +cop.password = \ud328\uc2a4\uc6cc\ub4dc +cop.atchFile = \ud30c\uc77c\ucca8\ubd80 +cop.guestList = \ubc29\uba85\ub85d +cop.guestListCn = \ubc29\uba85\ub85d \ub0b4\uc6a9 +cop.noticeTerm = \uac8c\uc2dc\uae30\uac04 +cop.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d +cop.cmmntyNm = \ucee4\ubba4\ub2c8\ud2f0\uba85 +cop.cmmntyIntrcn = \ucee4\ubba4\ub2c8\ud2f0 \uc18c\uac1c +cop.cmmntyMngr = \ucee4\ubba4\ub2c8\ud2f0 \uad00\ub9ac\uc790 +cop.clbOprtr = \ub3d9\ud638\ud68c \uc6b4\uc601\uc790 +cop.clbIntrcn = \ub3d9\ud638\ud68c \uc18c\uac1c +cop.clbNm = \ub3d9\ud638\ud68c \uba85 +cop.tmplatNm = \ud15c\ud50c\ub9bf\uba85 +cop.tmplatSeCode = \ud15c\ud50c\ub9bf \uad6c\ubd84 +cop.tmplatCours = \ud15c\ud50c\ub9bf\uacbd\ub85c +cop.useAt = \uc0ac\uc6a9\uc5ec\ubd80 +cop.ncrdNm = \uc774\ub984 +cop.cmpnyNm = \ud68c\uc0ac\uba85 +cop.deptNm = \ubd80\uc11c\uba85 +cop.ofcpsNm = \uc9c1\uc704 +cop.clsfNm = \uc9c1\uae09 +cop.emailAdres = \uc774\uba54\uc77c\uc8fc\uc18c +cop.telNo = \uc804\ud654\ubc88\ud638 +cop.mbtlNum = \ud734\ub300\ud3f0\ubc88\ud638 +cop.adres = \uc8fc\uc18c +cop.extrlUserAt = \uc678\ubd80\uc0ac\uc6a9\uc790\uc5ec\ubd80 +cop.publicAt = \uacf5\uac1c\uc5ec\ubd80 +cop.remark = \ube44\uace0 +cop.trgetNm = \ucee4\ubba4\ub2c8\ud2f0/\ub3d9\ud638\ud68c \uc815\ubcf4 +cop.preview = \ubbf8\ub9ac\ubcf4\uae30 + +cop.withdraw.msg=\ud0c8\ud1f4\ucc98\ub9ac \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +cop.reregist.msg=\uc7ac\uac00\uc785 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +cop.registmanager.msg=\uc6b4\uc601\uc9c4\uc73c\ub85c \ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +cop.use.msg=\uc0ac\uc6a9 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +cop.unuse.msg=\uc0ac\uc6a9\uc911\uc9c0 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +cop.delete.confirm.msg=\uc0ac\uc6a9\uc911\uc9c0\ub97c \uc120\ud0dd\ud558\uc2e4 \uacbd\uc6b0 \ub2e4\uc2dc \uc0ac\uc6a9\uc73c\ub85c \ubcc0\uacbd\uc774 \ubd88\uac00\ub2a5\ud569\ub2c8\ub2e4. +cop.ing.msg=\uc2b9\uc778\uc694\uccad \uc911\uc785\ub2c8\ub2e4. +cop.request.msg=\uac00\uc785\uc2e0\uccad\uc774 \uc815\uc0c1\uc801\uc73c\ub85c \uc694\uccad\ub418\uc5c8\uc2b5\ub2c8\ub2e4 +cop.password.msg=\ud328\uc2a4\uc6cc\ub4dc\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +cop.password.not.same.msg=\ud328\uc2a4\uc6cc\ub4dc\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. + +cop.comment.wrterNm = \uc791\uc131\uc790 +cop.comment.commentCn = \ub0b4\uc6a9 +cop.comment.commentPassword = \ud328\uc2a4\uc6cc\ub4dc + +cop.satisfaction.wrterNm = \uc791\uc131\uc790 +cop.satisfaction.stsfdgCn = \ub0b4\uc6a9 +cop.satisfaction.stsfdg = \ub9cc\uc871\ub3c4 +cop.satisfaction.stsfdgPassword = \ud328\uc2a4\uc6cc\ub4dc + +cop.scrap.scrapNm = \uc2a4\ud06c\ub7a9\uba85 + +#UI USS Message# +uss.ion.noi.ntfcSj=\uc81c\ubaa9 +uss.ion.noi.ntfcCn=\ub0b4\uc6a9 +uss.ion.noi.ntfcDate=\uc54c\ub9bc\uc77c\uc790 +uss.ion.noi.ntfcTime=\uc54c\ub9bc\uc2dc\uac04 +uss.ion.noi.ntfcHH=\uc54c\ub9bc\uc2dc\uac04 +uss.ion.noi.ntfcMM=\uc54c\ub9bc\ubd84 +uss.ion.noi.bhNtfcIntrvl=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9 +uss.ion.noi.bhNtfcIntrvl.msg=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. +uss.ion.noi.alertNtfcTime=\uc54c\ub9bc\uc77c\uc790 \ubc0f \uc2dc\uac04\uc774 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. + +#UI COP Message# +cop.sms.trnsmitTelno=\ubc1c\uc2e0\uc804\ud654\ubc88\ud638 +cop.sms.trnsmitCn=\uc804\uc1a1\ub0b4\uc6a9 +cop.sms.recptnTelno=\uc218\uc2e0\uc804\ud654\ubc88\ud638 +cop.sms.send=\uc804\uc1a1 +cop.sms.addRecptn=\ucd94\uac00 +cop.sms.recptnTelno.msg=\uc218\uc2e0\uc804\ud654\ubc88\ud638 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. + +#UI sym.log Message# +sym.log.histSeCode = \uc774\ub825\uad6c\ubd84 +sym.log.sysNm = \uc2dc\uc2a4\ud15c\uba85 +sym.log.histCn = \uc774\ub825\ub0b4\uc6a9 +sym.log.atchFile = \ucca8\ubd80\ud30c\uc77c +sym.log.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d +sym.ems.receiver = \ubc1b\ub294\uc0ac\ub78c +sym.ems.title = \uc81c\ubaa9 +sym.ems.content = \ubc1c\uc2e0\ub0b4\uc6a9 + +#Vlidator Errors# +errors.prefix=
+errors.suffix=

+ +errors.required={0}\uc740(\ub294) \ud544\uc218 \uc785\ub825\uac12\uc785\ub2c8\ub2e4. +errors.minlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. +errors.maxlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +errors.invalid={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uac12\uc785\ub2c8\ub2e4. +errors.minInteger={0}\uc740(\ub294) \uc720\ud6a8\ud55c \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4. 1 \uc774\uc0c1\uc758 \uac12\uc744 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. +errors.byte={0}\uc740(\ub294) byte\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.short={0}\uc740(\ub294) short\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.integer={0}\uc740(\ub294) \uc815\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.long={0}\uc740(\ub294) long \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.float={0}\uc740(\ub294) \uc2e4\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.double={0}\uc740(\ub294) double \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. + +errors.date={0}\uc740(\ub294) \ub0a0\uc9dc \uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4. +errors.range={0}\uc740(\ub294) {1}\uacfc {2} \uc0ac\uc774\uc758 \uac12\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.creditcard={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc2e0\uc6a9\uce74\ub4dc \ubc88\ud638\uc785\ub2c8\ub2e4. +errors.email={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc774\uba54\uc77c \uc8fc\uc18c\uc785\ub2c8\ub2e4. + +errors.ihidnum=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\uc785\ub2c8\ub2e4. +errors.korean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc785\ub825\ud558\uc154\uc57c \ud569\ub2c8\ub2e4. +errors.ip=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 IP\uc8fc\uc18c\uc785\ub2c8\ub2e4. + +errors.password1={0}\uc740(\ub294) 8~20\uc790 \ub0b4\uc5d0\uc11c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. +errors.password2={0}\uc740(\ub294) \ud55c\uae00,\ud2b9\uc218\ubb38\uc790,\ub744\uc5b4\uc4f0\uae30\ub294 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +errors.password3={0}\uc740(\ub294) \uc21c\ucc28\uc801\uc778 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +errors.password4={0}\uc740(\ub294) \ubc18\ubcf5\ub418\ub294 \ubb38\uc790\ub098 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. + +errors.notKorean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc0ac\uc6a9\ud558\uc2e4\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +error.security.runtime.error = error + +#Xss Errors# +errors.xss.checkerUser=\ud574\ub2f9 \uae30\ub2a5\uc5d0 \ub300\ud55c \uc0ac\uc6a9 \ubc0f \ucc98\ub9ac \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. + +#File Upload / Download +errors.file.extension=\uc9c0\uc6d0\ub418\ub294 \ud30c\uc77c\uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4. +errors.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc911 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. +success.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4. + +#Vlidator Errors- wordDicaryVO# +wordDicaryVO.wordNm=\uc6a9\uc5b4\uba85 +wordDicaryVO.engNm=\uc601\ubb38\uba85 +wordDicaryVO.wordDc=\uc6a9\uc5b4\uc124\uba85 +wordDicaryVO.synonm=\ub3d9\uc758\uc5b4 + +#Vlidator Errors- cnsltManageVO# +cnsltManageVO.cnsltSj=\uc0c1\ub2f4\uc81c\ubaa9 +cnsltManageVO.cnsltCn=\uc0c1\ub2f4\ub0b4\uc6a9 +cnsltManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638 +cnsltManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638 +cnsltManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638 +cnsltManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638 +cnsltManageVO.wrterNm=\uc791\uc131\uc790\uba85 +cnsltManageVO.managtCn=\ub2f5\ubcc0\ub0b4\uc6a9 + +#Vlidator Errors- siteManageVO# +siteManageVO.siteNm=\uc0ac\uc774\ud2b8\uba85 +siteManageVO.siteUrl=\uc0ac\uc774\ud2b8 URL +siteManageVO.siteDc=\uc0ac\uc774\ud2b8\uc124\uba85 +siteManageVO.siteThemaClCode=\uc0ac\uc774\ud2b8\uc8fc\uc81c\ubd84\ub958 +siteManageVO.actvtyAt=\ud65c\uc131\uc5ec\ubd80 +siteManageVO.useAt=\uc0ac\uc6a9\uc5ec\ubd80 + +#Vlidator Errors- recomendSiteManageVO# +recomendSiteManageVO.recomendSiteNm=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uba85 +recomendSiteManageVO.recomendSiteUrl=\ucd94\ucc9c\uc0ac\uc774\ud2b8 URL +recomendSiteManageVO.recomendSiteDc=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc124\uba85 +recomendSiteManageVO.recomendResnCn=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc2b9\uc778\uc0ac\uc720 +recomendSiteManageVO.confmDe=\uc2b9\uc778\uc77c\uc790 + +#Vlidator Errors- hpcmManageVO# +hpcmManageVO.hpcmSeCode=\ub3c4\uc6c0\ub9d0\uad6c\ubd84 +hpcmManageVO.hpcmDf=\ub3c4\uc6c0\ub9d0\uc815\uc758 +hpcmManageVO.hpcmDc=\ub3c4\uc6c0\ub9d0\uc124\uba85 + +#Vlidator Errors- newsManageVO# +newsManageVO.newsSj=\ub274\uc2a4\uc81c\ubaa9 +newsManageVO.newsCn=\ub274\uc2a4\ub0b4\uc6a9 +newsManageVO.ntceDe=\uac8c\uc2dc\uc77c\uc790 + +#Vlidator Errors- faqManageVO# +faqManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9 +faqManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9 +faqManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9 + +#Vlidator Errors- stplatManageVO# +stplatManageVO.useStplatNm=\uc774\uc6a9\uc57d\uad00\uba85 +stplatManageVO.useStplatCn=\uc774\uc6a9\uc57d\uad00\ub0b4\uc6a9 +stplatManageVO.infoProvdAgreCn=\uc815\ubcf4\uc81c\uacf5\ub3d9\uc758\ub0b4\uc6a9 + +#Vlidator Errors- cpyrhtPrtcPolicyVO# +cpyrhtPrtcPolicyVO.cpyrhtPrtcPolicyCn=\uc800\uc791\uad8c\ubcf4\ud638\uc815\ucc45\ub0b4\uc6a9 + +#Vlidator Errors- qnaManageVO# +qnaManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9 +qnaManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9 +qnaManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638 +qnaManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638 +qnaManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638 +qnaManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638 +qnaManageVO.wrterNm=\uc791\uc131\uc790\uba85 +qnaManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9 + +#Vlidator Errors- ReprtStatsVO# +sts.reprtId = \ubcf4\uace0\uc11cID +sts.title = \ubcf4\uace0\uc11c\uba85 +sts.category = \ubcf4\uace0\uc11c\uc720\ud615 +sts.status = \uc9c4\ud589\uc0c1\ud0dc +sts.regDate = \ub4f1\ub85d\uc77c\uc2dc + +#Rest day messages# +sym.cal.restDay = \ud734\uc77c\uc77c\uc790 +sym.cal.restName = \ud734\uc77c\uba85 +sym.cal.restDetail = \ud734\uc77c\uc124\uba85 +sym.cal.restCategory = \ud734\uc77c\uad6c\ubd84 + +image.errorBg = \uc624\ub958\uc774\ubbf8\uc9c0 + + +#Custom message# +custom.fail.access=\uc815\uc0c1\uc801\uc778 \uc811\uadfc\uc774 \uc544\ub2d9\ub2c8\ub2e4. \ub85c\uadf8\uc778 \ud6c4 \uc774\uc6a9\ud558\uc138\uc694. +custom.fail.accessDenied=\uc694\uccad\uc5d0 \ub300\ud55c \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. +custom.isNotExist.msg=\ucc98\ub9ac\uc5d0 \ud544\uc694\ud55c \uc790\ub8cc\uac00 \uc874\uc7ac\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. diff --git a/src/test/resources/message/message-common_en.properties b/src/test/resources/message/message-common_en.properties index 5caa11d..e60edec 100644 --- a/src/test/resources/message/message-common_en.properties +++ b/src/test/resources/message/message-common_en.properties @@ -1,277 +1,277 @@ -fail.common.msg=error ocurred! -fail.common.sql=sql error ocurred! error code: {0}, error msg: {1} -info.nodata.msg=no data found. - -#UI Common resource# -table.num=num. -table.regdate=reg.date -table.reger=registrant -table.select=select -title.html=egovframe common component -title.detail=Detail Inquiry -title.inquire=Inquire -title.update=Modify -title.create=Create -title.delete=Delete -title.save=Save -title.list=List -title.searchCondition=search condition -title.search=keyword -title.reply=reply -title.scrap=scrap -title.comment=comment -title.attachedFileSelect=attached file -title.attachedFileDelete=attached file delete -title.link=link -title.management=Management -title.all=All - -input.select=Select -input.cSelect=Select -input.input=input -input.button=button -input.selectAll.title=Checkbox select all -input.yes=Yes -input.no=No - -select.searchCondition=select condition select - -button.select=select -button.search=Search -button.use=use -button.notUsed=Not used -button.inquire=inquire -button.update=update -button.create=create -button.delete=delete -button.deleteDatabase=Wiping -button.close=close -button.save=save -button.list=list -button.reset=reset -button.passwordUpdate=password update -button.subscribe=subscribe -button.realname=realname confirm -button.moveToGpin=move to gpin confirm -button.moveToIhidnum=move to ihidnum confirm -button.agree=agree -button.disagree=disagree -button.possible=possible -button.impossible=impossible -button.qnaregist=Q&A create -button.cnsltregist=Counsel create -button.preview=preview -button.next=nexut -button.add=add it now -button.confirm=confirm -button.back =back -button.yes =yes -button.no =no -button.home =home -button.user =user support -button.cop =cooperation -button.wrkstart = work start -button.wrkend = work end -button.reply = reply -button.scrap = scrap -button.comment = comment -button.excel = excel -button.init=init -button.acknowledgment=acknowledgment -button.cancelAcknowledgment=cancel acknowledgment -button.bulkUpload=bulk upload -button.log = log -button.set = set -button.move = move - - -#UI Common Message# -common.noScriptTitle.msg=I can't use all functions in browser JavaScript is not supported. -common.searchCondition.msg=This layout is a lower information searches made up of information. - -common.summary.list={0} A list of the details of the output. -common.summary.regist={0} Registered by typing the possible contents of registers by clicking the button. -common.summary.update={0} Registered by typing the possible content of modification by clicking the button. -common.summary.inqire={0} Full inquiry details about the details of the output. - -common.save.msg=confirm save? -common.regist.msg=confirm regist? -common.delete.msg=confirm delete? -common.update.msg=confirm update? -common.nodata.msg=There is no data. please choose another seach keyword -common.required.msg=is required field -common.acknowledgement.msg=confirm acknowledgement? -common.acknowledgementcancel.msg=confirm acknowledgement cancel? -common.nocomment.msg=There is no comment. -common.noguest.msg=There is no guest notice. - -success.request.msg=you're request successfully done -success.common.select=successfully selected -success.common.insert=successfully inserted -success.common.update=successfully updated -success.common.delete=successfully deleted - -common.imposbl.fileupload = cannot upload files -common.isConfmDe.msg=Please check the approval date box -common.isExist.msg = already exist - -fail.common.insert = fail to insert. -fail.common.update = fail to update -fail.common.delete = fail to delete -fail.common.delete.upperMenuExist = fail to delete[upperMenuId foreign key error] -fail.common.select = fail to select -fail.common.login = login information is not correct -fail.common.loginIncorrect = login in more than {0} account will be locked! -fail.common.login.password = password information is not correct(password digit should be 8 to 20) -fail.common.idsearch = can not find id -fail.common.pwsearch = can not find password -fail.request.msg = Failed to handle the request -fail.common.login.ip = Login is refused because it is not a registered IP. - - -#UI User Message# -fail.user.passwordUpdate1=current password is not correct -fail.user.passwordUpdate2=password confirm is not correct -info.user.rlnmCnfirm=realname confirm ready -success.user.rlnmCnfirm=it is realname -fail.user.rlnmCnfirm=it is not realname -fail.user.connectFail=connection fail - -#UI Cop Message# -cop.extrlUser = External User -cop.intrlUser = Internal User -cop.private = private -cop.public = public - -cop.bbsNm = BBS Name -cop.bbsIntrcn = BBS Introduction -cop.bbsTyCode = BBS Type -cop.bbsAttrbCode = BBS Attribute -cop.replyPosblAt = Reply Possible Alternative -cop.fileAtchPosblAt = File Attach Possible Alternative -cop.posblAtchFileNumber = Possible Attach File Number -cop.tmplatId = Template Information -cop.guestList.subject = This article registered by Guest List -cop.nttSj = Notice Subject -cop.nttCn = Notice Contents -cop.ntceBgnde = Notice Start Date -cop.ntceEndde = Notice End Date -cop.ntcrNm = Noticer Name -cop.password = PassWord -cop.atchFile = Attach Files -cop.guestList = Guest List -cop.guestListCn = Guest List Contents -cop.noticeTerm = Notice term -cop.atchFileList = Attached File List -cop.cmmntyNm = Community Name -cop.cmmntyIntrcn = Community Introduction -cop.cmmntyMngr = Community Manager -cop.clbOprtr = Club Operator -cop.clbIntrcn = Club Introduction -cop.clbNm = Club Name -cop.tmplatNm = Template Name -cop.tmplatSeCode = Template Se Code -cop.tmplatCours = Template Cours -cop.useAt = Use Alternative -cop.ncrdNm = NameCard user name -cop.cmpnyNm = Company name -cop.deptNm = Department name -cop.ofcpsNm = OFCPS name -cop.clsfNm = Class Name -cop.emailAdres = E-mail -cop.telNo = Tel No. -cop.mbtlNum = Mobile -cop.adres = Address -cop.extrlUserAt = External User alternative -cop.publicAt = Public open alternative -cop.remark = Remark -cop.trgetNm = Company/Club Information -cop.preview = preview - -cop.withdraw.msg=confirm withdrawal memebership? -cop.reregist.msg=confirm re-registration? -cop.registmanager.msg=confirm registration of manager? -cop.use.msg=confirm use? -cop.unuse.msg=confirm stop using? -cop.delete.confirm.msg=If you choose to disable the re-use change is impossible. -cop.ing.msg=Approval is being requested. -cop.request.msg=Signup is normally requested. -cop.password.msg=Please enter your password. -cop.password.not.same.msg=Password do not match. - -cop.comment.wrterNm = Writer Name -cop.comment.commentCn = Comment -cop.comment.commentPassword = Password - -cop.satisfaction.wrterNm = Writer Name -cop.satisfaction.stsfdgCn = Satisfaction -cop.satisfaction.stsfdg = Satisfaction Degree -cop.satisfaction.stsfdgPassword = Password - -cop.scrap.scrapNm = Scrap Name - -#UI USS Message# -uss.ion.noi.ntfcSj=Subject -uss.ion.noi.ntfcCn=Contents -uss.ion.noi.ntfcDate=Notification Date -uss.ion.noi.ntfcTime=Notification Time -uss.ion.noi.ntfcHH=Notification Hour -uss.ion.noi.ntfcMM=Notification Minute -uss.ion.noi.bhNtfcIntrvl=Beforehand Interval -uss.ion.noi.bhNtfcIntrvl.msg=Beforehand Interval is required. -uss.ion.noi.alertNtfcTime=Date and time of notification is not valid. - -#UI COP Message# -cop.sms.trnsmitTelno=Sender -cop.sms.trnsmitCn=Contents -cop.sms.recptnTelno=Receiver(s) -cop.sms.send=Send -cop.sms.addRecptn=Add -cop.sms.recptnTelno.msg=The phone number of receiver is required. - -#UI sym.log Message# -sym.log.histSeCode = History Code -sym.log.sysNm = System Name -sym.log.histCn = History Contents -sym.log.atchFile = Attached File -sym.log.atchFileList = Attached File List -sym.ems.receiver = Receiver -sym.ems.title = Title -sym.ems.content = Content - -#Vlidator Errors# -errors.required={0} is required. -errors.minlength={0} can not be less than {1} characters. -errors.maxlength={0} can not be greater than {1} characters. -errors.invalid={0} is invalid. - -errors.byte={0} must be a byte. -errors.short={0} must be a short. -errors.integer={0} must be an integer. -errors.long={0} must be a long. -errors.float={0} must be a float. -errors.double={0} must be a double. - -errors.date={0} is not a date. -errors.range={0} is not in the range {1} through {2}. -errors.creditcard={0} is an invalid credit card number. -errors.email={0} is an invalid e-mail address. - -#Vlidator Errors- ReprtStatsVO# -sts.reprtId = Report ID -sts.title = Report Title -sts.category = Report Category -sts.status = Report Status -sts.regDate = Registration Date - -#Rest day messages# -sym.cal.restDay = Holiday Date -sym.cal.restName = Holiday Name -sym.cal.restDetail = Holiday Detail -sym.cal.restCategory = Holiday Category - - -#Custom message# -custom.fail.access=It's not a normal approach. Log in and use it. -custom.fail.accessDenied=You do not have permission to request. -custom.isNotExist.msg=Data required for processing does not exist. +fail.common.msg=error ocurred! +fail.common.sql=sql error ocurred! error code: {0}, error msg: {1} +info.nodata.msg=no data found. + +#UI Common resource# +table.num=num. +table.regdate=reg.date +table.reger=registrant +table.select=select +title.html=egovframe common component +title.detail=Detail Inquiry +title.inquire=Inquire +title.update=Modify +title.create=Create +title.delete=Delete +title.save=Save +title.list=List +title.searchCondition=search condition +title.search=keyword +title.reply=reply +title.scrap=scrap +title.comment=comment +title.attachedFileSelect=attached file +title.attachedFileDelete=attached file delete +title.link=link +title.management=Management +title.all=All + +input.select=Select +input.cSelect=Select +input.input=input +input.button=button +input.selectAll.title=Checkbox select all +input.yes=Yes +input.no=No + +select.searchCondition=select condition select + +button.select=select +button.search=Search +button.use=use +button.notUsed=Not used +button.inquire=inquire +button.update=update +button.create=create +button.delete=delete +button.deleteDatabase=Wiping +button.close=close +button.save=save +button.list=list +button.reset=reset +button.passwordUpdate=password update +button.subscribe=subscribe +button.realname=realname confirm +button.moveToGpin=move to gpin confirm +button.moveToIhidnum=move to ihidnum confirm +button.agree=agree +button.disagree=disagree +button.possible=possible +button.impossible=impossible +button.qnaregist=Q&A create +button.cnsltregist=Counsel create +button.preview=preview +button.next=nexut +button.add=add it now +button.confirm=confirm +button.back =back +button.yes =yes +button.no =no +button.home =home +button.user =user support +button.cop =cooperation +button.wrkstart = work start +button.wrkend = work end +button.reply = reply +button.scrap = scrap +button.comment = comment +button.excel = excel +button.init=init +button.acknowledgment=acknowledgment +button.cancelAcknowledgment=cancel acknowledgment +button.bulkUpload=bulk upload +button.log = log +button.set = set +button.move = move + + +#UI Common Message# +common.noScriptTitle.msg=I can't use all functions in browser JavaScript is not supported. +common.searchCondition.msg=This layout is a lower information searches made up of information. + +common.summary.list={0} A list of the details of the output. +common.summary.regist={0} Registered by typing the possible contents of registers by clicking the button. +common.summary.update={0} Registered by typing the possible content of modification by clicking the button. +common.summary.inqire={0} Full inquiry details about the details of the output. + +common.save.msg=confirm save? +common.regist.msg=confirm regist? +common.delete.msg=confirm delete? +common.update.msg=confirm update? +common.nodata.msg=There is no data. please choose another seach keyword +common.required.msg=is required field +common.acknowledgement.msg=confirm acknowledgement? +common.acknowledgementcancel.msg=confirm acknowledgement cancel? +common.nocomment.msg=There is no comment. +common.noguest.msg=There is no guest notice. + +success.request.msg=you're request successfully done +success.common.select=successfully selected +success.common.insert=successfully inserted +success.common.update=successfully updated +success.common.delete=successfully deleted + +common.imposbl.fileupload = cannot upload files +common.isConfmDe.msg=Please check the approval date box +common.isExist.msg = already exist + +fail.common.insert = fail to insert. +fail.common.update = fail to update +fail.common.delete = fail to delete +fail.common.delete.upperMenuExist = fail to delete[upperMenuId foreign key error] +fail.common.select = fail to select +fail.common.login = login information is not correct +fail.common.loginIncorrect = login in more than {0} account will be locked! +fail.common.login.password = password information is not correct(password digit should be 8 to 20) +fail.common.idsearch = can not find id +fail.common.pwsearch = can not find password +fail.request.msg = Failed to handle the request +fail.common.login.ip = Login is refused because it is not a registered IP. + + +#UI User Message# +fail.user.passwordUpdate1=current password is not correct +fail.user.passwordUpdate2=password confirm is not correct +info.user.rlnmCnfirm=realname confirm ready +success.user.rlnmCnfirm=it is realname +fail.user.rlnmCnfirm=it is not realname +fail.user.connectFail=connection fail + +#UI Cop Message# +cop.extrlUser = External User +cop.intrlUser = Internal User +cop.private = private +cop.public = public + +cop.bbsNm = BBS Name +cop.bbsIntrcn = BBS Introduction +cop.bbsTyCode = BBS Type +cop.bbsAttrbCode = BBS Attribute +cop.replyPosblAt = Reply Possible Alternative +cop.fileAtchPosblAt = File Attach Possible Alternative +cop.posblAtchFileNumber = Possible Attach File Number +cop.tmplatId = Template Information +cop.guestList.subject = This article registered by Guest List +cop.nttSj = Notice Subject +cop.nttCn = Notice Contents +cop.ntceBgnde = Notice Start Date +cop.ntceEndde = Notice End Date +cop.ntcrNm = Noticer Name +cop.password = PassWord +cop.atchFile = Attach Files +cop.guestList = Guest List +cop.guestListCn = Guest List Contents +cop.noticeTerm = Notice term +cop.atchFileList = Attached File List +cop.cmmntyNm = Community Name +cop.cmmntyIntrcn = Community Introduction +cop.cmmntyMngr = Community Manager +cop.clbOprtr = Club Operator +cop.clbIntrcn = Club Introduction +cop.clbNm = Club Name +cop.tmplatNm = Template Name +cop.tmplatSeCode = Template Se Code +cop.tmplatCours = Template Cours +cop.useAt = Use Alternative +cop.ncrdNm = NameCard user name +cop.cmpnyNm = Company name +cop.deptNm = Department name +cop.ofcpsNm = OFCPS name +cop.clsfNm = Class Name +cop.emailAdres = E-mail +cop.telNo = Tel No. +cop.mbtlNum = Mobile +cop.adres = Address +cop.extrlUserAt = External User alternative +cop.publicAt = Public open alternative +cop.remark = Remark +cop.trgetNm = Company/Club Information +cop.preview = preview + +cop.withdraw.msg=confirm withdrawal memebership? +cop.reregist.msg=confirm re-registration? +cop.registmanager.msg=confirm registration of manager? +cop.use.msg=confirm use? +cop.unuse.msg=confirm stop using? +cop.delete.confirm.msg=If you choose to disable the re-use change is impossible. +cop.ing.msg=Approval is being requested. +cop.request.msg=Signup is normally requested. +cop.password.msg=Please enter your password. +cop.password.not.same.msg=Password do not match. + +cop.comment.wrterNm = Writer Name +cop.comment.commentCn = Comment +cop.comment.commentPassword = Password + +cop.satisfaction.wrterNm = Writer Name +cop.satisfaction.stsfdgCn = Satisfaction +cop.satisfaction.stsfdg = Satisfaction Degree +cop.satisfaction.stsfdgPassword = Password + +cop.scrap.scrapNm = Scrap Name + +#UI USS Message# +uss.ion.noi.ntfcSj=Subject +uss.ion.noi.ntfcCn=Contents +uss.ion.noi.ntfcDate=Notification Date +uss.ion.noi.ntfcTime=Notification Time +uss.ion.noi.ntfcHH=Notification Hour +uss.ion.noi.ntfcMM=Notification Minute +uss.ion.noi.bhNtfcIntrvl=Beforehand Interval +uss.ion.noi.bhNtfcIntrvl.msg=Beforehand Interval is required. +uss.ion.noi.alertNtfcTime=Date and time of notification is not valid. + +#UI COP Message# +cop.sms.trnsmitTelno=Sender +cop.sms.trnsmitCn=Contents +cop.sms.recptnTelno=Receiver(s) +cop.sms.send=Send +cop.sms.addRecptn=Add +cop.sms.recptnTelno.msg=The phone number of receiver is required. + +#UI sym.log Message# +sym.log.histSeCode = History Code +sym.log.sysNm = System Name +sym.log.histCn = History Contents +sym.log.atchFile = Attached File +sym.log.atchFileList = Attached File List +sym.ems.receiver = Receiver +sym.ems.title = Title +sym.ems.content = Content + +#Vlidator Errors# +errors.required={0} is required. +errors.minlength={0} can not be less than {1} characters. +errors.maxlength={0} can not be greater than {1} characters. +errors.invalid={0} is invalid. + +errors.byte={0} must be a byte. +errors.short={0} must be a short. +errors.integer={0} must be an integer. +errors.long={0} must be a long. +errors.float={0} must be a float. +errors.double={0} must be a double. + +errors.date={0} is not a date. +errors.range={0} is not in the range {1} through {2}. +errors.creditcard={0} is an invalid credit card number. +errors.email={0} is an invalid e-mail address. + +#Vlidator Errors- ReprtStatsVO# +sts.reprtId = Report ID +sts.title = Report Title +sts.category = Report Category +sts.status = Report Status +sts.regDate = Registration Date + +#Rest day messages# +sym.cal.restDay = Holiday Date +sym.cal.restName = Holiday Name +sym.cal.restDetail = Holiday Detail +sym.cal.restCategory = Holiday Category + + +#Custom message# +custom.fail.access=It's not a normal approach. Log in and use it. +custom.fail.accessDenied=You do not have permission to request. +custom.isNotExist.msg=Data required for processing does not exist. diff --git a/src/test/resources/message/message-common_ko.properties b/src/test/resources/message/message-common_ko.properties index be0b930..db2928a 100644 --- a/src/test/resources/message/message-common_ko.properties +++ b/src/test/resources/message/message-common_ko.properties @@ -1,375 +1,375 @@ -fail.common.msg=\uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4! -fail.common.sql=sql \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4! error code: {0}, error msg: {1} -info.nodata.msg=\ud574\ub2f9 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. - -#UI Common resource# -table.num=\ubc88\ud638 -table.regdate=\ub4f1\ub85d\uc77c -table.reger=\ub4f1\ub85d\uc790 -table.select=\uc120\ud0dd -title.html=egovframe common component -title.detail=\uc0c1\uc138\uc870\ud68c -title.inquire=\uc870\ud68c -title.update=\uc218\uc815 -title.create=\ub4f1\ub85d -title.delete=\uc0ad\uc81c -title.save=\uc800\uc7a5 -title.list=\ubaa9\ub85d -title.searchCondition=\uac80\uc0c9\uc870\uac74 -title.search=\uac80\uc0c9\uc5b4 -title.reply=\ub2f5\uae00 -title.scrap=\uc2a4\ud06c\ub7a9 -title.comment=\ub313\uae00 -title.attachedFileSelect=\ud30c\uc77c\uc120\ud0dd -title.attachedFileDelete=\ud30c\uc77c\uc0ad\uc81c -title.link=\ub9c1\ud06c -title.management=\uad00\ub9ac -title.all=\uc804\uccb4 - -input.select=\uc120\ud0dd\ud558\uc138\uc694 -input.cSelect=\uc120\ud0dd -input.input=\uc785\ub825 -input.button=\ubc84\ud2bc -input.selectAll.title=\uc804\uccb4\uc120\ud0dd\uccb4\ud06c\ubc15\uc2a4 -input.yes=\uc608 -input.no=\uc544\ub2c8\uc624 - -select.searchCondition=\uc870\ud68c\uc870\uac74 \uc120\ud0dd - -button.select=\uc120\ud0dd -button.search=\uac80\uc0c9 -button.use=\uc0ac\uc6a9 -button.notUsed=\uc0ac\uc6a9\uc911\uc9c0 -button.inquire=\uc870\ud68c -button.update=\uc218\uc815 -button.create=\ub4f1\ub85d -button.delete=\uc0ad\uc81c -button.deleteDatabase=\uc644\uc804\uc0ad\uc81c -button.close=\ub2eb\uae30 -button.save=\uc800\uc7a5 -button.list=\ubaa9\ub85d -button.reset=\ucde8\uc18c -button.passwordUpdate=\uc554\ud638\ubcc0\uacbd -button.subscribe=\uac00\uc785\uc2e0\uccad -button.realname=\uc2e4\uba85\ud655\uc778 -button.moveToGpin=GPIN\uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9 -button.moveToIhidnum=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638 \uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9 -button.agree=\ub3d9\uc758 -button.disagree=\ube44\ub3d9\uc758 -button.possible=\uac00\ub2a5 -button.impossible=\ubd88\uac00\ub2a5 -button.qnaregist=Q&A\ub4f1\ub85d -button.cnsltregist=\uc0c1\ub2f4\ub4f1\ub85d -button.preview=\ubbf8\ub9ac\ubcf4\uae30 -button.next=\ub2e4\uc74c -button.add=\ubc14\ub85c\ucd94\uac00 -button.confirm=\ud655\uc778 -button.back = \ub4a4\ub85c -button.yes = \uc608 -button.no = \uc544\ub2c8\uc624 -button.home = \ud648 -button.user = \uc0ac\uc6a9\uc790\uc9c0\uc6d0 -button.cop = \ud611\uc5c5 -button.wrkstart = \ucd9c\uadfc -button.wrkend = \ud1f4\uadfc -button.reply = \ub2f5\uae00 -button.scrap = \uc2a4\ud06c\ub7a9 -button.comment = \ub313\uae00 -button.excel = \uc5d1\uc140 -button.init=\ucd08\uae30\ud654 -button.acknowledgment=\uc2b9\uc778 -button.cancelAcknowledgment=\uc2b9\uc778\ucde8\uc18c -button.bulkUpload=\uc77c\uad04\ub4f1\ub85d -button.log = \ub85c\uadf8 -button.set = \uc124\uc815 -button.move = \uc774\ub3d9 - - -#UI Common Message# -common.noScriptTitle.msg=\uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c\ub294 \uc77c\ubd80 \uae30\ub2a5\uc744 \uc0ac\uc6a9\ud558\uc2e4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -common.searchCondition.msg=\uc774 \ub808\uc774\uc544\uc6c3\uc740 \ud558\ub2e8 \uc815\ubcf4\ub97c \ub300\ud55c \uac80\uc0c9 \uc815\ubcf4\ub85c \uad6c\uc131\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. - -common.summary.list={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \ubaa9\ub85d\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4. -common.summary.regist={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \ub4f1\ub85d\ud55c\ub2e4. -common.summary.update={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \uc218\uc815\ud55c\ub2e4. -common.summary.inqire={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \uc0c1\uc138\uc870\ud68c \ub0b4\uc5ed\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4. - -common.save.msg=\uc800\uc7a5\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.regist.msg=\ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.delete.msg=\uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.update.msg=\uc218\uc815\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.nodata.msg=\uc790\ub8cc\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. \ub2e4\ub978 \uac80\uc0c9\uc870\uac74\uc744 \uc120\ud0dd\ud574\uc8fc\uc138\uc694 -common.required.msg=(\uc740)\ub294 \ud544\uc218\uc785\ub825\ud56d\ubaa9\uc785\ub2c8\ub2e4. -common.acknowledgement.msg=\uc2b9\uc778\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.acknowledgementcancel.msg=\uc2b9\uc778\ucde8\uc18c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -common.nocomment.msg=\ub313\uae00\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. -common.noguest.msg=\uc791\uc131\ub41c \ubc29\uba85\ub85d\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. - -success.request.msg = \uc694\uccad\ucc98\ub9ac\uac00 \uc131\uacf5\uc801\uc73c\ub85c \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4. -success.common.select=\uc815\uc0c1\uc801\uc73c\ub85c \uc870\ud68c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. -success.common.insert=\uc815\uc0c1\uc801\uc73c\ub85c \ub4f1\ub85d\ub418\uc5c8\uc2b5\ub2c8\ub2e4. -success.common.update=\uc815\uc0c1\uc801\uc73c\ub85c \uc218\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4. -success.common.delete=\uc815\uc0c1\uc801\uc73c\ub85c \uc0ad\uc81c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. - -common.imposbl.fileupload = \ub354 \uc774\uc0c1 \ud30c\uc77c\uc744 \ucca8\ubd80\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -common.isConfmDe.msg=\uc2b9\uc778\uc77c\uc790\ub97c \ud655\uc778 \ubc14\ub78d\ub2c8\ub2e4. -common.isExist.msg = \uc774\ubbf8 \uc874\uc7ac\ud558\uac70\ub098 \uacfc\uac70\uc5d0 \ub4f1\ub85d\uc774 \ub418\uc5c8\ub358 \uc0c1\ud0dc\uc785\ub2c8\ub2e4. - -fail.common.insert = \uc0dd\uc131\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.update = \uc218\uc815\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.delete = \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.delete.upperMenuExist = \ucc38\uc870\ub418\ub294 \uba54\ub274\uac00 \uc788\uc5b4 \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.select = \uc870\ud68c\uc5d0 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.login = \ub85c\uadf8\uc778 \uc815\ubcf4\uac00 \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. -fail.common.loginIncorrect = {0}\ud68c \uc774\uc0c1 \ub85c\uadf8\uc778 \uc811\uc18d\uc774 \uc2dc\ub3c4 \ub418\uc5b4 \uacc4\uc815\uc774 \uc7a0\uaca8\uc2b5\ub2c8\ub2e4! -fail.common.login.password = \ud328\uc2a4\uc6cc\ub4dc \uc790\ub9ac \uc218\uac00 \uc77c\uce58 \ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.(8\uc790\ub9ac \uc774\uc0c1 20\uc790\ub9ac \uc774\ud558) -fail.common.idsearch = \uc544\uc774\ub514\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -fail.common.pwsearch = \ube44\ubc00\ubc88\ud638\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -fail.request.msg = \uc694\uccad\ucc98\ub9ac\ub97c \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. -fail.common.login.ip = \ub4f1\ub85d\ub41c IP\uac00 \uc544\ub2c8\ubbc0\ub85c \ub85c\uadf8\uc778\uc774 \uac70\ubd80\ub418\uc5c8\uc2b5\ub2c8\ub2e4. - -#UI User Message# -fail.user.passwordUpdate1=\ud604\uc7ac \ube44\ubc00\ubc88\ud638\uac00 \ub9de\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. -fail.user.passwordUpdate2=\ube44\ubc00\ubc88\ud638\uc640 \ube44\ubc00\ubc88\ud638 \ud655\uc778\uc774 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. -info.user.rlnmCnfirm=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624. -success.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4. -fail.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. -fail.user.connectFail=\uc2dc\uc2a4\ud15c \uc7a5\uc560\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.(\uc778\uc99d\uc11c\ubc84 \uc5f0\uacb0 \uc2e4\ud328) -info.user.rlnmPinCnfirm=\uacf5\uacf5 \uc544\uc774\ud540 \uc544\uc774\ub514\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624. -success.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4. -fail.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. - - -#UI Cop Message# -cop.extrlUser = \uc678\ubd80\uc0ac\uc6a9\uc790 -cop.intrlUser = \ub0b4\ubd80\uc0ac\uc6a9\uc790 -cop.private = \ube44\uacf5\uac1c -cop.public = \uacf5\uac1c - -cop.adbkNm = \uc8fc\uc18c\ub85d\uba85 -cop.othbcScope = \uacf5\uac1c\ubc94\uc704 -cop.company = \ud68c\uc0ac -cop.part = \ubd80\uc11c -cop.man = \uac1c\uc778 -cop.adbkUser = \uad6c\uc131\uc6d0 -cop.bbsNm = \uac8c\uc2dc\ud310\uba85 -cop.bbsIntrcn = \uac8c\uc2dc\ud310\uc18c\uac1c -cop.bbsTyCode = \uac8c\uc2dc\ud310 \uc720\ud615 -cop.bbsAttrbCode = \uac8c\uc2dc\ud310 \uc18d\uc131 -cop.replyPosblAt = \ub2f5\uc7a5\uac00\ub2a5\uc5ec\ubd80 -cop.fileAtchPosblAt = \ud30c\uc77c\ucca8\ubd80\uac00\ub2a5\uc5ec\ubd80 -cop.posblAtchFileNumber = \ucca8\ubd80\uac00\ub2a5\ud30c\uc77c \uc22b\uc790 -cop.tmplatId = \ud15c\ud50c\ub9bf \uc815\ubcf4 -cop.guestList.subject = \ubc29\uba85\ub85d \uac8c\uc2dc\uae00\uc785\ub2c8\ub2e4. -cop.nttSj = \uc81c\ubaa9 -cop.nttCn = \uae00\ub0b4\uc6a9 -cop.ntceBgnde = \uac8c\uc2dc\uc2dc\uc791\uc77c -cop.ntceEndde = \uac8c\uc2dc\uc885\ub8cc\uc77c -cop.ntcrNm = \uc791\uc131\uc790 -cop.password = \ud328\uc2a4\uc6cc\ub4dc -cop.atchFile = \ud30c\uc77c\ucca8\ubd80 -cop.guestList = \ubc29\uba85\ub85d -cop.guestListCn = \ubc29\uba85\ub85d \ub0b4\uc6a9 -cop.noticeTerm = \uac8c\uc2dc\uae30\uac04 -cop.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d -cop.cmmntyNm = \ucee4\ubba4\ub2c8\ud2f0\uba85 -cop.cmmntyIntrcn = \ucee4\ubba4\ub2c8\ud2f0 \uc18c\uac1c -cop.cmmntyMngr = \ucee4\ubba4\ub2c8\ud2f0 \uad00\ub9ac\uc790 -cop.clbOprtr = \ub3d9\ud638\ud68c \uc6b4\uc601\uc790 -cop.clbIntrcn = \ub3d9\ud638\ud68c \uc18c\uac1c -cop.clbNm = \ub3d9\ud638\ud68c \uba85 -cop.tmplatNm = \ud15c\ud50c\ub9bf\uba85 -cop.tmplatSeCode = \ud15c\ud50c\ub9bf \uad6c\ubd84 -cop.tmplatCours = \ud15c\ud50c\ub9bf\uacbd\ub85c -cop.useAt = \uc0ac\uc6a9\uc5ec\ubd80 -cop.ncrdNm = \uc774\ub984 -cop.cmpnyNm = \ud68c\uc0ac\uba85 -cop.deptNm = \ubd80\uc11c\uba85 -cop.ofcpsNm = \uc9c1\uc704 -cop.clsfNm = \uc9c1\uae09 -cop.emailAdres = \uc774\uba54\uc77c\uc8fc\uc18c -cop.telNo = \uc804\ud654\ubc88\ud638 -cop.mbtlNum = \ud734\ub300\ud3f0\ubc88\ud638 -cop.adres = \uc8fc\uc18c -cop.extrlUserAt = \uc678\ubd80\uc0ac\uc6a9\uc790\uc5ec\ubd80 -cop.publicAt = \uacf5\uac1c\uc5ec\ubd80 -cop.remark = \ube44\uace0 -cop.trgetNm = \ucee4\ubba4\ub2c8\ud2f0/\ub3d9\ud638\ud68c \uc815\ubcf4 -cop.preview = \ubbf8\ub9ac\ubcf4\uae30 - -cop.withdraw.msg=\ud0c8\ud1f4\ucc98\ub9ac \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -cop.reregist.msg=\uc7ac\uac00\uc785 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -cop.registmanager.msg=\uc6b4\uc601\uc9c4\uc73c\ub85c \ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -cop.use.msg=\uc0ac\uc6a9 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -cop.unuse.msg=\uc0ac\uc6a9\uc911\uc9c0 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? -cop.delete.confirm.msg=\uc0ac\uc6a9\uc911\uc9c0\ub97c \uc120\ud0dd\ud558\uc2e4 \uacbd\uc6b0 \ub2e4\uc2dc \uc0ac\uc6a9\uc73c\ub85c \ubcc0\uacbd\uc774 \ubd88\uac00\ub2a5\ud569\ub2c8\ub2e4. -cop.ing.msg=\uc2b9\uc778\uc694\uccad \uc911\uc785\ub2c8\ub2e4. -cop.request.msg=\uac00\uc785\uc2e0\uccad\uc774 \uc815\uc0c1\uc801\uc73c\ub85c \uc694\uccad\ub418\uc5c8\uc2b5\ub2c8\ub2e4 -cop.password.msg=\ud328\uc2a4\uc6cc\ub4dc\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. -cop.password.not.same.msg=\ud328\uc2a4\uc6cc\ub4dc\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. - -cop.comment.wrterNm = \uc791\uc131\uc790 -cop.comment.commentCn = \ub0b4\uc6a9 -cop.comment.commentPassword = \ud328\uc2a4\uc6cc\ub4dc - -cop.satisfaction.wrterNm = \uc791\uc131\uc790 -cop.satisfaction.stsfdgCn = \ub0b4\uc6a9 -cop.satisfaction.stsfdg = \ub9cc\uc871\ub3c4 -cop.satisfaction.stsfdgPassword = \ud328\uc2a4\uc6cc\ub4dc - -cop.scrap.scrapNm = \uc2a4\ud06c\ub7a9\uba85 - -#UI USS Message# -uss.ion.noi.ntfcSj=\uc81c\ubaa9 -uss.ion.noi.ntfcCn=\ub0b4\uc6a9 -uss.ion.noi.ntfcDate=\uc54c\ub9bc\uc77c\uc790 -uss.ion.noi.ntfcTime=\uc54c\ub9bc\uc2dc\uac04 -uss.ion.noi.ntfcHH=\uc54c\ub9bc\uc2dc\uac04 -uss.ion.noi.ntfcMM=\uc54c\ub9bc\ubd84 -uss.ion.noi.bhNtfcIntrvl=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9 -uss.ion.noi.bhNtfcIntrvl.msg=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. -uss.ion.noi.alertNtfcTime=\uc54c\ub9bc\uc77c\uc790 \ubc0f \uc2dc\uac04\uc774 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. - -#UI COP Message# -cop.sms.trnsmitTelno=\ubc1c\uc2e0\uc804\ud654\ubc88\ud638 -cop.sms.trnsmitCn=\uc804\uc1a1\ub0b4\uc6a9 -cop.sms.recptnTelno=\uc218\uc2e0\uc804\ud654\ubc88\ud638 -cop.sms.send=\uc804\uc1a1 -cop.sms.addRecptn=\ucd94\uac00 -cop.sms.recptnTelno.msg=\uc218\uc2e0\uc804\ud654\ubc88\ud638 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. - -#UI sym.log Message# -sym.log.histSeCode = \uc774\ub825\uad6c\ubd84 -sym.log.sysNm = \uc2dc\uc2a4\ud15c\uba85 -sym.log.histCn = \uc774\ub825\ub0b4\uc6a9 -sym.log.atchFile = \ucca8\ubd80\ud30c\uc77c -sym.log.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d -sym.ems.receiver = \ubc1b\ub294\uc0ac\ub78c -sym.ems.title = \uc81c\ubaa9 -sym.ems.content = \ubc1c\uc2e0\ub0b4\uc6a9 - -#Vlidator Errors# -errors.prefix=
-errors.suffix=

- -errors.required={0}\uc740(\ub294) \ud544\uc218 \uc785\ub825\uac12\uc785\ub2c8\ub2e4. -errors.minlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. -errors.maxlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -errors.invalid={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uac12\uc785\ub2c8\ub2e4. -errors.minInteger={0}\uc740(\ub294) \uc720\ud6a8\ud55c \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4. 1 \uc774\uc0c1\uc758 \uac12\uc744 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. -errors.byte={0}\uc740(\ub294) byte\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.short={0}\uc740(\ub294) short\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.integer={0}\uc740(\ub294) \uc815\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.long={0}\uc740(\ub294) long \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.float={0}\uc740(\ub294) \uc2e4\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.double={0}\uc740(\ub294) double \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. - -errors.date={0}\uc740(\ub294) \ub0a0\uc9dc \uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4. -errors.range={0}\uc740(\ub294) {1}\uacfc {2} \uc0ac\uc774\uc758 \uac12\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. -errors.creditcard={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc2e0\uc6a9\uce74\ub4dc \ubc88\ud638\uc785\ub2c8\ub2e4. -errors.email={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc774\uba54\uc77c \uc8fc\uc18c\uc785\ub2c8\ub2e4. - -errors.ihidnum=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\uc785\ub2c8\ub2e4. -errors.korean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc785\ub825\ud558\uc154\uc57c \ud569\ub2c8\ub2e4. -errors.ip=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 IP\uc8fc\uc18c\uc785\ub2c8\ub2e4. - -errors.password1={0}\uc740(\ub294) 8~20\uc790 \ub0b4\uc5d0\uc11c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. -errors.password2={0}\uc740(\ub294) \ud55c\uae00,\ud2b9\uc218\ubb38\uc790,\ub744\uc5b4\uc4f0\uae30\ub294 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. -errors.password3={0}\uc740(\ub294) \uc21c\ucc28\uc801\uc778 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -errors.password4={0}\uc740(\ub294) \ubc18\ubcf5\ub418\ub294 \ubb38\uc790\ub098 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. - -errors.notKorean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc0ac\uc6a9\ud558\uc2e4\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. -error.security.runtime.error = error - -#Xss Errors# -errors.xss.checkerUser=\ud574\ub2f9 \uae30\ub2a5\uc5d0 \ub300\ud55c \uc0ac\uc6a9 \ubc0f \ucc98\ub9ac \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. - -#File Upload / Download -errors.file.extension=\uc9c0\uc6d0\ub418\ub294 \ud30c\uc77c\uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4. -errors.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc911 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. -success.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4. - -#Vlidator Errors- wordDicaryVO# -wordDicaryVO.wordNm=\uc6a9\uc5b4\uba85 -wordDicaryVO.engNm=\uc601\ubb38\uba85 -wordDicaryVO.wordDc=\uc6a9\uc5b4\uc124\uba85 -wordDicaryVO.synonm=\ub3d9\uc758\uc5b4 - -#Vlidator Errors- cnsltManageVO# -cnsltManageVO.cnsltSj=\uc0c1\ub2f4\uc81c\ubaa9 -cnsltManageVO.cnsltCn=\uc0c1\ub2f4\ub0b4\uc6a9 -cnsltManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638 -cnsltManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638 -cnsltManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638 -cnsltManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638 -cnsltManageVO.wrterNm=\uc791\uc131\uc790\uba85 -cnsltManageVO.managtCn=\ub2f5\ubcc0\ub0b4\uc6a9 - -#Vlidator Errors- siteManageVO# -siteManageVO.siteNm=\uc0ac\uc774\ud2b8\uba85 -siteManageVO.siteUrl=\uc0ac\uc774\ud2b8 URL -siteManageVO.siteDc=\uc0ac\uc774\ud2b8\uc124\uba85 -siteManageVO.siteThemaClCode=\uc0ac\uc774\ud2b8\uc8fc\uc81c\ubd84\ub958 -siteManageVO.actvtyAt=\ud65c\uc131\uc5ec\ubd80 -siteManageVO.useAt=\uc0ac\uc6a9\uc5ec\ubd80 - -#Vlidator Errors- recomendSiteManageVO# -recomendSiteManageVO.recomendSiteNm=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uba85 -recomendSiteManageVO.recomendSiteUrl=\ucd94\ucc9c\uc0ac\uc774\ud2b8 URL -recomendSiteManageVO.recomendSiteDc=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc124\uba85 -recomendSiteManageVO.recomendResnCn=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc2b9\uc778\uc0ac\uc720 -recomendSiteManageVO.confmDe=\uc2b9\uc778\uc77c\uc790 - -#Vlidator Errors- hpcmManageVO# -hpcmManageVO.hpcmSeCode=\ub3c4\uc6c0\ub9d0\uad6c\ubd84 -hpcmManageVO.hpcmDf=\ub3c4\uc6c0\ub9d0\uc815\uc758 -hpcmManageVO.hpcmDc=\ub3c4\uc6c0\ub9d0\uc124\uba85 - -#Vlidator Errors- newsManageVO# -newsManageVO.newsSj=\ub274\uc2a4\uc81c\ubaa9 -newsManageVO.newsCn=\ub274\uc2a4\ub0b4\uc6a9 -newsManageVO.ntceDe=\uac8c\uc2dc\uc77c\uc790 - -#Vlidator Errors- faqManageVO# -faqManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9 -faqManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9 -faqManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9 - -#Vlidator Errors- stplatManageVO# -stplatManageVO.useStplatNm=\uc774\uc6a9\uc57d\uad00\uba85 -stplatManageVO.useStplatCn=\uc774\uc6a9\uc57d\uad00\ub0b4\uc6a9 -stplatManageVO.infoProvdAgreCn=\uc815\ubcf4\uc81c\uacf5\ub3d9\uc758\ub0b4\uc6a9 - -#Vlidator Errors- cpyrhtPrtcPolicyVO# -cpyrhtPrtcPolicyVO.cpyrhtPrtcPolicyCn=\uc800\uc791\uad8c\ubcf4\ud638\uc815\ucc45\ub0b4\uc6a9 - -#Vlidator Errors- qnaManageVO# -qnaManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9 -qnaManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9 -qnaManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638 -qnaManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638 -qnaManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638 -qnaManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638 -qnaManageVO.wrterNm=\uc791\uc131\uc790\uba85 -qnaManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9 - -#Vlidator Errors- ReprtStatsVO# -sts.reprtId = \ubcf4\uace0\uc11cID -sts.title = \ubcf4\uace0\uc11c\uba85 -sts.category = \ubcf4\uace0\uc11c\uc720\ud615 -sts.status = \uc9c4\ud589\uc0c1\ud0dc -sts.regDate = \ub4f1\ub85d\uc77c\uc2dc - -#Rest day messages# -sym.cal.restDay = \ud734\uc77c\uc77c\uc790 -sym.cal.restName = \ud734\uc77c\uba85 -sym.cal.restDetail = \ud734\uc77c\uc124\uba85 -sym.cal.restCategory = \ud734\uc77c\uad6c\ubd84 - -image.errorBg = \uc624\ub958\uc774\ubbf8\uc9c0 - - -#Custom message# -custom.fail.access=\uc815\uc0c1\uc801\uc778 \uc811\uadfc\uc774 \uc544\ub2d9\ub2c8\ub2e4. \ub85c\uadf8\uc778 \ud6c4 \uc774\uc6a9\ud558\uc138\uc694. -custom.fail.accessDenied=\uc694\uccad\uc5d0 \ub300\ud55c \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. -custom.isNotExist.msg=\ucc98\ub9ac\uc5d0 \ud544\uc694\ud55c \uc790\ub8cc\uac00 \uc874\uc7ac\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +fail.common.msg=\uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4! +fail.common.sql=sql \uc5d0\ub7ec\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4! error code: {0}, error msg: {1} +info.nodata.msg=\ud574\ub2f9 \ub370\uc774\ud130\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. + +#UI Common resource# +table.num=\ubc88\ud638 +table.regdate=\ub4f1\ub85d\uc77c +table.reger=\ub4f1\ub85d\uc790 +table.select=\uc120\ud0dd +title.html=egovframe common component +title.detail=\uc0c1\uc138\uc870\ud68c +title.inquire=\uc870\ud68c +title.update=\uc218\uc815 +title.create=\ub4f1\ub85d +title.delete=\uc0ad\uc81c +title.save=\uc800\uc7a5 +title.list=\ubaa9\ub85d +title.searchCondition=\uac80\uc0c9\uc870\uac74 +title.search=\uac80\uc0c9\uc5b4 +title.reply=\ub2f5\uae00 +title.scrap=\uc2a4\ud06c\ub7a9 +title.comment=\ub313\uae00 +title.attachedFileSelect=\ud30c\uc77c\uc120\ud0dd +title.attachedFileDelete=\ud30c\uc77c\uc0ad\uc81c +title.link=\ub9c1\ud06c +title.management=\uad00\ub9ac +title.all=\uc804\uccb4 + +input.select=\uc120\ud0dd\ud558\uc138\uc694 +input.cSelect=\uc120\ud0dd +input.input=\uc785\ub825 +input.button=\ubc84\ud2bc +input.selectAll.title=\uc804\uccb4\uc120\ud0dd\uccb4\ud06c\ubc15\uc2a4 +input.yes=\uc608 +input.no=\uc544\ub2c8\uc624 + +select.searchCondition=\uc870\ud68c\uc870\uac74 \uc120\ud0dd + +button.select=\uc120\ud0dd +button.search=\uac80\uc0c9 +button.use=\uc0ac\uc6a9 +button.notUsed=\uc0ac\uc6a9\uc911\uc9c0 +button.inquire=\uc870\ud68c +button.update=\uc218\uc815 +button.create=\ub4f1\ub85d +button.delete=\uc0ad\uc81c +button.deleteDatabase=\uc644\uc804\uc0ad\uc81c +button.close=\ub2eb\uae30 +button.save=\uc800\uc7a5 +button.list=\ubaa9\ub85d +button.reset=\ucde8\uc18c +button.passwordUpdate=\uc554\ud638\ubcc0\uacbd +button.subscribe=\uac00\uc785\uc2e0\uccad +button.realname=\uc2e4\uba85\ud655\uc778 +button.moveToGpin=GPIN\uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9 +button.moveToIhidnum=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638 \uc2e4\uba85\ud655\uc778\uc73c\ub85c \uc774\ub3d9 +button.agree=\ub3d9\uc758 +button.disagree=\ube44\ub3d9\uc758 +button.possible=\uac00\ub2a5 +button.impossible=\ubd88\uac00\ub2a5 +button.qnaregist=Q&A\ub4f1\ub85d +button.cnsltregist=\uc0c1\ub2f4\ub4f1\ub85d +button.preview=\ubbf8\ub9ac\ubcf4\uae30 +button.next=\ub2e4\uc74c +button.add=\ubc14\ub85c\ucd94\uac00 +button.confirm=\ud655\uc778 +button.back = \ub4a4\ub85c +button.yes = \uc608 +button.no = \uc544\ub2c8\uc624 +button.home = \ud648 +button.user = \uc0ac\uc6a9\uc790\uc9c0\uc6d0 +button.cop = \ud611\uc5c5 +button.wrkstart = \ucd9c\uadfc +button.wrkend = \ud1f4\uadfc +button.reply = \ub2f5\uae00 +button.scrap = \uc2a4\ud06c\ub7a9 +button.comment = \ub313\uae00 +button.excel = \uc5d1\uc140 +button.init=\ucd08\uae30\ud654 +button.acknowledgment=\uc2b9\uc778 +button.cancelAcknowledgment=\uc2b9\uc778\ucde8\uc18c +button.bulkUpload=\uc77c\uad04\ub4f1\ub85d +button.log = \ub85c\uadf8 +button.set = \uc124\uc815 +button.move = \uc774\ub3d9 + + +#UI Common Message# +common.noScriptTitle.msg=\uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\ub97c \uc9c0\uc6d0\ud558\uc9c0 \uc54a\ub294 \ube0c\ub77c\uc6b0\uc800\uc5d0\uc11c\ub294 \uc77c\ubd80 \uae30\ub2a5\uc744 \uc0ac\uc6a9\ud558\uc2e4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +common.searchCondition.msg=\uc774 \ub808\uc774\uc544\uc6c3\uc740 \ud558\ub2e8 \uc815\ubcf4\ub97c \ub300\ud55c \uac80\uc0c9 \uc815\ubcf4\ub85c \uad6c\uc131\ub418\uc5b4 \uc788\uc2b5\ub2c8\ub2e4. + +common.summary.list={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \ubaa9\ub85d\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4. +common.summary.regist={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \ub4f1\ub85d\ud55c\ub2e4. +common.summary.update={0}\uc758 \ub4f1\ub85d \uac00\ub2a5\ud55c \ub0b4\uc6a9\uc744 \uc785\ub825\ud558\uc5ec \ub4f1\ub85d \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \uc218\uc815\ud55c\ub2e4. +common.summary.inqire={0}\uc758 \ub0b4\uc5ed\uc5d0 \ub300\ud55c \uc0c1\uc138\uc870\ud68c \ub0b4\uc5ed\uc744 \ucd9c\ub825\ud569\ub2c8\ub2e4. + +common.save.msg=\uc800\uc7a5\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.regist.msg=\ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.delete.msg=\uc0ad\uc81c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.update.msg=\uc218\uc815\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.nodata.msg=\uc790\ub8cc\uac00 \uc5c6\uc2b5\ub2c8\ub2e4. \ub2e4\ub978 \uac80\uc0c9\uc870\uac74\uc744 \uc120\ud0dd\ud574\uc8fc\uc138\uc694 +common.required.msg=(\uc740)\ub294 \ud544\uc218\uc785\ub825\ud56d\ubaa9\uc785\ub2c8\ub2e4. +common.acknowledgement.msg=\uc2b9\uc778\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.acknowledgementcancel.msg=\uc2b9\uc778\ucde8\uc18c\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +common.nocomment.msg=\ub313\uae00\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. +common.noguest.msg=\uc791\uc131\ub41c \ubc29\uba85\ub85d\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. + +success.request.msg = \uc694\uccad\ucc98\ub9ac\uac00 \uc131\uacf5\uc801\uc73c\ub85c \uc218\ud589\ub418\uc5c8\uc2b5\ub2c8\ub2e4. +success.common.select=\uc815\uc0c1\uc801\uc73c\ub85c \uc870\ud68c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. +success.common.insert=\uc815\uc0c1\uc801\uc73c\ub85c \ub4f1\ub85d\ub418\uc5c8\uc2b5\ub2c8\ub2e4. +success.common.update=\uc815\uc0c1\uc801\uc73c\ub85c \uc218\uc815\ub418\uc5c8\uc2b5\ub2c8\ub2e4. +success.common.delete=\uc815\uc0c1\uc801\uc73c\ub85c \uc0ad\uc81c\ub418\uc5c8\uc2b5\ub2c8\ub2e4. + +common.imposbl.fileupload = \ub354 \uc774\uc0c1 \ud30c\uc77c\uc744 \ucca8\ubd80\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +common.isConfmDe.msg=\uc2b9\uc778\uc77c\uc790\ub97c \ud655\uc778 \ubc14\ub78d\ub2c8\ub2e4. +common.isExist.msg = \uc774\ubbf8 \uc874\uc7ac\ud558\uac70\ub098 \uacfc\uac70\uc5d0 \ub4f1\ub85d\uc774 \ub418\uc5c8\ub358 \uc0c1\ud0dc\uc785\ub2c8\ub2e4. + +fail.common.insert = \uc0dd\uc131\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.update = \uc218\uc815\uc774 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.delete = \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.delete.upperMenuExist = \ucc38\uc870\ub418\ub294 \uba54\ub274\uac00 \uc788\uc5b4 \uc0ad\uc81c\uac00 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.select = \uc870\ud68c\uc5d0 \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.login = \ub85c\uadf8\uc778 \uc815\ubcf4\uac00 \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +fail.common.loginIncorrect = {0}\ud68c \uc774\uc0c1 \ub85c\uadf8\uc778 \uc811\uc18d\uc774 \uc2dc\ub3c4 \ub418\uc5b4 \uacc4\uc815\uc774 \uc7a0\uaca8\uc2b5\ub2c8\ub2e4! +fail.common.login.password = \ud328\uc2a4\uc6cc\ub4dc \uc790\ub9ac \uc218\uac00 \uc77c\uce58 \ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.(8\uc790\ub9ac \uc774\uc0c1 20\uc790\ub9ac \uc774\ud558) +fail.common.idsearch = \uc544\uc774\ub514\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +fail.common.pwsearch = \ube44\ubc00\ubc88\ud638\ub97c \ucc3e\uc744\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +fail.request.msg = \uc694\uccad\ucc98\ub9ac\ub97c \uc2e4\ud328\ud558\uc600\uc2b5\ub2c8\ub2e4. +fail.common.login.ip = \ub4f1\ub85d\ub41c IP\uac00 \uc544\ub2c8\ubbc0\ub85c \ub85c\uadf8\uc778\uc774 \uac70\ubd80\ub418\uc5c8\uc2b5\ub2c8\ub2e4. + +#UI User Message# +fail.user.passwordUpdate1=\ud604\uc7ac \ube44\ubc00\ubc88\ud638\uac00 \ub9de\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +fail.user.passwordUpdate2=\ube44\ubc00\ubc88\ud638\uc640 \ube44\ubc00\ubc88\ud638 \ud655\uc778\uc774 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +info.user.rlnmCnfirm=\uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624. +success.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4. +fail.user.rlnmCnfirm=\ud589\uc815\uc548\uc804\ubd80\uc758 \uc8fc\ubbfc\ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +fail.user.connectFail=\uc2dc\uc2a4\ud15c \uc7a5\uc560\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4.(\uc778\uc99d\uc11c\ubc84 \uc5f0\uacb0 \uc2e4\ud328) +info.user.rlnmPinCnfirm=\uacf5\uacf5 \uc544\uc774\ud540 \uc544\uc774\ub514\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc2e4\uba85\ud655\uc778\uc744 \ud558\uc2ed\uc2dc\uc624. +success.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud569\ub2c8\ub2e4. +fail.user.rlnmPinCnfirm=\uacf5\uacf5\uc544\uc774\ud540\uc758 \ub4f1\ub85d\uc790\ub8cc\uc640 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. + + +#UI Cop Message# +cop.extrlUser = \uc678\ubd80\uc0ac\uc6a9\uc790 +cop.intrlUser = \ub0b4\ubd80\uc0ac\uc6a9\uc790 +cop.private = \ube44\uacf5\uac1c +cop.public = \uacf5\uac1c + +cop.adbkNm = \uc8fc\uc18c\ub85d\uba85 +cop.othbcScope = \uacf5\uac1c\ubc94\uc704 +cop.company = \ud68c\uc0ac +cop.part = \ubd80\uc11c +cop.man = \uac1c\uc778 +cop.adbkUser = \uad6c\uc131\uc6d0 +cop.bbsNm = \uac8c\uc2dc\ud310\uba85 +cop.bbsIntrcn = \uac8c\uc2dc\ud310\uc18c\uac1c +cop.bbsTyCode = \uac8c\uc2dc\ud310 \uc720\ud615 +cop.bbsAttrbCode = \uac8c\uc2dc\ud310 \uc18d\uc131 +cop.replyPosblAt = \ub2f5\uc7a5\uac00\ub2a5\uc5ec\ubd80 +cop.fileAtchPosblAt = \ud30c\uc77c\ucca8\ubd80\uac00\ub2a5\uc5ec\ubd80 +cop.posblAtchFileNumber = \ucca8\ubd80\uac00\ub2a5\ud30c\uc77c \uc22b\uc790 +cop.tmplatId = \ud15c\ud50c\ub9bf \uc815\ubcf4 +cop.guestList.subject = \ubc29\uba85\ub85d \uac8c\uc2dc\uae00\uc785\ub2c8\ub2e4. +cop.nttSj = \uc81c\ubaa9 +cop.nttCn = \uae00\ub0b4\uc6a9 +cop.ntceBgnde = \uac8c\uc2dc\uc2dc\uc791\uc77c +cop.ntceEndde = \uac8c\uc2dc\uc885\ub8cc\uc77c +cop.ntcrNm = \uc791\uc131\uc790 +cop.password = \ud328\uc2a4\uc6cc\ub4dc +cop.atchFile = \ud30c\uc77c\ucca8\ubd80 +cop.guestList = \ubc29\uba85\ub85d +cop.guestListCn = \ubc29\uba85\ub85d \ub0b4\uc6a9 +cop.noticeTerm = \uac8c\uc2dc\uae30\uac04 +cop.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d +cop.cmmntyNm = \ucee4\ubba4\ub2c8\ud2f0\uba85 +cop.cmmntyIntrcn = \ucee4\ubba4\ub2c8\ud2f0 \uc18c\uac1c +cop.cmmntyMngr = \ucee4\ubba4\ub2c8\ud2f0 \uad00\ub9ac\uc790 +cop.clbOprtr = \ub3d9\ud638\ud68c \uc6b4\uc601\uc790 +cop.clbIntrcn = \ub3d9\ud638\ud68c \uc18c\uac1c +cop.clbNm = \ub3d9\ud638\ud68c \uba85 +cop.tmplatNm = \ud15c\ud50c\ub9bf\uba85 +cop.tmplatSeCode = \ud15c\ud50c\ub9bf \uad6c\ubd84 +cop.tmplatCours = \ud15c\ud50c\ub9bf\uacbd\ub85c +cop.useAt = \uc0ac\uc6a9\uc5ec\ubd80 +cop.ncrdNm = \uc774\ub984 +cop.cmpnyNm = \ud68c\uc0ac\uba85 +cop.deptNm = \ubd80\uc11c\uba85 +cop.ofcpsNm = \uc9c1\uc704 +cop.clsfNm = \uc9c1\uae09 +cop.emailAdres = \uc774\uba54\uc77c\uc8fc\uc18c +cop.telNo = \uc804\ud654\ubc88\ud638 +cop.mbtlNum = \ud734\ub300\ud3f0\ubc88\ud638 +cop.adres = \uc8fc\uc18c +cop.extrlUserAt = \uc678\ubd80\uc0ac\uc6a9\uc790\uc5ec\ubd80 +cop.publicAt = \uacf5\uac1c\uc5ec\ubd80 +cop.remark = \ube44\uace0 +cop.trgetNm = \ucee4\ubba4\ub2c8\ud2f0/\ub3d9\ud638\ud68c \uc815\ubcf4 +cop.preview = \ubbf8\ub9ac\ubcf4\uae30 + +cop.withdraw.msg=\ud0c8\ud1f4\ucc98\ub9ac \ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +cop.reregist.msg=\uc7ac\uac00\uc785 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +cop.registmanager.msg=\uc6b4\uc601\uc9c4\uc73c\ub85c \ub4f1\ub85d\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +cop.use.msg=\uc0ac\uc6a9 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +cop.unuse.msg=\uc0ac\uc6a9\uc911\uc9c0 \ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c? +cop.delete.confirm.msg=\uc0ac\uc6a9\uc911\uc9c0\ub97c \uc120\ud0dd\ud558\uc2e4 \uacbd\uc6b0 \ub2e4\uc2dc \uc0ac\uc6a9\uc73c\ub85c \ubcc0\uacbd\uc774 \ubd88\uac00\ub2a5\ud569\ub2c8\ub2e4. +cop.ing.msg=\uc2b9\uc778\uc694\uccad \uc911\uc785\ub2c8\ub2e4. +cop.request.msg=\uac00\uc785\uc2e0\uccad\uc774 \uc815\uc0c1\uc801\uc73c\ub85c \uc694\uccad\ub418\uc5c8\uc2b5\ub2c8\ub2e4 +cop.password.msg=\ud328\uc2a4\uc6cc\ub4dc\ub97c \uc785\ub825\ud574 \uc8fc\uc2ed\uc2dc\uc624. +cop.password.not.same.msg=\ud328\uc2a4\uc6cc\ub4dc\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. + +cop.comment.wrterNm = \uc791\uc131\uc790 +cop.comment.commentCn = \ub0b4\uc6a9 +cop.comment.commentPassword = \ud328\uc2a4\uc6cc\ub4dc + +cop.satisfaction.wrterNm = \uc791\uc131\uc790 +cop.satisfaction.stsfdgCn = \ub0b4\uc6a9 +cop.satisfaction.stsfdg = \ub9cc\uc871\ub3c4 +cop.satisfaction.stsfdgPassword = \ud328\uc2a4\uc6cc\ub4dc + +cop.scrap.scrapNm = \uc2a4\ud06c\ub7a9\uba85 + +#UI USS Message# +uss.ion.noi.ntfcSj=\uc81c\ubaa9 +uss.ion.noi.ntfcCn=\ub0b4\uc6a9 +uss.ion.noi.ntfcDate=\uc54c\ub9bc\uc77c\uc790 +uss.ion.noi.ntfcTime=\uc54c\ub9bc\uc2dc\uac04 +uss.ion.noi.ntfcHH=\uc54c\ub9bc\uc2dc\uac04 +uss.ion.noi.ntfcMM=\uc54c\ub9bc\ubd84 +uss.ion.noi.bhNtfcIntrvl=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9 +uss.ion.noi.bhNtfcIntrvl.msg=\uc0ac\uc804\uc54c\ub9bc\uac04\uaca9 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. +uss.ion.noi.alertNtfcTime=\uc54c\ub9bc\uc77c\uc790 \ubc0f \uc2dc\uac04\uc774 \uc720\ud6a8\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. + +#UI COP Message# +cop.sms.trnsmitTelno=\ubc1c\uc2e0\uc804\ud654\ubc88\ud638 +cop.sms.trnsmitCn=\uc804\uc1a1\ub0b4\uc6a9 +cop.sms.recptnTelno=\uc218\uc2e0\uc804\ud654\ubc88\ud638 +cop.sms.send=\uc804\uc1a1 +cop.sms.addRecptn=\ucd94\uac00 +cop.sms.recptnTelno.msg=\uc218\uc2e0\uc804\ud654\ubc88\ud638 \uc9c0\uc815\uc774 \ud544\uc694\ud569\ub2c8\ub2e4. + +#UI sym.log Message# +sym.log.histSeCode = \uc774\ub825\uad6c\ubd84 +sym.log.sysNm = \uc2dc\uc2a4\ud15c\uba85 +sym.log.histCn = \uc774\ub825\ub0b4\uc6a9 +sym.log.atchFile = \ucca8\ubd80\ud30c\uc77c +sym.log.atchFileList = \ucca8\ubd80\ud30c\uc77c\ubaa9\ub85d +sym.ems.receiver = \ubc1b\ub294\uc0ac\ub78c +sym.ems.title = \uc81c\ubaa9 +sym.ems.content = \ubc1c\uc2e0\ub0b4\uc6a9 + +#Vlidator Errors# +errors.prefix=
+errors.suffix=

+ +errors.required={0}\uc740(\ub294) \ud544\uc218 \uc785\ub825\uac12\uc785\ub2c8\ub2e4. +errors.minlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. +errors.maxlength={0}\uc740(\ub294) {1}\uc790 \uc774\uc0c1 \uc785\ub825\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +errors.invalid={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uac12\uc785\ub2c8\ub2e4. +errors.minInteger={0}\uc740(\ub294) \uc720\ud6a8\ud55c \uac12\uc774 \uc544\ub2d9\ub2c8\ub2e4. 1 \uc774\uc0c1\uc758 \uac12\uc744 \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. +errors.byte={0}\uc740(\ub294) byte\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.short={0}\uc740(\ub294) short\ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.integer={0}\uc740(\ub294) \uc815\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.long={0}\uc740(\ub294) long \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.float={0}\uc740(\ub294) \uc2e4\uc218 \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.double={0}\uc740(\ub294) double \ud0c0\uc785\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. + +errors.date={0}\uc740(\ub294) \ub0a0\uc9dc \uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4. +errors.range={0}\uc740(\ub294) {1}\uacfc {2} \uc0ac\uc774\uc758 \uac12\uc774\uc5b4\uc57c \ud569\ub2c8\ub2e4. +errors.creditcard={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc2e0\uc6a9\uce74\ub4dc \ubc88\ud638\uc785\ub2c8\ub2e4. +errors.email={0}\uc740(\ub294) \uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc774\uba54\uc77c \uc8fc\uc18c\uc785\ub2c8\ub2e4. + +errors.ihidnum=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 \uc8fc\ubbfc\ub4f1\ub85d\ubc88\ud638\uc785\ub2c8\ub2e4. +errors.korean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc785\ub825\ud558\uc154\uc57c \ud569\ub2c8\ub2e4. +errors.ip=\uc720\ud6a8\ud558\uc9c0 \uc54a\uc740 IP\uc8fc\uc18c\uc785\ub2c8\ub2e4. + +errors.password1={0}\uc740(\ub294) 8~20\uc790 \ub0b4\uc5d0\uc11c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4. +errors.password2={0}\uc740(\ub294) \ud55c\uae00,\ud2b9\uc218\ubb38\uc790,\ub744\uc5b4\uc4f0\uae30\ub294 \ud5c8\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. +errors.password3={0}\uc740(\ub294) \uc21c\ucc28\uc801\uc778 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +errors.password4={0}\uc740(\ub294) \ubc18\ubcf5\ub418\ub294 \ubb38\uc790\ub098 \uc22b\uc790\ub97c 4\uac1c\uc774\uc0c1 \uc5f0\uc18d\ud574\uc11c \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4. + +errors.notKorean={0}\uc740(\ub294) \ud55c\uae00\uc744 \uc0ac\uc6a9\ud558\uc2e4\uc218 \uc5c6\uc2b5\ub2c8\ub2e4. +error.security.runtime.error = error + +#Xss Errors# +errors.xss.checkerUser=\ud574\ub2f9 \uae30\ub2a5\uc5d0 \ub300\ud55c \uc0ac\uc6a9 \ubc0f \ucc98\ub9ac \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. + +#File Upload / Download +errors.file.extension=\uc9c0\uc6d0\ub418\ub294 \ud30c\uc77c\uc720\ud615\uc774 \uc544\ub2d9\ub2c8\ub2e4. +errors.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc911 \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. +success.file.transfer=\ud30c\uc77c\uc804\uc1a1\uc774 \uc644\ub8cc\ub418\uc5c8\uc2b5\ub2c8\ub2e4. + +#Vlidator Errors- wordDicaryVO# +wordDicaryVO.wordNm=\uc6a9\uc5b4\uba85 +wordDicaryVO.engNm=\uc601\ubb38\uba85 +wordDicaryVO.wordDc=\uc6a9\uc5b4\uc124\uba85 +wordDicaryVO.synonm=\ub3d9\uc758\uc5b4 + +#Vlidator Errors- cnsltManageVO# +cnsltManageVO.cnsltSj=\uc0c1\ub2f4\uc81c\ubaa9 +cnsltManageVO.cnsltCn=\uc0c1\ub2f4\ub0b4\uc6a9 +cnsltManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638 +cnsltManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638 +cnsltManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638 +cnsltManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638 +cnsltManageVO.wrterNm=\uc791\uc131\uc790\uba85 +cnsltManageVO.managtCn=\ub2f5\ubcc0\ub0b4\uc6a9 + +#Vlidator Errors- siteManageVO# +siteManageVO.siteNm=\uc0ac\uc774\ud2b8\uba85 +siteManageVO.siteUrl=\uc0ac\uc774\ud2b8 URL +siteManageVO.siteDc=\uc0ac\uc774\ud2b8\uc124\uba85 +siteManageVO.siteThemaClCode=\uc0ac\uc774\ud2b8\uc8fc\uc81c\ubd84\ub958 +siteManageVO.actvtyAt=\ud65c\uc131\uc5ec\ubd80 +siteManageVO.useAt=\uc0ac\uc6a9\uc5ec\ubd80 + +#Vlidator Errors- recomendSiteManageVO# +recomendSiteManageVO.recomendSiteNm=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uba85 +recomendSiteManageVO.recomendSiteUrl=\ucd94\ucc9c\uc0ac\uc774\ud2b8 URL +recomendSiteManageVO.recomendSiteDc=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc124\uba85 +recomendSiteManageVO.recomendResnCn=\ucd94\ucc9c\uc0ac\uc774\ud2b8\uc2b9\uc778\uc0ac\uc720 +recomendSiteManageVO.confmDe=\uc2b9\uc778\uc77c\uc790 + +#Vlidator Errors- hpcmManageVO# +hpcmManageVO.hpcmSeCode=\ub3c4\uc6c0\ub9d0\uad6c\ubd84 +hpcmManageVO.hpcmDf=\ub3c4\uc6c0\ub9d0\uc815\uc758 +hpcmManageVO.hpcmDc=\ub3c4\uc6c0\ub9d0\uc124\uba85 + +#Vlidator Errors- newsManageVO# +newsManageVO.newsSj=\ub274\uc2a4\uc81c\ubaa9 +newsManageVO.newsCn=\ub274\uc2a4\ub0b4\uc6a9 +newsManageVO.ntceDe=\uac8c\uc2dc\uc77c\uc790 + +#Vlidator Errors- faqManageVO# +faqManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9 +faqManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9 +faqManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9 + +#Vlidator Errors- stplatManageVO# +stplatManageVO.useStplatNm=\uc774\uc6a9\uc57d\uad00\uba85 +stplatManageVO.useStplatCn=\uc774\uc6a9\uc57d\uad00\ub0b4\uc6a9 +stplatManageVO.infoProvdAgreCn=\uc815\ubcf4\uc81c\uacf5\ub3d9\uc758\ub0b4\uc6a9 + +#Vlidator Errors- cpyrhtPrtcPolicyVO# +cpyrhtPrtcPolicyVO.cpyrhtPrtcPolicyCn=\uc800\uc791\uad8c\ubcf4\ud638\uc815\ucc45\ub0b4\uc6a9 + +#Vlidator Errors- qnaManageVO# +qnaManageVO.qestnSj=\uc9c8\ubb38\uc81c\ubaa9 +qnaManageVO.qestnCn=\uc9c8\ubb38\ub0b4\uc6a9 +qnaManageVO.writngPassword=\uc791\uc131\ube44\ubc00\ubc88\ud638 +qnaManageVO.areaNo=\uc9c0\uc5ed\ubc88\ud638 +qnaManageVO.middleTelno=\uc911\uac04\uc804\ud654\ubc88\ud638 +qnaManageVO.endTelno=\ub05d\uc804\ud654\ubc88\ud638 +qnaManageVO.wrterNm=\uc791\uc131\uc790\uba85 +qnaManageVO.answerCn=\ub2f5\ubcc0\ub0b4\uc6a9 + +#Vlidator Errors- ReprtStatsVO# +sts.reprtId = \ubcf4\uace0\uc11cID +sts.title = \ubcf4\uace0\uc11c\uba85 +sts.category = \ubcf4\uace0\uc11c\uc720\ud615 +sts.status = \uc9c4\ud589\uc0c1\ud0dc +sts.regDate = \ub4f1\ub85d\uc77c\uc2dc + +#Rest day messages# +sym.cal.restDay = \ud734\uc77c\uc77c\uc790 +sym.cal.restName = \ud734\uc77c\uba85 +sym.cal.restDetail = \ud734\uc77c\uc124\uba85 +sym.cal.restCategory = \ud734\uc77c\uad6c\ubd84 + +image.errorBg = \uc624\ub958\uc774\ubbf8\uc9c0 + + +#Custom message# +custom.fail.access=\uc815\uc0c1\uc801\uc778 \uc811\uadfc\uc774 \uc544\ub2d9\ub2c8\ub2e4. \ub85c\uadf8\uc778 \ud6c4 \uc774\uc6a9\ud558\uc138\uc694. +custom.fail.accessDenied=\uc694\uccad\uc5d0 \ub300\ud55c \uad8c\ud55c\uc774 \uc5c6\uc2b5\ub2c8\ub2e4. +custom.isNotExist.msg=\ucc98\ub9ac\uc5d0 \ud544\uc694\ud55c \uc790\ub8cc\uac00 \uc874\uc7ac\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. diff --git a/src/test/resources/spring/context-beans.xml b/src/test/resources/spring/context-beans.xml index f8c9ec8..2d81247 100644 --- a/src/test/resources/spring/context-beans.xml +++ b/src/test/resources/spring/context-beans.xml @@ -1,10 +1,10 @@ - - - - + + + + \ No newline at end of file diff --git a/src/test/resources/spring/context-common.xml b/src/test/resources/spring/context-common.xml index 5a3e076..c3ad1ed 100644 --- a/src/test/resources/spring/context-common.xml +++ b/src/test/resources/spring/context-common.xml @@ -1,68 +1,68 @@ - - - - - - - - - - - - - - - - classpath:message/message-common - classpath:message/authentication-message - classpath:org/egovframe/rte/fdl/property/messages/properties - - - - - 60 - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + classpath:message/message-common + classpath:message/authentication-message + classpath:org/egovframe/rte/fdl/property/messages/properties + + + + + 60 + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/test/resources/spring/context-datasource.xml b/src/test/resources/spring/context-datasource.xml index dc3465a..dac777f 100644 --- a/src/test/resources/spring/context-datasource.xml +++ b/src/test/resources/spring/context-datasource.xml @@ -1,49 +1,49 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/test/resources/sql/mapper/base/test.xml b/src/test/resources/sql/mapper/base/test.xml index f62c6fc..2774ae9 100644 --- a/src/test/resources/sql/mapper/base/test.xml +++ b/src/test/resources/sql/mapper/base/test.xml @@ -1,6 +1,6 @@ - + ${sql} diff --git a/src/test/resources/sql/mybatis-config.xml b/src/test/resources/sql/mybatis-config.xml index 03ad4e8..ab0047a 100644 --- a/src/test/resources/sql/mybatis-config.xml +++ b/src/test/resources/sql/mybatis-config.xml @@ -1,25 +1,25 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file