From 9a9daadc23dbd60133f5aa704218c7f11c3914f2 Mon Sep 17 00:00:00 2001 From: "Jonguk. Lim" Date: Thu, 23 May 2024 18:10:14 +0900 Subject: [PATCH] fix: DTO fix --- .../adds/biz/nims/model/BizNimsRequest.java | 23 +- .../adds/core/spring/config/JasyptConfig.java | 16 +- .../cokr/xit/adds/inf/nims/model/Aar.java | 311 ------------------ .../adds/inf/nims/model/NimsAarResult.java | 85 ----- .../xit/adds/inf/nims/model/NimsApiDto.java | 22 +- .../adds/inf/mois/model/ExchangeDtoTest.java | 2 +- .../inf/mois/model/ExchangeMisDtoTest.java | 2 +- .../inf/mois/model/ExchangepackDtoTest.java | 2 +- .../xit/adds/inf/nims/model/AarDtoTest.java | 138 -------- 9 files changed, 40 insertions(+), 561 deletions(-) delete mode 100644 src/main/java/cokr/xit/adds/inf/nims/model/Aar.java delete mode 100644 src/main/java/cokr/xit/adds/inf/nims/model/NimsAarResult.java delete mode 100644 src/test/java/cokr/xit/adds/inf/nims/model/AarDtoTest.java diff --git a/src/main/java/cokr/xit/adds/biz/nims/model/BizNimsRequest.java b/src/main/java/cokr/xit/adds/biz/nims/model/BizNimsRequest.java index 5c5d7dd..a119780 100644 --- a/src/main/java/cokr/xit/adds/biz/nims/model/BizNimsRequest.java +++ b/src/main/java/cokr/xit/adds/biz/nims/model/BizNimsRequest.java @@ -256,7 +256,7 @@ public class BizNimsRequest { @Schema(title = "폐기보고처리상태", example = " ") private String stts; - @Schema(requiredMode = REQUIRED) + @Schema(requiredMode = REQUIRED, description = "폐기 관리 상세 목록", example = " ") @Builder.Default @Valid List dsuseMgtDtls = new ArrayList<>(); @@ -273,68 +273,84 @@ public class BizNimsRequest { @EqualsAndHashCode(callSuper = false) @JsonInclude(JsonInclude.Include.NON_NULL) public static class DsuseMgtDtl extends AuditDto { - // 폐기관리_id + /** + * 폐기관리ID + */ + @Schema(title = "폐기관리ID-업무의필요에의해추가", example = " ") private String dscdmngId; - // 폐기관리_순번 + /** + * 폐기관리순번 + */ + @Schema(title = "폐기관리순번-업무의필요에의해추가", example = " ") private String dscdmngSn; /** * 제품_코드 - 13자리 */ + @Schema(title = "제품코드", example = " ") @Pattern(regexp = "[0-9a-zA-Z]{13}", message = "제품코드는 13자리 입니다") private String prductCd; /** * 제품명 */ + @Schema(title = "제품명", example = " ") @NotEmpty(message = "제품명은 필수 입니다") private String prductNm; /** * 최소유통단위 수량 : 1 ~ */ + @Schema(title = "최소유통단위수량", example = " ") @Positive(message="최소유통단위 수량을 입력해 주세요(ex. 1)") private Integer minDistbQy; /** * 낱개단위 수량 : 0 ~ */ + @Schema(title = "낱개단위수량", example = " ") @PositiveOrZero(message = "낱개단위 수량은 필수 입니다(ex. 0)") private Integer pceQy; /** * 제조번호 - 20자리 이하 */ + @Schema(title = "제품번호", example = " ") @Pattern(regexp = "[0-9a-zA-Z]{1,20}", message = "제조번호는 필수 입니다") private String mnfNo; /** * 제품 유효기한 일자 - yyyyMMdd */ + @Schema(title = "제품유효기간", example = " ") @Pattern(regexp = Constants.DATE_REGX, message = "제품 유효 기간을 정확히 입력해 주세요(yyyyMMdd)") private String prdValidDe; /** * 제조 일련번호 - 20자리 이하 */ + @Schema(title = "제조일련번호", example = " ") @Pattern(regexp = "[0-9a-zA-Z]{1,20}", message = "제조 일련번호는 필수 입니다") private String mnfSeq; /** * 폐기 수량 */ + @Schema(title = "폐기수량", example = " ") @Positive(message = "폐기 수량은 0보다 커야 합니다") private Integer dsuseQy; /** * 사용자보고식별번호 */ + @Schema(title = "사용자보고식별번호", example = " ") private String usrRptIdNo; /** * 사용자 보고 라인 식별 번호 */ + @Schema(title = "사용자보고라인식별번호", example = " ") private String usrRptLnIdNo; /** @@ -343,6 +359,7 @@ public class BizNimsRequest { * -> 일치하는 경우 "Y" * */ + @Schema(title = "데이타유효성체크-업무의필요에의해추가", example = " ") private String validYn; } diff --git a/src/main/java/cokr/xit/adds/core/spring/config/JasyptConfig.java b/src/main/java/cokr/xit/adds/core/spring/config/JasyptConfig.java index 0c23009..337f4e6 100644 --- a/src/main/java/cokr/xit/adds/core/spring/config/JasyptConfig.java +++ b/src/main/java/cokr/xit/adds/core/spring/config/JasyptConfig.java @@ -8,21 +8,7 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -/** - *
- * description : properties 암호화 설정
- * packageName : cokr.xit.core.spring.config
- * fileName    : JasyptConfig
- * author      : julim
- * date        : 2024-05-08
- * ======================================================================
- * 변경일         변경자        변경 내용
- * ----------------------------------------------------------------------
- * 2024-05-08    julim       최초 생성
- *
- * 
- */ -//FIXME :: properties 암호화시 사용 + @Configuration public class JasyptConfig { @Value("${app.jasypt.secretKey:none}") diff --git a/src/main/java/cokr/xit/adds/inf/nims/model/Aar.java b/src/main/java/cokr/xit/adds/inf/nims/model/Aar.java deleted file mode 100644 index c2e95ec..0000000 --- a/src/main/java/cokr/xit/adds/inf/nims/model/Aar.java +++ /dev/null @@ -1,311 +0,0 @@ -// package cokr.xit.adds.inf.nims.model; -// -// import java.util.List; -// -// import com.fasterxml.jackson.annotation.JsonInclude; -// import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper; -// import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty; -// import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement; -// -// import jakarta.xml.bind.annotation.XmlAccessType; -// import jakarta.xml.bind.annotation.XmlAccessorType; -// import lombok.AllArgsConstructor; -// import lombok.Builder; -// import lombok.NoArgsConstructor; -// -// /** -// *
-//  * description : NIMS xsd 구조 정의
-//  *               마약류 관리 시스템 연계시 사용되는 xsd 구조 정의
-//  *               -> 폐기(AAR)
-//  *
-//  * packageName : cokr.xit.adds.inf.nims.model
-//  * fileName    : Aar
-//  * author      : limju
-//  * date        : 2024-03-22
-//  * ======================================================================
-//  * 변경일         변경자        변경 내용
-//  * ----------------------------------------------------------------------
-//  * 2024-03-22    limju       최초 생성
-//  *
-//  * 
-// */ -// @JacksonXmlRootElement(localName = "aar_regist", namespace = "https://www.nims.or.kr/schema/nims") -// @NoArgsConstructor -// @AllArgsConstructor -// @Builder -// public class Aar { -// @JacksonXmlProperty(localName = "REPORT_SET") -// private ReportSet reportSet; -// -// @JsonInclude(JsonInclude.Include.NON_NULL) -// @XmlAccessorType(XmlAccessType.FIELD) -// @NoArgsConstructor -// @AllArgsConstructor -// @Builder -// public static class ReportSet { -// /** -// * 필수 - 보고자식별ID -// */ -// @JacksonXmlProperty(localName = "UID") -// private String uid; -// -// /** -// * 필수 - 소프트웨어ID -// */ -// @JacksonXmlProperty(localName = "SW_ID") -// private String swId; -// -// /** -// * 수불비고 - 보고사유 기재 -// */ -// @JacksonXmlProperty(localName = "RND_RMK") -// private String rndRmk; -// -// /** -// * Header -// */ -// @JacksonXmlElementWrapper(useWrapping = false) -// @JacksonXmlProperty(localName = "HEADER") -// private List
header; -// -// } -// -// @JsonInclude(JsonInclude.Include.NON_NULL) -// @NoArgsConstructor -// @AllArgsConstructor -// @Builder -// public static class Header { -// /** -// * 필수 - 취급일자 -// * 폐기신청민원 처리일자(공문시행일자) -// */ -// @JacksonXmlProperty(localName = "HDR_DE") -// private String hdrDe; -// -// /** -// * 필수 - 마약류취급자식별번호 -// */ -// @JacksonXmlProperty(localName = "BSSH_CD") -// private String bsshCd; -// -// /** -// * 필수 - 보고구분코드 -// * AAR - 폐기 -// */ -// @JacksonXmlProperty(localName = "RPT_SE_CD") -// private String rptSeCd; -// -// /** -// * 필수 - 사용자보고식별번호 -// * 보고자 시스템에서 관리하는 고유식별번호 -// * 변경|취소시 에도 다른 식별 번호 생성 -// */ -// @JacksonXmlProperty(localName = "USR_RPT_ID_NO") -// private String usrRptIdNo; -// -// /** -// * 참조사용자보고식별번호(변경|취소시 필수) -// * 원본 사용자보고식별번호 기입 -// */ -// @JacksonXmlProperty(localName = "REF_USR_RPT_ID_NO") -// private String refUsrRptIdNo; -// -// /** -// * 필수 - 보고유형코드 -// * 0-신규, 1-취소, 2-변경 -// */ -// @JacksonXmlProperty(localName = "RPT_TY_CD") -// private String rptTyCd; -// -// /** -// * 비고(변경 및 취소시 필수-사유 기재) -// */ -// @JacksonXmlProperty(localName = "RMK") -// private String rmk; -// -// /** -// * 필수 - 보고자명 -// */ -// @JacksonXmlProperty(localName = "RPTR_NM") -// private String rptrNm; -// -// /** -// * 필수 - 보고자업체명 -// */ -// @JacksonXmlProperty(localName = "RPTR_ENTRPS_NM") -// private String rptrEntrpsNm; -// -// /** -// * 필수 - 담당자명 -// */ -// @JacksonXmlProperty(localName = "CHRG_NM") -// private String chrgNm; -// -// /** -// * 필수 - 담당자 전화번호 -// */ -// @JacksonXmlProperty(localName = "CHRG_TEL_NO") -// private String chrgTelNo; -// -// /** -// * 필수 - 담당자 휴대폰 번호 -// * 암호화 필요 -// */ -// @JacksonXmlProperty(localName = "CHRG_MP_NO") -// private String chrgMpNo; -// -// /** -// * 필수 - 수불 상세 보고수 -// * 당해 보고건의 라인수 -// */ -// @JacksonXmlProperty(localName = "RND_DTL_RPT_CNT") -// private String rndDtlRptCnt; -// -// /** -// * 필수 - 폐기구분코드 -// * 1-보건소폐기, 2-공무원임회, 4-도난/분실/재해 발생 사고마약류 -// */ -// @JacksonXmlProperty(localName = "DSUSE_SE_CD") -// private String dsuseSeCd; -// -// /** -// *
-//          * 필수 - 폐기 사유 코드
-//          *
-//          * 01-파손, 02-변질,부패, 03-유효기간 또는 사용기한 경과
-//          * 04-유효 기간 임박, 05-사용 중단, 07-폐업, 08-환자 반납
-//          * 09-기타, 12-제조 공정중 폐기물
-//          * 
-// */ -// @JacksonXmlProperty(localName = "DSUSE_PRV_CD") -// private String dsusePrvCd; -// -// /** -// *
-//          * 필수 - 폐기방법코드
-//          *
-//          * 1-소각, 2-중화, 3-가수 분해, 4-산화, 5-환원
-//          * 6-희석, 7-매물, 8-기타(파쇄,혼합), 9-사고
-//          * 
-// */ -// @JacksonXmlProperty(localName = "DSUSE_MTH_CD") -// private String dsuseMthCd; -// -// /** -// * 필수 - 폐기장소 -// */ -// @JacksonXmlProperty(localName = "DSUSE_LOC") -// private String dsuseLoc; -// -// /** -// * 필수 - 폐기일자 -// * yyyyMMdd -// */ -// @JacksonXmlProperty(localName = "DSUSE_DE") -// private String dsuseDe; -// -// /** -// * 필수 - 폐기 관할 행정 기관 코드 -// */ -// @JacksonXmlProperty(localName = "DSUSE_INSTT_CD") -// private String dsuseInsttCd; -// -// /** -// * 필수 - 첨부 파일 건수 -// */ -// @JacksonXmlProperty(localName = "ATCH_FILE_CO") -// private String atchFileCo; -// -// /** -// * Line -// */ -// @JacksonXmlProperty(localName = "REGISTER_ID") -// private String registerId; -// -// @JacksonXmlProperty(localName = "FILE_CREAT_DT") -// private String fileCreatDt; -// -// @JacksonXmlProperty(localName = "LINES") -// private Lines lines; -// -// @JacksonXmlProperty(localName = "ATCH_FILES") -// private AtchFiles atchFiles; -// } -// -// @JsonInclude(JsonInclude.Include.NON_NULL) -// @NoArgsConstructor -// @AllArgsConstructor -// @Builder -// public static class Lines { -// @JacksonXmlElementWrapper(useWrapping = false) -// @JacksonXmlProperty(localName = "LINE") -// private List line; -// } -// -// @JsonInclude(JsonInclude.Include.NON_NULL) -// @NoArgsConstructor -// @AllArgsConstructor -// @Builder -// public static class Line { -// @JacksonXmlProperty(localName = "USR_RPT_ID_NO") -// private String usrRptIdNo; -// -// @JacksonXmlProperty(localName = "USR_RPT_LN_ID_NO") -// private String usrRptLnIdNo; -// -// @JacksonXmlProperty(localName = "STORGE_NO") -// private String storgeNo; -// -// @JacksonXmlProperty(localName = "MVMN_TY_CD") -// private String mvmnTyCd; -// -// @JacksonXmlProperty(localName = "PRDUCT_CD") -// private String prductCd; -// -// @JacksonXmlProperty(localName = "MNF_NO") -// private String mnfNo; -// @JacksonXmlProperty(localName = "MNF_SEQ") -// private String mnfSeq; -// -// @JacksonXmlProperty(localName = "MIN_DISTB_QY") -// private String minDistbQy; -// -// @JacksonXmlProperty(localName = "PRD_MIN_DISTB_UNIT") -// private String prdMinDistbUnit; -// -// @JacksonXmlProperty(localName = "PCE_QY") -// private String pceQy; -// -// @JacksonXmlProperty(localName = "PRD_PCE_UNIT") -// private String prdPceUnit; -// -// @JacksonXmlProperty(localName = "PRDUCT_NM") -// private String prductNm; -// -// @JacksonXmlProperty(localName = "PRD_SGTIN") -// private String prdSgtin; -// -// @JacksonXmlProperty(localName = "PRD_MIN_DISTB_QY") -// private String prdMinDistbQy; -// -// @JacksonXmlProperty(localName = "PRD_TOT_PCE_QY") -// private String prdTotPceQy; -// -// @JacksonXmlProperty(localName = "PRD_VALID_DE") -// private String prdValidDe; -// -// @JacksonXmlProperty(localName = "FILE_CREAT_DT") -// private String fileCreatDt; -// } -// -// @JsonInclude(JsonInclude.Include.NON_NULL) -// @NoArgsConstructor -// @AllArgsConstructor -// @Builder -// public static class AtchFiles{ -// @JacksonXmlElementWrapper(useWrapping = false) -// @JacksonXmlProperty(localName = "ATCH_FILE_NM") -// private List atchFileNm; -// } -// } diff --git a/src/main/java/cokr/xit/adds/inf/nims/model/NimsAarResult.java b/src/main/java/cokr/xit/adds/inf/nims/model/NimsAarResult.java deleted file mode 100644 index 1e057f0..0000000 --- a/src/main/java/cokr/xit/adds/inf/nims/model/NimsAarResult.java +++ /dev/null @@ -1,85 +0,0 @@ -// package cokr.xit.adds.inf.nims.model; -// -// import com.fasterxml.jackson.annotation.JsonProperty; -// -// import jakarta.xml.bind.annotation.XmlAccessType; -// import jakarta.xml.bind.annotation.XmlAccessorType; -// import jakarta.xml.bind.annotation.XmlRootElement; -// import lombok.AllArgsConstructor; -// import lombok.Builder; -// import lombok.Getter; -// import lombok.NoArgsConstructor; -// -// /** -// *
-//  * description :
-//  *
-//  * packageName : cokr.xit.adds.inf.nims.model
-//  * fileName    : NimsAarResult
-//  * author      : limju
-//  * date        : 2024-03-21
-//  * ======================================================================
-//  * 변경일         변경자        변경 내용
-//  * ----------------------------------------------------------------------
-//  * 2024-03-21    limju       최초 생성
-//  *
-//  * 
-// */ -// @XmlRootElement(name = "response") -// @XmlAccessorType(XmlAccessType.FIELD) -// @Getter -// @NoArgsConstructor -// @AllArgsConstructor -// @Builder -// public class NimsAarResult { -// /** -// * 결과코드 -// * 0000 : 정상 보고 등록 되었습니다 -// * 9999 : 보고 실패 되었습니다 -// */ -// @JsonProperty(value = "RESULT_CD", required = true) -// String resultCd; -// -// /** -// * 결과메시지 -// * 0000 : 정상 보고 등록 되었습니다 -// * 9999 : 보고 실패 되었습니다 -// */ -// @JsonProperty(value = "RESULT_MSG", required = true) -// String resultMsg; -// -// /** -// * 보고자식별ID -// * 보고자를 식별할 수 있는 고유 식별자 -// * 시스템 내부에서 사용하는 식별자 -// */ -// @JsonProperty(value = "UID", required = true) -// String uid; -// /** -// * 마약류취급자식별번호 -// * 마약류통합관리 시스템에서 부여한 고유 코드 -// */ -// @JsonProperty(value = "BSSH_CD", required = true) -// String bsshCd; -// /** -// * 보고구분코드 -// */ -// @JsonProperty(value = "RPT_SE_CD", required = true) -// String rptSeCd; -// /** -// * 사용자보고식별번호 -// */ -// String usrPrtIdNo; -// /** -// * 보고접수번호 -// */ -// String rptRceptNo; -// /** -// * 에러코드 -// */ -// String errorCd; -// /** -// * 에러메시지 -// */ -// String errorMsg; -// } diff --git a/src/main/java/cokr/xit/adds/inf/nims/model/NimsApiDto.java b/src/main/java/cokr/xit/adds/inf/nims/model/NimsApiDto.java index 3d54d8a..2940c24 100644 --- a/src/main/java/cokr/xit/adds/inf/nims/model/NimsApiDto.java +++ b/src/main/java/cokr/xit/adds/inf/nims/model/NimsApiDto.java @@ -393,16 +393,26 @@ public class NimsApiDto { private String status; /** - * FIXME: 속성명 확정 필요 - * 보고 진행 상태 코드(0-정상,1-취소,2-변경) + * 원사용자보고식별번호 */ - @JsonAlias("RPT_PRG_STTS_CD") - private String rptPrgSttsCd; + private String orgUsrRptIdNo; /** - * 원사용자보고식별번호 + *
+         * 매핑데이타 return을 위해 추가한 필드
+         * 사용 여부 : 최종 데이타만 'Y'
+         * 1개의 변경보고 데이타에 대해 변경 데이타가 여러건인 경우 최종 데이타만 'Y'로 설정
+         * 
*/ - private String orgUsrRptIdNo; + private String useYn; + + /** + *
+         * 매핑데이타 return을 위해 추가한 필드
+         * 폐기관리 데이타와 매핑된 데이타에 대해 폐기관리 ID를 설정
+         * 폐기관리ID - 매핑된 폐기관리 ID
+         */
+        private String dscdmngId;
 
         /**
          * 폐기보고상세 목록
diff --git a/src/test/java/cokr/xit/adds/inf/mois/model/ExchangeDtoTest.java b/src/test/java/cokr/xit/adds/inf/mois/model/ExchangeDtoTest.java
index 65bf20b..6b57d8e 100644
--- a/src/test/java/cokr/xit/adds/inf/mois/model/ExchangeDtoTest.java
+++ b/src/test/java/cokr/xit/adds/inf/mois/model/ExchangeDtoTest.java
@@ -154,7 +154,7 @@ public class ExchangeDtoTest {
         String dtd = """
             
             """;
-        // FIXME: 파일명 생성
+
         try (FileWriter w = new FileWriter("exchange.xml")) {
             XMLStreamWriter sw = factory.createXMLStreamWriter(w);
             sw.writeStartDocument("EUC-KR", "1.0");
diff --git a/src/test/java/cokr/xit/adds/inf/mois/model/ExchangeMisDtoTest.java b/src/test/java/cokr/xit/adds/inf/mois/model/ExchangeMisDtoTest.java
index 26d73d9..ea94196 100644
--- a/src/test/java/cokr/xit/adds/inf/mois/model/ExchangeMisDtoTest.java
+++ b/src/test/java/cokr/xit/adds/inf/mois/model/ExchangeMisDtoTest.java
@@ -192,7 +192,7 @@ public class ExchangeMisDtoTest {
         String dtd = """
             
             """;
-        // FIXME: 파일명 생성
+
         try (FileWriter w = new FileWriter("open_exchange_exchange_mis_1.xml")) {
             XMLStreamWriter sw = factory.createXMLStreamWriter(w);
             sw.writeStartDocument("EUC-KR", "1.0");
diff --git a/src/test/java/cokr/xit/adds/inf/mois/model/ExchangepackDtoTest.java b/src/test/java/cokr/xit/adds/inf/mois/model/ExchangepackDtoTest.java
index e5e6ae0..c90033e 100644
--- a/src/test/java/cokr/xit/adds/inf/mois/model/ExchangepackDtoTest.java
+++ b/src/test/java/cokr/xit/adds/inf/mois/model/ExchangepackDtoTest.java
@@ -106,7 +106,7 @@ public class ExchangepackDtoTest {
         String dtd = """
             
             """;
-        // FIXME: 파일명 생성
+
         try (FileOutputStream fos = new FileOutputStream("exchangepack.xml");) {
             XML xml = new XML();
             xml.write(fos, dto, true);
diff --git a/src/test/java/cokr/xit/adds/inf/nims/model/AarDtoTest.java b/src/test/java/cokr/xit/adds/inf/nims/model/AarDtoTest.java
deleted file mode 100644
index cb0a244..0000000
--- a/src/test/java/cokr/xit/adds/inf/nims/model/AarDtoTest.java
+++ /dev/null
@@ -1,138 +0,0 @@
-// package cokr.xit.adds.inf.nims.model;
-//
-// import static org.junit.jupiter.api.Assertions.*;
-//
-// import java.io.FileWriter;
-// import java.io.IOException;
-// import java.nio.file.Files;
-// import java.nio.file.Path;
-// import java.nio.file.Paths;
-// import java.util.List;
-//
-// import org.apache.commons.lang3.StringUtils;
-// import org.junit.jupiter.api.DisplayName;
-// import org.junit.jupiter.api.Test;
-// import org.junit.jupiter.api.extension.ExtendWith;
-// import org.springframework.test.context.junit.jupiter.SpringExtension;
-//
-// import com.fasterxml.jackson.databind.SerializationFeature;
-// import com.fasterxml.jackson.dataformat.xml.JacksonXmlModule;
-// import com.fasterxml.jackson.dataformat.xml.XmlMapper;
-// import com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator;
-//
-// import lombok.extern.slf4j.Slf4j;
-//
-// /**
-//  * 
-//  * description :
-//  *
-//  * packageName : cokr.xit.adds.inf.nims.model
-//  * fileName    : AarDtoTest
-//  * author      : limju
-//  * date        : 2024-03-26
-//  * ======================================================================
-//  * 변경일         변경자        변경 내용
-//  * ----------------------------------------------------------------------
-//  * 2024-03-26    limju       최초 생성
-//  *
-//  * 
-// */ -// @Slf4j -// @ExtendWith(SpringExtension.class) -// public class AarDtoTest { -// -// @DisplayName("마약류폐기연계 xml read 테스트") -// @Test -// public void aarXmlReadTest() throws IOException { -// String fileName = "/src/test/resources/test_data/123456789AAR20240326120248_0001.XML"; -// -// JacksonXmlModule jacksonXmlModule = new JacksonXmlModule(); -// jacksonXmlModule.setDefaultUseWrapper(false); -// XmlMapper xmlMapper = new XmlMapper(jacksonXmlModule); -// xmlMapper.enable(SerializationFeature.INDENT_OUTPUT); -// -// Path cur = Paths.get(""); //현재 디렉토리 정보 '상대 경로' 형태로 담긴 인스턴스 생성 -// String cdir; -// -// if(cur.isAbsolute()) //절대 경로 일 경우. -// cdir=cur.toString(); -// else -// cdir = cur.toAbsolutePath().toString(); -// -// Path path = Paths.get(cdir, fileName); -// Aar dto -// = xmlMapper.readValue(Files.readString(path), Aar.class); -// -// assertNotNull(dto); -// -// xmlMapper.writeValue(System.out, dto); -// } -// -// @DisplayName("마약류폐기연계 xml write 테스트") -// @Test -// public void aarXmlWriteTest() throws IOException { -// Aar dto = getAar(); -// -// XmlMapper mapper = new XmlMapper(); -// mapper.configure(ToXmlGenerator.Feature.WRITE_XML_DECLARATION, true); -// mapper.enable(SerializationFeature.INDENT_OUTPUT); -// -// String xmlString = mapper.writeValueAsString(dto); -// xmlString = xmlString.replaceFirst("nims\">", "nims\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">"); -// xmlString = xmlString.replaceFirst(" xmlns=\"\"", StringUtils.EMPTY); -// System.out.println(xmlString); -// -// // FIXME: 파일명 생성 -// // filename: BSSH_CD + RPT_SE_CD + YYYYMMDDHHMMSS + _ + 0001.XML -// try (FileWriter w = new FileWriter("aar_001.xml")) { -// w.write(xmlString); -// w.flush(); -// -// } catch (IOException e) { -// e.printStackTrace(); -// -// } -// } -// -// private static Aar getAar() { -// Aar.Line line = Aar.Line.builder() -// .usrRptIdNo("123456789") -// .usrRptLnIdNo("123456789") -// .storgeNo("123456789") -// .mvmnTyCd("123456789") -// .prductCd("123456789") -// .build(); -// Aar.Line line2 = Aar.Line.builder() -// .usrRptIdNo("123456789-1") -// .usrRptLnIdNo("123456789-1") -// .storgeNo("123456789-1") -// .mvmnTyCd("123456789-1") -// .prductCd("123456789-1") -// .build(); -// -// Aar.Lines lines = Aar.Lines.builder() -// .line(List.of(line, line2)) -// .build(); -// -// Aar.AtchFiles atchFiles = Aar.AtchFiles.builder() -// .atchFileNm(List.of("file-1.txt","file-2.txt")) -// .build(); -// -// Aar.Header header = Aar.Header.builder() -// .hdrDe("20240326") -// .bsshCd("123456789") -// .lines(lines) -// .atchFileCo("2") -// .atchFiles(atchFiles) -// .build(); -// -// Aar.ReportSet reportSet = Aar.ReportSet.builder() -// .header(List.of(header)) -// .build(); -// -// Aar dto = Aar.builder() -// .reportSet(reportSet) -// .build(); -// return dto; -// } -// }