package com.its.op.model.dto; import com.its.op.global.CodeManager; import com.its.op.global.NodeManager; import com.its.op.model.entity.AtrdRoadRltn; import lombok.*; import javax.validation.constraints.Positive; import java.io.Serializable; import java.util.List; public class AtrdRoadRltnDto implements Serializable { @Getter public static class AtrdRoadRltnInfo { private final String ATRD_ID; // N VARCHAR2(10) N 간선도로 ID private final Long ROAD_ID; // N NUMBER(10) N 도로 ID private final Integer ORD; // N NUMBER(3) N 링크 ID private final String STRT_NM; // N VARCHAR2(100) Y 시점 명 private final String END_NM; // N VARCHAR2(100) Y 종점 명 private final Integer SECT_LNGT; // N NUMBER(5) Y 구간 길이 private final Long F_NODE_ID; // N NUMBER(10) Y 시작 노드 ID private final Long T_NODE_ID; // N NUMBER(10) Y 종료 노드 ID private final String SECT_GRAD_CD; // N VARCHAR2(7) Y 구간 등급 코드 private final String FROM_NODE; private final String TO_NODE; private final String SECT_GRAD_CD_DESC; public AtrdRoadRltnInfo(AtrdRoadRltn entity) { this.ATRD_ID = entity.getATRD_ID(); this.ROAD_ID = entity.getROAD_ID(); this.ORD = entity.getORD(); this.STRT_NM = entity.getRoad().getSTRT_NM(); this.END_NM = entity.getRoad().getEND_NM(); this.SECT_LNGT = entity.getRoad().getSECT_LNGT(); this.F_NODE_ID = entity.getRoad().getF_NODE_ID(); this.T_NODE_ID = entity.getRoad().getT_NODE_ID(); this.SECT_GRAD_CD = entity.getRoad().getSECT_GRAD_CD(); this.FROM_NODE = NodeManager.getNodeName(this.F_NODE_ID); this.TO_NODE = NodeManager.getNodeName(this.T_NODE_ID); this.SECT_GRAD_CD_DESC = CodeManager.getCodeDesc(CodeManager.SECT_GRAD_CD, this.SECT_GRAD_CD); } } @Getter @Setter @ToString @NoArgsConstructor(access = AccessLevel.PROTECTED) public static class AtrdRoadRltnUpdateReq { private String ATRD_ID; @Positive private Long ROAD_ID; @Positive private Integer ORD; @Builder public AtrdRoadRltnUpdateReq(String ATRD_ID, Long ROAD_ID, Integer ORD) { this.ATRD_ID = ATRD_ID; this.ROAD_ID = ROAD_ID; this.ORD = ORD; } } @Getter @Setter @NoArgsConstructor(access = AccessLevel.PROTECTED) public static class AtrdUpdateReq { private String ATRD_ID; // N VARCHAR2(10) N 간선도로 ID private String ATRD_NM; // N VARCHAR2(30) Y 간선도로 명 private String DRCT_CD; // N VARCHAR2(7) Y 방향 코드 private String AREA_CD; // N VARCHAR2(7) Y 지역 코드 private String DEL_YN; // N CHAR(1) Y 'N' 삭제 여부 private List rltnList; @Builder public AtrdUpdateReq(String ATRD_ID, String ATRD_NM, String DRCT_CD, String AREA_CD, String DEL_YN, List rltnList) { this.ATRD_ID = ATRD_ID; this.ATRD_NM = ATRD_NM; this.DRCT_CD = DRCT_CD; this.AREA_CD = AREA_CD; this.DEL_YN = DEL_YN; this.rltnList = rltnList; } } }