package com.eactive.eai.rms.onl.manage.serviceinfo.b2bservice;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;

import com.fasterxml.jackson.annotation.JsonProperty;

import lombok.Data;

@Data
public class B2bServiceUI {

	/** 외부기관식별명 */
	@JsonProperty("EXTNLINSTIIDNFINAME")
	private String extnlInstiIdnfiName;

	/** 서비스처리순서 */
	@JsonProperty("SVCPRCSSNO")
	@Min(value = 0, message = "최소값은 0입니다.")
    @Max(value = 9, message = "최대값은 9입니다.")
    private Integer svcPrcssNo;

	/** 어댑터그룹설명 */
	@JsonProperty("ADPTRBZWKGROUPDESC")
	private String adptrBzwkGroupDesc;

	/** 기본응답변환유무 */
	@JsonProperty("BASCRSPNSCHNGEONOT")
	private String bascRspnsChngEonot;

	/** 기본응답변환메시지ID */
	@JsonProperty("BASCRSPNSCHNGMSGIDNAME")
	private String bascRspnsChngMsgIdName;

	/** 기본응답메시지비교값 */
	@JsonProperty("BASCRSPNSMSGCMPRCTNT")
	private String bascRspnsMsgCmprCtnt;

	/** 변환유무 */
	@JsonProperty("CHNGEONOT")
	private String chngEonot;

	/** 변환메시지ID */
	@JsonProperty("CHNGMSGIDNAME")
	private String chngMsgIdName;

	/** 보상서비스처리코드 */
	@JsonProperty("CMPENSVCPRCSSDSTICNAME")
	private String cmpenSvcPrcssDsticName;

	/** eai최종수정일시 */
	@JsonProperty("EAILASTAMNDYMS")
	private String eaiLastAmndyms;

	/** EAI서버구분코드 */
	@JsonProperty("EAISEVRDSTCD")
	private String eaiSevrDstCd;

	/** 오류응답변환유무 */
	@JsonProperty("ERRRSPNSCHNGEONOT")
	private String errRspnsChngEonot;

	/** 오류응답변환메시지ID */
	@JsonProperty("ERRRSPNSCHNGMSGIDNAME")
	private String errRspnsChngMsgIdName;

	/** 오류응답메시지비교값 */
	@JsonProperty("ERRRSPNSMSGCMPRCTNT")
	private String errRspnsMsgCmprCtnt;

	/** FailOver여부 */
	@JsonProperty("FLOVRYN")
	private String flovrYn;

	/** 헤더제어구분코드 */
	@JsonProperty("HDRCTRLDSTCD")
	private String hdrCtrlDstcd;

	/** 참고클래스명 */
	@JsonProperty("HDRREFCLSNAME")
	private String hdrRefClsName;

	/** 변경관리상태구분코드 */
	@JsonProperty("MODFIMGTSTUSDSTCD")
	private String modfiMgtStusDstCd;

	/** 다음서비스처리번호 */
	@JsonProperty("NEXTSVCPRCSSNO")
	@Min(value = 0, message = "최소값은 0입니다.")
    @Max(value = 9, message = "최대값은 9입니다.")
    private Integer nextSvcPrcssNo;

	/** Outbound라우팅명 */
	@JsonProperty("OUTBNDROUTNAME")
	private String outbndRoutName;

	/** 수동인터페이스유형 */
	@JsonProperty("PSVINTFACDSTICNAME")
	private String psvIntfacDsticName;

	/** 수동시스템어댑터업무그룹명 */
	@JsonProperty("PSVSYSADPTRBZWKGROUPNAME")
	private String psvSysAdptrBzwkGroupName;

	/** 수동업무시스템명 */
	@JsonProperty("PSVSYSBZWKDSTCD")
	private String psvSysBzwkDstcd;

	/** 수동시스템ID */
	@JsonProperty("PSVSYSIDNAME")
	private String psvSysIdName;

	/** 수동시스템서비스코드 */
	@JsonProperty("PSVSYSSVCDSTICNAME")
	private String psvSysSvcDsticName;

	/** 추가삭제여부 */
	@JsonProperty("SUPPLDELYN")
	private String supplDelYn;

	/** 타임아웃값 */
	@JsonProperty("TOUTVAL")
	@Min(value = 0, message = "최소값은 0입니다.")
    private Integer toutVal;

	/** 사용여부 */
	@JsonProperty("USEYN")
	private String useYn;
	
	/**
	 * 어댑터 별명 조회용
	 */
	@JsonProperty("ADPTRNICKNAME")
	private String adptrNickName;
	
	/**
	 * 복제용
	 */
	private String newExtnlInstiIdnfiName;
	private Integer newSvcPrcssNo;
	
}
