Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ca44e8a967 | |||
| ce3efa299e | |||
| ad2ecb0b82 | |||
| f7bff90844 | |||
| 658958c9ef |
@@ -77,5 +77,21 @@ public class Approval implements Serializable, com.eactive.eai.data.Data {
|
||||
private LocalDateTime approvalDate;
|
||||
|
||||
@Column(name = "expect_end_date")
|
||||
private String expectEndDate; //예상완료일
|
||||
private String expectEndDate; //예상완료일 (yyyyMMdd)
|
||||
|
||||
/** 예상완료일(yyyyMMdd)의 한글 요일. 값이 없거나 형식이 맞지 않으면 빈 문자열. (예: "토") */
|
||||
@Transient
|
||||
public String getExpectEndDateDayOfWeek() {
|
||||
if (expectEndDate == null || expectEndDate.length() < 8) {
|
||||
return "";
|
||||
}
|
||||
try {
|
||||
return java.time.LocalDate
|
||||
.parse(expectEndDate.substring(0, 8), java.time.format.DateTimeFormatter.ofPattern("yyyyMMdd"))
|
||||
.getDayOfWeek()
|
||||
.getDisplayName(java.time.format.TextStyle.SHORT, java.util.Locale.KOREAN);
|
||||
} catch (Exception e) {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -104,4 +104,22 @@ public class PortalOrg extends Auditable implements Serializable, com.eactive.ea
|
||||
this.orgPhoneNumber = PhoneNumberUtil.normalize(this.orgPhoneNumber);
|
||||
this.scPhoneNumber = PhoneNumberUtil.normalize(this.scPhoneNumber);
|
||||
}
|
||||
|
||||
/**
|
||||
* 법인 반려/삭제(탈퇴) 시 사업자등록번호·법인등록번호 등 민감/개인정보 필드를 제거한다.
|
||||
* orgName·orgStatus·approvalStatus 등 상태값은 호출 측에서 별도 설정한다.
|
||||
*/
|
||||
public void clearSensitiveDataOnRemoval() {
|
||||
this.corpRegNo = null;
|
||||
this.compRegNo = null;
|
||||
this.orgCode = null;
|
||||
this.compRegFile = null;
|
||||
this.ceoName = null;
|
||||
this.orgAddr = null;
|
||||
this.orgPhoneNumber = null;
|
||||
this.scPhoneNumber = null;
|
||||
this.orgSectors = null;
|
||||
this.orgIndustryType = null;
|
||||
this.serviceName = null;
|
||||
}
|
||||
}
|
||||
|
||||
+12
-1
@@ -51,13 +51,24 @@ public class PortalPropertyService extends AbstractDataService<PortalPropertyGro
|
||||
Optional<PortalProperty> existingProperty = portalPropertyRepository.findById(propertyId);
|
||||
|
||||
if (existingProperty.isPresent()) {
|
||||
return existingProperty.get().getPropertyValue();
|
||||
PortalProperty property = existingProperty.get();
|
||||
// 설명(property_desc)이 비어 있으면 코드가 넘긴 description 으로 채운다.
|
||||
// (값이 있으면 관리자 편집분 보존 — 덮어쓰지 않음)
|
||||
if (isBlank(property.getPropertyDesc()) && !isBlank(description)) {
|
||||
property.setPropertyDesc(description);
|
||||
portalPropertyRepository.save(property);
|
||||
}
|
||||
return property.getPropertyValue();
|
||||
}
|
||||
|
||||
// 프로퍼티가 없으면 기본값으로 생성
|
||||
return createDefaultProperty(groupName, propertyName, defaultValue, description);
|
||||
}
|
||||
|
||||
private static boolean isBlank(String s) {
|
||||
return s == null || s.trim().isEmpty();
|
||||
}
|
||||
|
||||
/**
|
||||
* 기본 프로퍼티를 DB에 생성
|
||||
*/
|
||||
|
||||
@@ -60,7 +60,8 @@ public enum MessageCode {
|
||||
@Getter
|
||||
private final String serviceId;
|
||||
@Getter
|
||||
private final int channels;
|
||||
@Deprecated // 삭제 예정
|
||||
private int channels = 0;
|
||||
|
||||
|
||||
public static Optional<MessageCode> findServiceId(String code) {
|
||||
@@ -72,6 +73,11 @@ public enum MessageCode {
|
||||
return Optional.empty();
|
||||
}
|
||||
|
||||
MessageCode(String description, String serviceId) {
|
||||
this.description = description;
|
||||
this.serviceId = serviceId;
|
||||
// this.channels = channel.getValue();
|
||||
}
|
||||
|
||||
MessageCode(String description, String serviceId, Channels channel) {
|
||||
this.description = description;
|
||||
|
||||
@@ -59,8 +59,11 @@ public class MessageRequest implements Serializable {
|
||||
@Convert(converter = PersonalDataEncryptConverter.class)
|
||||
private String phone;
|
||||
|
||||
@Column(name = "user_id")
|
||||
private String userId;
|
||||
|
||||
@ManyToOne(fetch = FetchType.EAGER)
|
||||
@JoinColumn(name = "user_id", foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT))
|
||||
@JoinColumn(name = "user_id", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT))
|
||||
@NotFound(action = NotFoundAction.IGNORE)
|
||||
@Comment("발송 대상 사용자")
|
||||
private PortalUser user;
|
||||
@@ -80,5 +83,4 @@ public class MessageRequest implements Serializable {
|
||||
|
||||
@Column(name = "service_id")
|
||||
private String serviceId;
|
||||
|
||||
}
|
||||
|
||||
@@ -89,6 +89,7 @@ public class MessageSendService {
|
||||
smsRequest.setPhone(user.getPhone());
|
||||
smsRequest.setEaiInterfaceId(smsEaiInterfaceId);
|
||||
smsRequest.setServiceId(portalProperties.get("ums.sms.tx_id"));
|
||||
smsRequest.setUserId(user.getUserId());
|
||||
if ("ADMIN_VERIFICATION_MOBILEPHONE".equals(template.getMessageCode().toUpperCase())) {
|
||||
smsRequest.setMessageType("KAKAO");
|
||||
} else {
|
||||
@@ -111,6 +112,7 @@ public class MessageSendService {
|
||||
emailRequest.setEaiInterfaceId(mailEaiInterfaceId);
|
||||
emailRequest.setServiceId(portalProperties.get("ums.email.tx_id"));
|
||||
emailRequest.setMessageType("EMAIL");
|
||||
emailRequest.setUserId(user.getUserId());
|
||||
messageRequestRepository.save(emailRequest);
|
||||
logger.debug(emailRequest.toString());
|
||||
}
|
||||
@@ -128,6 +130,7 @@ public class MessageSendService {
|
||||
messengerRequest.setEaiInterfaceId(swingEaiInterfaceId);
|
||||
messengerRequest.setServiceId(portalProperties.get("ums.messenger.tx_id"));
|
||||
messengerRequest.setMessageType("MESSENGER");
|
||||
messengerRequest.setUserId(user.getUserId());
|
||||
messageRequestRepository.save(messengerRequest);
|
||||
logger.debug(messengerRequest.toString());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user