feat: 폐기보고 - 보고정보 API 반영
parent
9ec067cc2a
commit
7f1434990a
@ -0,0 +1,299 @@
|
|||||||
|
package cokr.xit.adds.biz.nims.model;
|
||||||
|
|
||||||
|
import static io.swagger.v3.oas.annotations.media.Schema.RequiredMode.*;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import javax.validation.Valid;
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import javax.validation.constraints.Pattern;
|
||||||
|
import javax.validation.constraints.Positive;
|
||||||
|
import javax.validation.constraints.PositiveOrZero;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||||
|
|
||||||
|
import cokr.xit.adds.core.Constants;
|
||||||
|
import cokr.xit.adds.core.model.AuditDto;
|
||||||
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
import lombok.experimental.SuperBuilder;
|
||||||
|
|
||||||
|
public class BizNimsDto {
|
||||||
|
/**
|
||||||
|
* 마약류 폐기 관리 마스터 request
|
||||||
|
*/
|
||||||
|
@Schema(name = "DsuseMgt", description = "마약류 폐기 관리 마스터 DTO")
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
@SuperBuilder
|
||||||
|
@EqualsAndHashCode(callSuper = false)
|
||||||
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
|
public static class DsuseMgt extends AuditDto {
|
||||||
|
/**
|
||||||
|
* 폐기 관리 ID
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = AUTO, title = "폐기 관리 ID", example = " ")
|
||||||
|
private String dscdmngId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 사용자 ID
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = REQUIRED, title = "사용자 ID", example = " ")
|
||||||
|
@NotEmpty(message = "사용자 ID는 필수 입니다")
|
||||||
|
private String userId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 폐기관리진행상태 - ADDS11
|
||||||
|
* 01-폐기신청서 접수
|
||||||
|
* 06-폐기통보서작성
|
||||||
|
* 07-폐기내역서작성
|
||||||
|
* 11-폐기보고확인
|
||||||
|
* 21-폐기보고
|
||||||
|
* 99-폐기보고완료
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기관리진행상태", example = " ")
|
||||||
|
@NotEmpty(message = "폐기관리진행상태는 필수 입니다")
|
||||||
|
private String prgrsSttsCd = Constants.PRGRS_STTS_CD.RECEIPT.getCode();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 마약류취급자식별번호
|
||||||
|
*/
|
||||||
|
@Schema(title = "마약류취급자식별번호", example = " ")
|
||||||
|
@NotEmpty(message = "마약류취급자식별번호는 필수 입니다")
|
||||||
|
private String bsshCd;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 수불상세보고수
|
||||||
|
*/
|
||||||
|
@Schema(title = "수불상세보고수", example = " ")
|
||||||
|
private Integer rndDtlRptCnt;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 취급일자 - 폐기신청민원 처리일자(공문시행일자)
|
||||||
|
*/
|
||||||
|
@Schema(title = "취급일자", example = " ")
|
||||||
|
@Pattern(regexp = Constants.DATE_REGX, message = "취급일자를 정확히 입력해 주세요(yyyyMMdd)")
|
||||||
|
private String hdrDe;
|
||||||
|
|
||||||
|
// /**
|
||||||
|
// * 보고일자
|
||||||
|
// */
|
||||||
|
// @Schema(title = "보고일자", example = " ")
|
||||||
|
// @Pattern(regexp = Constants.DATE_REGX, message = "보고일자를 정확히 입력해 주세요(yyyyMMdd)")
|
||||||
|
// private String rptDe;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 폐기 구분 코드
|
||||||
|
* 1-보건소폐기, 2-공무원임회, 4-도난/분실/재해 발생 사고마약류
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기 구분 코드", example = " ")
|
||||||
|
@NotEmpty(message = "폐기 구분 코드는 필수 입니다")
|
||||||
|
private String dsuseSeCd;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 폐기 사유 코드
|
||||||
|
* 01-파손, 02-변질,부패, 03-유효기간 또는 사용기한 경과
|
||||||
|
* 04-유효 기간 임박, 05-사용 중단, 07-폐업, 08-환자 반납
|
||||||
|
* 09-기타, 12-제조 공정중 폐기물
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기 사유 코드", example = " ")
|
||||||
|
@NotEmpty(message = "폐기 사유 코드는 필수 입니다")
|
||||||
|
private String dsusePrvCd;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 폐기 방법 코드
|
||||||
|
* 1-소각, 2-중화, 3-가수 분해, 4-산화, 5-환원
|
||||||
|
* 6-희석, 7-매물, 8-기타(파쇄,혼합), 9-사고
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기 방법 코드", example = " ")
|
||||||
|
@NotEmpty(message = "폐기 방법 코드는 필수 입니다")
|
||||||
|
private String dsuseMthCd;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 폐기 장소
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기 장소", example = " ")
|
||||||
|
@NotEmpty(message = "폐기 장소는 필수 입니다")
|
||||||
|
private String dsuseLoc;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 폐기일자
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기일자", example = " ")
|
||||||
|
@Pattern(regexp = Constants.DATE_REGX, message = "폐기일자를 정확히 입력해 주세요(yyyyMMdd)")
|
||||||
|
private String dsuseDe;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 사용자 보고 식별 번호
|
||||||
|
* 생성후 변경이나 취소시 새로운 보고식별번호로 update
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(title = "사용자보고식별번호", example = " ")
|
||||||
|
private String usrRptIdNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 원 사용자 보고 식별 번호
|
||||||
|
* 폐기 보고 생성시의 사용자 보고 식별 번호
|
||||||
|
* 생성 > 변경 > 변경 > 취소 등의 보고시 매번 새로운 보고식별번호가 생성
|
||||||
|
* => 추적을 위해 최초의 생성시 보고식별번호를 기록
|
||||||
|
* YYYYMMDD
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(title = "원사용자보고식별번호", example = " ")
|
||||||
|
private String orgUsrRptIdNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 보고 유형 코드
|
||||||
|
* 0-신규, 1-취소, 2-변경
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기보고유형코드", example = " ")
|
||||||
|
private String rptTyCd;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 처리상태
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기보고처리상태", example = " ")
|
||||||
|
private String stts;
|
||||||
|
|
||||||
|
@Schema(requiredMode = REQUIRED, description = "폐기 관리 상세 목록", example = " ")
|
||||||
|
@Builder.Default
|
||||||
|
@Valid
|
||||||
|
List<DsuseMgtDtl> dsuseMgtDtls = new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 마약류 폐기 관리 상세 request
|
||||||
|
*/
|
||||||
|
@Schema(name = "DsuseMgtDtl", description = "마약류 폐기 관리 상세 DTO")
|
||||||
|
@Data
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
@SuperBuilder
|
||||||
|
@EqualsAndHashCode(callSuper = false)
|
||||||
|
@JsonInclude(JsonInclude.Include.NON_NULL)
|
||||||
|
public static class DsuseMgtDtl extends AuditDto {
|
||||||
|
/**
|
||||||
|
* 폐기관리ID
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기관리ID-업무의필요에의해추가", example = " ")
|
||||||
|
private String dscdmngId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 폐기관리순번
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기관리순번-업무의필요에의해추가", example = " ")
|
||||||
|
private String dscdmngSn;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 제품_코드 - 13자리
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = REQUIRED, title = "제품코드", example = "8806718050823")
|
||||||
|
@Pattern(regexp = "[0-9a-zA-Z]{13}", message = "제품코드는 13자리 입니다")
|
||||||
|
private String prductCd;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 제품명
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = REQUIRED, title = "제품명", example = "아쿠아폴주20밀리리터(프로포폴) (20㎖)")
|
||||||
|
@NotEmpty(message = "제품명은 필수 입니다")
|
||||||
|
private String prductNm;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 최소유통단위 수량 : 1 ~
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = REQUIRED, title = "최소유통단위수량", example = "1")
|
||||||
|
@Positive(message="최소유통단위 수량을 입력해 주세요(ex. 1)")
|
||||||
|
private Integer minDistbQy;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 최소 유통 단위
|
||||||
|
*/
|
||||||
|
@Schema(title = "최소유통단위", example = "1")
|
||||||
|
private String minDistbUnit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 낱개단위 수량 : 0 ~
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = REQUIRED, title = "낱개단위수량", example = "0")
|
||||||
|
@PositiveOrZero(message = "낱개단위 수량은 필수 입니다(ex. 0)")
|
||||||
|
private Integer pceQy;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 낱개 단위
|
||||||
|
*/
|
||||||
|
@Schema(title = "낱개단위", example = "1")
|
||||||
|
private String pceUnit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 제조번호 - 20자리 이하
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = REQUIRED, title = "제품제조번호", example = "A1111")
|
||||||
|
@Pattern(regexp = "[0-9a-zA-Z]{1,20}", message = "제품제조번호는 필수 입니다")
|
||||||
|
private String mnfNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 제품 유효기한 일자 - yyyyMMdd
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = REQUIRED, title = "제품유효기간", example = "20300303")
|
||||||
|
@Pattern(regexp = Constants.DATE_REGX, message = "제품 유효 기간을 정확히 입력해 주세요(yyyyMMdd)")
|
||||||
|
private String prdValidDe;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 제조 일련번호 - 20자리 이하
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = REQUIRED, title = "제조일련번호", example = "A11111111")
|
||||||
|
@Pattern(regexp = "[0-9a-zA-Z]{1,20}", message = "제조 일련번호는 필수 입니다")
|
||||||
|
private String mnfSeq;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 폐기 수량
|
||||||
|
*/
|
||||||
|
@Schema(requiredMode = REQUIRED, title = "폐기수량", example = "2")
|
||||||
|
@Positive(message = "폐기 수량은 0보다 커야 합니다")
|
||||||
|
private Integer dsuseQy;
|
||||||
|
|
||||||
|
@Schema(title = "폐기제품이미지파일ID", example = " ")
|
||||||
|
private String fileId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 사용자보고식별번호
|
||||||
|
*/
|
||||||
|
@Schema(title = "사용자보고식별번호", example = " ")
|
||||||
|
private String usrRptIdNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 사용자 보고 라인 식별 번호
|
||||||
|
*/
|
||||||
|
@Schema(title = "사용자보고라인식별번호", example = " ")
|
||||||
|
private String usrRptLnIdNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* 폐기관리상세와 폐기보고정보 상세의 폐기 정보(상품) 일치 여부
|
||||||
|
* -> 일치하는 경우 "Y"
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Schema(title = "폐기관리상세와 폐기보고정보 상세의 폐기 정보(상품) 일치 여부", example = " ")
|
||||||
|
private String matchYn;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue