From 658958c9ef4b28df48201764655246168ed14952 Mon Sep 17 00:00:00 2001 From: Rinjae Date: Tue, 30 Jun 2026 15:38:40 +0900 Subject: [PATCH] =?UTF-8?q?-=20=EB=B2=95=EC=9D=B8=20=ED=83=88=ED=87=B4=20?= =?UTF-8?q?=EC=8B=9C=20=EB=AF=BC=EA=B0=90=EC=A0=95=EB=B3=B4=20=EC=82=AD?= =?UTF-8?q?=EC=A0=9C=20=EB=A1=9C=EC=A7=81=20=EC=B6=94=EA=B0=80=20-=20CSS?= =?UTF-8?q?=20=EC=88=98=EC=A0=95:=20=ED=8F=B0=ED=8A=B8=20=ED=81=AC?= =?UTF-8?q?=EA=B8=B0=20=EC=A0=9C=EA=B1=B0=20=EB=B0=8F=20=EC=8A=A4=ED=83=80?= =?UTF-8?q?=EC=9D=BC=20=EB=B3=80=EA=B2=BD=20=EC=A0=81=EC=9A=A9=20-=20?= =?UTF-8?q?=EC=98=88=EC=83=81=EC=99=84=EB=A3=8C=EC=9D=BC=20=EC=9A=94?= =?UTF-8?q?=EC=9D=BC=20=EA=B3=84=EC=82=B0=20=EB=A1=9C=EC=A7=81=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apim/portal/approval/entity/Approval.java | 18 +++++++++++++++++- .../portal/portalorg/entity/PortalOrg.java | 18 ++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/eactive/apim/portal/approval/entity/Approval.java b/src/main/java/com/eactive/apim/portal/approval/entity/Approval.java index de1f444..5dba536 100644 --- a/src/main/java/com/eactive/apim/portal/approval/entity/Approval.java +++ b/src/main/java/com/eactive/apim/portal/approval/entity/Approval.java @@ -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 ""; + } + } } diff --git a/src/main/java/com/eactive/apim/portal/portalorg/entity/PortalOrg.java b/src/main/java/com/eactive/apim/portal/portalorg/entity/PortalOrg.java index 4d5eeca..b8065c9 100644 --- a/src/main/java/com/eactive/apim/portal/portalorg/entity/PortalOrg.java +++ b/src/main/java/com/eactive/apim/portal/portalorg/entity/PortalOrg.java @@ -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; + } }