feat: 배치 -> API call 반영(KAKAO API)
parent
58395ec84a
commit
e8f8467527
@ -1,47 +0,0 @@
|
|||||||
package kr.xit.biz.cmm.util;
|
|
||||||
|
|
||||||
import egovframework.com.cmm.EgovMessageSource;
|
|
||||||
import kr.xit.biz.cmm.service.ICmmEnsCacheService;
|
|
||||||
import kr.xit.biz.ens.model.cmm.CmmEnsRlaybsnmDTO;
|
|
||||||
import kr.xit.core.exception.BizRuntimeException;
|
|
||||||
import kr.xit.core.spring.util.BatchSpringUtils;
|
|
||||||
import kr.xit.core.spring.util.CoreSpringUtils;
|
|
||||||
import lombok.AccessLevel;
|
|
||||||
import lombok.NoArgsConstructor;
|
|
||||||
import org.apache.commons.lang3.ObjectUtils;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* <pre>
|
|
||||||
* description :
|
|
||||||
*
|
|
||||||
* packageName : kr.xit.ens.kakao.cmm
|
|
||||||
* fileName : CmmKakaoUtils
|
|
||||||
* author : limju
|
|
||||||
* date : 2023-09-19
|
|
||||||
* ======================================================================
|
|
||||||
* 변경일 변경자 변경 내용
|
|
||||||
* ----------------------------------------------------------------------
|
|
||||||
* 2023-09-19 limju 최초 생성
|
|
||||||
*
|
|
||||||
* </pre>
|
|
||||||
*/
|
|
||||||
|
|
||||||
@NoArgsConstructor(access = AccessLevel.PRIVATE)
|
|
||||||
public class CmmKakaoUtils {
|
|
||||||
private static final EgovMessageSource messageSource = CoreSpringUtils.getMessageSource();
|
|
||||||
private static final ICmmEnsCacheService cacheService = BatchSpringUtils.getCmmEnsCacheService();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* KT MMS 인증 정보 조회
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public static CmmEnsRlaybsnmDTO getRlaybsnmInfo(final String signguCode, final String ffnlgCode) {
|
|
||||||
final CmmEnsRlaybsnmDTO dto = cacheService.getRlaybsnmInfoCache(signguCode, ffnlgCode);
|
|
||||||
if(ObjectUtils.isEmpty(dto)) throw BizRuntimeException.create(messageSource.getMessage("fail.api.rlaybsnm.info"));
|
|
||||||
cacheService.logCache();
|
|
||||||
|
|
||||||
return dto;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
@ -0,0 +1,743 @@
|
|||||||
|
package kr.xit.biz.ens.model.epost;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema.RequiredMode;
|
||||||
|
import javax.validation.constraints.Size;
|
||||||
|
import kr.xit.biz.ens.model.cmm.CmmEnsRequestDTO;
|
||||||
|
import kr.xit.biz.ens.model.pplus.PplusDTO.PpAcceptRequest;
|
||||||
|
import kr.xit.biz.ens.model.pplus.PplusDTO.PpCommonResponse;
|
||||||
|
import kr.xit.core.model.IApiResponse;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
import lombok.experimental.SuperBuilder;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.hibernate.validator.constraints.NotEmpty;
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* description : EPost DTO
|
||||||
|
* - 우편제작 접수 요청
|
||||||
|
* Request : {@link PpAcceptRequest}
|
||||||
|
* Response : {@link PpCommonResponse}
|
||||||
|
* - 우편제작 상태 조회
|
||||||
|
* Request : {@link PpStatusRequest}
|
||||||
|
* Response : {@link PpStatusResponse}
|
||||||
|
* packageName : kr.xit.biz.ens.model.epost
|
||||||
|
* fileName : EPostDTO
|
||||||
|
* author : limju
|
||||||
|
* date : 2023-10-04
|
||||||
|
* ======================================================================
|
||||||
|
* 변경일 변경자 변경 내용
|
||||||
|
* ----------------------------------------------------------------------
|
||||||
|
* 2023-10-04 limju 최초 생성
|
||||||
|
*
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
public class EPostDTO {
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* Postplus 우편제작 접수 요청 DTO
|
||||||
|
* Request: PpAcceptRequest
|
||||||
|
* Response: PpCommonResponse
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(name = "EpostTraceRequest", description = "EPost 종적추적 요청 DTO")
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
@SuperBuilder
|
||||||
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
|
public static class EpostTraceRequest extends CmmEnsRequestDTO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 공공데이터포털에서 발급받은 인증키(URL Encode)
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "인증키", example = " ")
|
||||||
|
@Size(min = 30, max = 100, message = "apiKey는 필수 입니다.")
|
||||||
|
private String serviceKey;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 등기번호 - 13자리
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "등기번호", example = " ")
|
||||||
|
@Size(min = 13, max = 13, message = "등기번호는 필수 입니다(13자리)")
|
||||||
|
private MultipartFile rgist;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* Postplus 우편제작 접수 요청 결과 DTO
|
||||||
|
* 성공 : 결과 - "OK"
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(name = "EpostTraceResponse", description = "EPost 종적추적 요청 결과 DTO")
|
||||||
|
@Getter
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
@SuperBuilder
|
||||||
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
|
public static class EpostTraceResponse implements IApiResponse {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* API 요청 등기 번호 : 필수 - 13자리
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "등기번호")
|
||||||
|
private String requestRegiNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 응답시간 : 필수 - 20 자리
|
||||||
|
* yyyy-mm-dd HH:mi:ss
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "응답시간")
|
||||||
|
private String responseTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 성공여부 : 필수 - Y|N
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "성공여부")
|
||||||
|
private String successYN;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 등기번호 : 필수 - 13자리
|
||||||
|
* 조회된 등기번호
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "등기번호")
|
||||||
|
private String regiNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 보낸 사람 : 필수 - max 50
|
||||||
|
* 발신인 명
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "보낸 사람")
|
||||||
|
private String senderName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 보낸 날자 : 필수 - 10자리
|
||||||
|
* 발신일자 yyyy-mm-dd
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "보낸 날자")
|
||||||
|
private String senderData;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 받는 사람 : 필수 - max 50
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "받는 사람")
|
||||||
|
private String receiveName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 받은 날자 : 필수 - 10자리
|
||||||
|
* 수신일자 yyyy-mm-dd
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "받은 날자")
|
||||||
|
private String receiveDate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 배달상태: 필수 - max 10
|
||||||
|
* 배달완로|미배달
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "배달 상태")
|
||||||
|
private String trackState;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 정렬순서 : 필수 - 1자리
|
||||||
|
* 배송 진행 사항에 대한 정렬 순서
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "정렬 순서")
|
||||||
|
private String sortNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 처리일 : 필수 - 10자리
|
||||||
|
* 배송진행 처리일 yyyy-mm-dd
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "처리일")
|
||||||
|
private String date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 처리시간 : 필수 - 5자리
|
||||||
|
* 배송진행 처리시간 mi:ss
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "처리 시간")
|
||||||
|
private String time;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 처리상태 : 필수 - max 10
|
||||||
|
* 배송진행 처리상태 접수
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "처리 상태")
|
||||||
|
private String status;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 에러메세지 : max 100
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "에러메세지")
|
||||||
|
private String errorMessage;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* Postplus 우편제작 접수 요청 Data Master DTO
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(name = "PpAcceptReqDataMst", description = "Postplus 우편제작 접수 요청 Data master DTO")
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
@SuperBuilder
|
||||||
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
|
public static class PpAcceptReqDataMst {
|
||||||
|
//-----------------------------------------------------------------------
|
||||||
|
// 필수
|
||||||
|
//-----------------------------------------------------------------------
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 버전 : v1.10
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "버전", example = "v1.10")
|
||||||
|
@NotEmpty(message = "버전은 필수 입니다")
|
||||||
|
private final String 버전 = "v1.10";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 테스트여부 : default "N" - 인쇄 직전 단계까지 진행
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "테스트여부", example = "N")
|
||||||
|
@NotEmpty(message = "테스트여부는 필수 입니다(Y|N)")
|
||||||
|
private final String 테스트여부 = "N";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 서비스 : PST - 우편, SMS - 문자, KKO - 카카오톡
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "서비스", example = "PST")
|
||||||
|
@NotEmpty(message = "서비스 코드는 필수 입니다(PST)")
|
||||||
|
private final String 서비스 = "PST";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 연계식별키 : 사용자 지정 unique key
|
||||||
|
* max : 40byte
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "연계식별키", example = " ")
|
||||||
|
@Size(min = 5, max = 40, message = "연계식별키는 필수입니다(max:40)")
|
||||||
|
private String 연계식별키;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 봉투 : 소봉투|대봉투|접착시|엽서
|
||||||
|
* 소봉투/대봉투는 A4(210*297) 기준
|
||||||
|
* 접착식이 첨부파일의 경우 주소가 포함되어야 하며 '주소페이지유무' 항목이 'Y여야 합니다.
|
||||||
|
* 접착식이 템플릿의 경우는 data에 주소가 명시되어야 합니다.
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "봉투", example = "소봉투")
|
||||||
|
@NotEmpty(message = "봉투는 필수입니다(소봉투|대봉투|접착시|엽서)")
|
||||||
|
private String 봉투;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 봉투창 : 이중창|단창|무창
|
||||||
|
* 소봉투(이중창,무창) 대봉투(단창,무창) 접착식(공백), 엽서(공백)
|
||||||
|
* 무창은 사전협의가 필요합니다.
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "봉투창", example = "이중창")
|
||||||
|
@NotEmpty(message = "봉투창은 필수입니다(이중창|단창|무창)")
|
||||||
|
private String 봉투창;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 흑백칼라 : 흑백|칼라
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "흑백칼라", example = "흑백")
|
||||||
|
@NotEmpty(message = "흑백칼라는 필수입니다(흑백|칼라)")
|
||||||
|
private String 흑백칼라;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 단면양면 : 단면|양면
|
||||||
|
* 접착식 경우 페이지수가 2매인 경우는 양면인쇄 됩니다.
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "단면양면", example = "단면")
|
||||||
|
@NotEmpty(message = "단면양면은 필수입니다(단면|양면)")
|
||||||
|
private String 단면양면;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 배달 : 일반|등기|준등기|악일특급|선택등기
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "배달", example = "일반")
|
||||||
|
@NotEmpty(message = "배달은 필수입니다(일반|등기|준등기|악일특급|선택등기)")
|
||||||
|
private String 배달;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 템플릿출력여부 : 템플릿코드 존재시 Y
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "템플릿코드", example = "N")
|
||||||
|
@NotEmpty(message = "템플릿출력여부는 필수입니다(Y|N)")
|
||||||
|
private final String 템플릿출력여부 = StringUtils.isEmpty(this.템플릿코드) ? "N" : "Y";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 여백생성유무
|
||||||
|
* Y: 첨부파일 내용문을 자동으로 축소
|
||||||
|
* 소봉투는 봉입 바코드 추가위해 왼쪽 여백 필요
|
||||||
|
* 프린터기를 이용하여 출력하므로 상하좌우의 margin이 필요
|
||||||
|
* - 대봉투의 경우 상 8mm, 하좌우 5mm의 margin이 필요
|
||||||
|
* - 소봉투의 경우 상 8mm, 하우 5mm, 좌 17mm의 margin이 필요
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "여백생성유무", example = "N")
|
||||||
|
@NotEmpty(message = "여백생성유무는 필수입니다(Y|N)")
|
||||||
|
private final String 여백생성유무 = "N";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 주소페이지유무
|
||||||
|
* 주소페이지가 첨부파일에 포함 되어있으면 Y
|
||||||
|
* 주소페이지 생성이 필요하면 N
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "여백생성유무", example = "N")
|
||||||
|
@NotEmpty(message = "주소페이지유무는 필수입니다(Y|N)")
|
||||||
|
private final String 주소페이지유무 = "N";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 맞춤자제유무
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "맞춤자제유무", example = "N")
|
||||||
|
@NotEmpty(message = "맞춤자제유무는 필수입니다(Y|N)")
|
||||||
|
private final String 맞춤자제유무 = "N";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 메일머지유무
|
||||||
|
* Y 일경우 템플릿코드 필수
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "메일머지유무", example = "N")
|
||||||
|
@NotEmpty(message = "메일머지유무는 필수입니다(Y|N)")
|
||||||
|
private final String 메일머지유무 = "N";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 동봉물유무
|
||||||
|
* Y 일경우 템플릿코드 필수
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "동봉물유무", example = "N")
|
||||||
|
@NotEmpty(message = "동봉물유무는 필수입니다(Y|N)")
|
||||||
|
private final String 동봉물유무 = "N";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 반송여부
|
||||||
|
* 반송불필요: N
|
||||||
|
* 반송필요: Y (반송요금 별도 협의후 이용)
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "반송여부유무", example = "N")
|
||||||
|
@NotEmpty(message = "반송여부는 필수입니다(Y|N)")
|
||||||
|
//private final String 반송여부 = "N";
|
||||||
|
private final String[] 반송여부 = new String[]{"Y", "N"};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 스테이플러유무
|
||||||
|
* 협의 후 사용 가능합니다.
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "스테이플러유무", example = "N")
|
||||||
|
@NotEmpty(message = "스테이플러유무는 필수입니다(Y|N)")
|
||||||
|
private final String 스테이플러유무 = "N";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 발송인명
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "발송인명", example = "포스토피아")
|
||||||
|
@NotEmpty(message = "발송인명은 필수입니다")
|
||||||
|
private String 발송인명;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 발송인우편번호
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "발송인우편번호", example = "05048")
|
||||||
|
@NotEmpty(message = "발송인우편번호는 필수입니다")
|
||||||
|
private String 발송인우편번호;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 발송인주소
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "발송인주소", example = "서울특별시 광진구 강변로역2")
|
||||||
|
@NotEmpty(message = "발송인주소는 필수입니다")
|
||||||
|
private String 발송인주소;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 발송인상세주소
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "발송인상세주소", example = "구의동, 서울광진우체국")
|
||||||
|
@NotEmpty(message = "발송인상세주소는 필수입니다")
|
||||||
|
private String 발송인상세주소;
|
||||||
|
//-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 템플릿코드 : 고객협의 후 포스토피아에서 템플릿 설정, 발급
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "템플릿코드", example = " ")
|
||||||
|
private String 템플릿코드;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 수취인수
|
||||||
|
* 미입력시 주소록개수 참조
|
||||||
|
* 입력시 주소록개수와 같을시만 발송
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "수취인수", example = " ")
|
||||||
|
private Integer 수취인수;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 동봉물페이지수
|
||||||
|
* 동봉물 존재시 동봉물의 페이지수 기재
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "동봉물페이지수", example = " ")
|
||||||
|
private Integer 동봉물페이지수;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 로고 파일
|
||||||
|
* 미입력시 로고가 없거나 템플릿에 포함되어 있음
|
||||||
|
* 협의 후 사용 가능합니다.
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "로고파일", example = " ")
|
||||||
|
private String 로고파일;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 발송인전화번호
|
||||||
|
* 준등기/등기/익일특급/선택등기 발송시 필수
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "발송인전화번호", example = "010-XXXX-XXXX")
|
||||||
|
private String 발송인전화번호;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* Postplus 우편제작 접수 요청 Data Detail DTO
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(name = "PpAcceptReqDataDtl", description = "Postplus 우편제작 접수 요청 Data detail DTO")
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
@SuperBuilder
|
||||||
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
|
public static class PpAcceptReqDataDtl {
|
||||||
|
//-----------------------------------------------------------------------
|
||||||
|
// 필수
|
||||||
|
//-----------------------------------------------------------------------
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 순번 : "1" 부터 시작
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "순번", example = "1")
|
||||||
|
@NotEmpty(message = "순번은 필수입니다")
|
||||||
|
private String 순번;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 이름 : 수취인명
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "이름", example = "홍길동")
|
||||||
|
@NotEmpty(message = "이름은 필수입니다")
|
||||||
|
private String 이름;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 우편번호 : 수취인 우편번호
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "우편번호", example = "05048")
|
||||||
|
@NotEmpty(message = "우편번호는 필수입니다")
|
||||||
|
private String 우편번호;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 주소 : 수취인 주소
|
||||||
|
* 상세주소 포함 최대 200자
|
||||||
|
* 상세주소를 포함하지 않는 경우 최대 100자
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "주소", example = "서울특별시 광진구 강변역로2")
|
||||||
|
@Size(min = 5, max = 200, message = "주소는 필수입니다(max:200)")
|
||||||
|
private String 주소;
|
||||||
|
|
||||||
|
|
||||||
|
//-----------------------------------------------------------------------
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 상세주소 : 수취인 주소
|
||||||
|
* 주소에 포함된 경우 상세주소는 공백
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "상세주소", example = "서울광진우체국 B동 4층")
|
||||||
|
private String 상세주소;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 전화번호 : 수취인 전화번호(준등기/등기/익일특급/선택등기 발송시 필수)
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "전화번호", example = " ")
|
||||||
|
private String 전화번호;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 첨부파일
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "첨부파일", example = " ")
|
||||||
|
private String 첨부파일;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 이미지갯수 : 수취인별 이미지파일의 개수
|
||||||
|
* 오류시 정상 발송 불가
|
||||||
|
* 여러 파일 첨부시 전체파일을 1개의 ZIP파일로 압축하여 pstFile로 전송
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "이미지갯수", example = " ")
|
||||||
|
private Integer 이미지갯수;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 이미지1 파일명
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "이미지1", example = " ")
|
||||||
|
private String 이미지1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 이미지2 파일명
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "이미지2", example = " ")
|
||||||
|
private String 이미지2;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 이미지3 파일명
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO, title = "이미지3", example = " ")
|
||||||
|
private String 이미지3;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 가변 : 최대 200개 까지
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* Postplus 우편제작 상태 조회 요청 DTO
|
||||||
|
* Request: PpStatusRequest
|
||||||
|
* Response: PpStatusResponse
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(name = "PpStatusRequest", description = "Postplus 우편제작 상태 조회 요청 DTO")
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
@SuperBuilder
|
||||||
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
|
public static class PpStatusRequest extends CmmEnsRequestDTO {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* apiKey
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "apiKey", example = " ")
|
||||||
|
@NotEmpty(message = "apiKey는 필수 입니다.")
|
||||||
|
private String apiKey;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 우편 제작 요청 연계 식별키
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED, title = "우편제작요청연계식별키", example = "TEST20230221_000001")
|
||||||
|
@NotEmpty(message = "우편 제작 요청 연계 식별키는 필수 입니다.")
|
||||||
|
private String inputCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* Postplus 우편제작 상태 조회 결과 DTO
|
||||||
|
* 성공 :
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(name = "PpStatusResponse", description = "Postplus 우편제작 상태 조회 결과 DTO")
|
||||||
|
@Getter
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
@SuperBuilder
|
||||||
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
|
public static class PpStatusResponse extends PpCommonResponse {
|
||||||
|
//---------------------------------------------------------
|
||||||
|
// 필수
|
||||||
|
//---------------------------------------------------------
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 신청일자 : YYYYMMDD0000
|
||||||
|
* 우편 제작 요청 접수일
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED)
|
||||||
|
private String 신청일자;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 봉투 : 소봉투|대봉투|접착시|엽서
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED)
|
||||||
|
private String 봉투;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 배달 : 일반|등기|준등기|악일특급|선택등기
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED)
|
||||||
|
private String 배달;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 흑백칼라 : 흑백|칼라
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED)
|
||||||
|
private String 흑백칼라;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 단면양면 : 단면|양면
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED)
|
||||||
|
private String 단면양면;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 발송건수
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED)
|
||||||
|
private Integer 발송건수;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 상태: 출력대기|출력|봉입|우체국접수중|제작발송완료|접수취소|확인불가
|
||||||
|
* 확인불가 -> 일반 오류상태 msg
|
||||||
|
* 출력대기 -> 제작 전단계
|
||||||
|
* 출력/봉입/우체국접수중 -> 제작 중
|
||||||
|
* 제작발송완료 -> 제작 후 우체국접수, 후불결제시 과금대상
|
||||||
|
* 접수취소 -> 제작 취소
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED)
|
||||||
|
private String 상태;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 연계식별키 : 우편 제작 요청 연계 식별키
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.REQUIRED)
|
||||||
|
private String 연계식별키;
|
||||||
|
//---------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 시작등기번호 : 등기의 경우 표기
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO)
|
||||||
|
private String 시작등기번호;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 종료등기번호 : 등기의 경우 표기
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = RequiredMode.AUTO)
|
||||||
|
private String 종료등기번호;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue