### feat: 비고(Remark) 생성 로직 개선 및 메서드 분리

- **비고 생성 메서드 수정 및 분리**
  - `ComparisonOmRemarkBuilder` 및 `ComparisonRemarkBuilder`:
    - `buildProductCloseLevyRemark` 메서드를 `buildProductCloseRemark`와 `buildProductLevyRemark`로 각각 분리.
    - 비고 형식과 요구사항에 따라 명확히 구분된 메서드 제공.
  - `OwnerTransferRemarkBuilder`와 관련된 비고 생성 메서드 개선:
    - 파라미터 추가(`sggNm`, `ownerNm`)로 상세 정보 포함 가능.

- **Checker 클래스 로직 수정**
  - `ProductLevyOver31Checker`, `ProductCloseWithin31Checker`, `OwnerTransferOmChecker`:
    - 분리된 비고 생성 메서드 호출 방식으로 변경.
    - 불필요 매개변수 제거 및 명확성 증가.

- **비고 형식 변경**
  - 31일 이내: `명의이전(YYYY.MM.DD) 이전소유자 상품용`
  - 31일 초과: `시군구명/소유자명, 미수검명의이전(YYYY.MM.DD)`

- **기타**
  - 중복된 메서드 제거 및 가독성을 위한 리팩토링.
  - 기존 로직 및 형식에 맞춰 코드 정리.
main
박성영 5 days ago
parent fb63a0bc2b
commit 28fc8c4b87

@ -30,19 +30,31 @@ public class ComparisonRemarkBuilder {
}
/**
*
* : (25.9.5.) , /
* - (31 )
* : (25.9.11.)
*
* @param ledgerRecord ( )
* @return
*/
public static String buildProductCloseRemark(NewLedgerResponse.Record ledgerRecord) {
String chgYmdFormatted = DateUtil.formatToShortDate(ledgerRecord.getChgYmd());
return String.format("명의이전(%s) 이전소유자 상품용", chgYmdFormatted);
}
/**
* - (31 )
* : / , (25.8.19.)
*
* @param ledgerRecord ( )
* @param sggNm
* @param ownerNm
* @return
*/
public static String buildProductCloseLevyRemark(NewLedgerResponse.Record ledgerRecord,
String sggNm, String ownerNm) {
public static String buildProductLevyRemark(NewLedgerResponse.Record ledgerRecord,
String sggNm, String ownerNm) {
String chgYmdFormatted = DateUtil.formatToShortDate(ledgerRecord.getChgYmd());
return String.format("명의이전(%s) 이전소유자 상품용, %s/ %s",
chgYmdFormatted, StringUtil.nvl(sggNm), StringUtil.nvl(ownerNm));
return String.format("%s/ %s, 미수검명의이전(%s)",
StringUtil.nvl(sggNm), StringUtil.nvl(ownerNm), chgYmdFormatted);
}
/**

@ -198,7 +198,7 @@ public class ProductCloseWithin31Checker extends AbstractComparisonChecker {
String ownerNm = step1Record.getRprsOwnrNm();
// ========== 비고 생성 ==========
String rmrk = ComparisonRemarkBuilder.buildProductCloseLevyRemark(targetRecord, sggNm, ownerNm);
String rmrk = ComparisonRemarkBuilder.buildProductCloseRemark(targetRecord);
String rmrkDtl = ComparisonRemarkBuilder.buildProductCloseLevyRemarkDetail(
vhclno, inspYmd, step1OwnerName, targetChgYmd, step4OwnerName, daysBetween);

@ -200,7 +200,7 @@ public class ProductLevyOver31Checker extends AbstractComparisonChecker {
String ownerNm = step1Record.getRprsOwnrNm();
// ========== 비고 생성 ==========
String rmrk = ComparisonRemarkBuilder.buildProductCloseLevyRemark(targetRecord, sggNm, ownerNm);
String rmrk = ComparisonRemarkBuilder.buildProductLevyRemark(targetRecord, sggNm, ownerNm);
String rmrkDtl = ComparisonRemarkBuilder.buildProductLevyOver31RemarkDetail(
vhclno, inspYmd, step1OwnerName, targetChgYmd, step4OwnerName, daysBetween);

@ -32,31 +32,31 @@ public class ComparisonOmRemarkBuilder {
/**
* -
* : (25.5.19.) , /
* : (25.9.5.)
*
* @param ledgerRecord ( )
* @param sggNm
* @param ownerNm
* @return
*/
public static String buildProductCloseLevyRemark(NewLedgerResponse.Record ledgerRecord,
String sggNm, String ownerNm) {
public static String buildProductCloseLevyRemark(NewLedgerResponse.Record ledgerRecord) {
String chgYmdFormatted = DateUtil.formatToShortDate(ledgerRecord.getChgYmd());
return String.format("명의이전(%s) 이전소유자 상품용, %s/ %s",
chgYmdFormatted, StringUtil.nvl(sggNm), StringUtil.nvl(ownerNm));
return String.format("명의이전(%s) 이전소유자 상품용", chgYmdFormatted);
}
/**
* -
* : (25.5.19.)()
* : / , (25.5.19.)()
*
* @param ledgerRecord ( )
* @param sggNm
* @param ownerNm
* @param vhclno
* @return
*/
public static String buildOwnerChangeRemark(NewLedgerResponse.Record ledgerRecord, String vhclno) {
public static String buildOwnerChangeRemark(NewLedgerResponse.Record ledgerRecord,
String sggNm, String ownerNm, String vhclno) {
String chgYmdFormatted = DateUtil.formatToShortDate(ledgerRecord.getChgYmd());
return String.format("미수검명의이전(%s)(%s)", chgYmdFormatted, StringUtil.nvl(vhclno));
return String.format("%s/ %s, 미수검명의이전(%s)(%s)",
StringUtil.nvl(sggNm), StringUtil.nvl(ownerNm), chgYmdFormatted, StringUtil.nvl(vhclno));
}
/**

@ -227,7 +227,7 @@ public class OwnerTransferOmChecker extends AbstractComparisonOmChecker {
log.info("[명의이전-미필] 명의이전 전 소유자가 상품용");
taskPrcsSttsCd = TaskPrcsSttsConstants.TASK_PRCS_STTS_CD_01_RCPT; // 접수
rmrk = ComparisonOmRemarkBuilder.buildProductCloseLevyRemark(targetRecord, sggNm, ownerNm);
rmrk = ComparisonOmRemarkBuilder.buildProductCloseLevyRemark(targetRecord);
rmrkDtl = ComparisonOmRemarkBuilder.buildProductCloseLevyRemarkDetail(
vhclno, inspVldPrdEnd, levyCrtrYmd, step1OwnerName, targetChgYmd, step4OwnerName);
} else {
@ -235,7 +235,7 @@ public class OwnerTransferOmChecker extends AbstractComparisonOmChecker {
log.info("[명의이전-미필] 명의이전 전 소유자가 상품용 아님");
taskPrcsSttsCd = TaskPrcsSttsConstants.TASK_PRCS_STTS_CD_01_RCPT; // 접수
rmrk = ComparisonOmRemarkBuilder.buildOwnerChangeRemark(targetRecord, vhclno);
rmrk = ComparisonOmRemarkBuilder.buildOwnerChangeRemark(targetRecord, sggNm, ownerNm, vhclno);
rmrkDtl = ComparisonOmRemarkBuilder.buildOwnerChangeRemarkDetail(
vhclno, inspVldPrdEnd, levyCrtrYmd, step1OwnerName, targetChgYmd, step4OwnerName);
}

Loading…
Cancel
Save