feat: 자동설정 INQIRE_SE_CODE 로직 추가 및 스키마 설명 업데이트

main
박성영 4 weeks ago
parent 0efd8c3b1d
commit c47a2af121

@ -115,7 +115,6 @@ public class VehicleInterfaceController {
{ {
"VHRNO": "12가3456", "VHRNO": "12가3456",
"LEVY_STDDE": "20250101", "LEVY_STDDE": "20250101",
"INQIRE_SE_CODE": "1",
"VIN": "KMHAB812345678901" "VIN": "KMHAB812345678901"
} }
] ]
@ -211,7 +210,6 @@ public class VehicleInterfaceController {
"CPTTR_LEGALDONG_CODE": "1111011700", "CPTTR_LEGALDONG_CODE": "1111011700",
"ROUTE_SE_CODE": "3", "ROUTE_SE_CODE": "3",
"DETAIL_EXPRESSION": "1", "DETAIL_EXPRESSION": "1",
"INQIRE_SE_CODE": "1"
} }
] ]
} }

@ -47,7 +47,7 @@ public class BasicRequest {
@JsonProperty("LEVY_STDDE") @JsonProperty("LEVY_STDDE")
private String levyStdde; private String levyStdde;
@Schema(description = "조회구분코드 {1:열람, 2:발급}") @Schema(description = "조회구분코드 (자동설정: VHRNO not null → 3:자동차번호, VIN not null → 2:차대번호)")
@JsonProperty("INQIRE_SE_CODE") @JsonProperty("INQIRE_SE_CODE")
private String inqireSeCode; private String inqireSeCode;

@ -72,7 +72,7 @@ public class LedgerRequest {
@JsonProperty("DETAIL_EXPRESSION") @JsonProperty("DETAIL_EXPRESSION")
private String detailExpression; private String detailExpression;
@Schema(description = "조회구분코드 {1:열람, 2:발급}") @Schema(description = "조회구분코드 (자동설정: 1:열람 고정)")
@JsonProperty("INQIRE_SE_CODE") @JsonProperty("INQIRE_SE_CODE")
private String inqireSeCode; private String inqireSeCode;

@ -14,6 +14,9 @@ import lombok.extern.slf4j.Slf4j;
* - INFO_SYS_ID, INFO_SYS_IP, SIGUNGU_CODE * - INFO_SYS_ID, INFO_SYS_IP, SIGUNGU_CODE
* - CNTC_INFO_CODE (service specific) * - CNTC_INFO_CODE (service specific)
* - CHARGER_ID, CHARGER_IP, CHARGER_NM * - CHARGER_ID, CHARGER_IP, CHARGER_NM
* - INQIRE_SE_CODE (automatic based on business rules)
* - Basic: VHRNO not null 3:, VIN not null 2:
* - Ledger: Always 1 ()
*/ */
@Slf4j @Slf4j
@Component @Component
@ -38,6 +41,14 @@ public class RequestEnricher {
req.setChargerId(sys.getChargerId()); req.setChargerId(sys.getChargerId());
req.setChargerIp(sys.getChargerIp()); req.setChargerIp(sys.getChargerIp());
req.setChargerNm(sys.getChargerNm()); req.setChargerNm(sys.getChargerNm());
// 자동차 기본사항 조회 시 INQIRE_SE_CODE 자동 설정
// VHRNO(차량번호) not null → 3:자동차번호, VIN(차대번호) not null → 2:차대번호
if (req.getVhrno() != null && !req.getVhrno().trim().isEmpty()) {
req.setInqireSeCode("3");
} else if (req.getVin() != null && !req.getVin().trim().isEmpty()) {
req.setInqireSeCode("2");
}
} }
log.debug("[ENRICH] basic: applied INFO_SYS_ID={}, INFO_SYS_IP={}, SIGUNGU_CODE={}, CNTC_INFO_CODE={}", log.debug("[ENRICH] basic: applied INFO_SYS_ID={}, INFO_SYS_IP={}, SIGUNGU_CODE={}, CNTC_INFO_CODE={}",
sys.getInfoSysId(), sys.getInfoSysIp(), sys.getSigunguCode(), cntc); sys.getInfoSysId(), sys.getInfoSysIp(), sys.getSigunguCode(), cntc);
@ -56,6 +67,9 @@ public class RequestEnricher {
req.setChargerId(sys.getChargerId()); req.setChargerId(sys.getChargerId());
req.setChargerIp(sys.getChargerIp()); req.setChargerIp(sys.getChargerIp());
req.setChargerNm(sys.getChargerNm()); req.setChargerNm(sys.getChargerNm());
// 자동차 등록원부(갑) 조회 시 INQIRE_SE_CODE는 항상 1(열람)로 고정
req.setInqireSeCode("1");
} }
log.debug("[ENRICH] ledger: applied INFO_SYS_ID={}, INFO_SYS_IP={}, SIGUNGU_CODE={}, CNTC_INFO_CODE={}", log.debug("[ENRICH] ledger: applied INFO_SYS_ID={}, INFO_SYS_IP={}, SIGUNGU_CODE={}, CNTC_INFO_CODE={}",
sys.getInfoSysId(), sys.getInfoSysIp(), sys.getSigunguCode(), cntc); sys.getInfoSysId(), sys.getInfoSysIp(), sys.getSigunguCode(), cntc);

Loading…
Cancel
Save