package com.its.op.model.entity.database; import com.its.op.model.dto.database.RoadDto; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import org.hibernate.annotations.ColumnDefault; import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; @DynamicInsert @DynamicUpdate @Getter @Setter @NoArgsConstructor @AllArgsConstructor @Entity @Table(name = "TB_ROAD") public class Road { @Id @Column(nullable = false, unique = true, length = 10) private Long ROAD_ID; // N NUMBER(10) N 도로 ID @Column(length = 100) private String ROAD_NAME; // N VARCHAR2(100) Y 도로 명 @Column(length = 7) private String DRCT_CD; // N VARCHAR2(7) Y 방향 코드 @Column(length = 100) private String STRT_NM; // N VARCHAR2(100) Y 시점 명 @Column(length = 100) private String END_NM; // N VARCHAR2(100) Y 종점 명 @Column(nullable = false) private Integer SECT_LNGT; // N NUMBER(5) Y 구간 길이 @Column(nullable = false, length = 10) private Long F_NODE_ID; // N NUMBER(10) Y 시작 노드 ID @Column(nullable = false, length = 10) private Long T_NODE_ID; // N NUMBER(10) Y 종료 노드 ID @Column(nullable = false, length = 7) private String SECT_GRAD_CD; // N VARCHAR2(7) Y 구간 등급 코드 @Column(nullable = false, length = 7) private String AREA_CD; // N VARCHAR2(7) Y 지역 코드 @Column(columnDefinition = "CHAR", length = 1) @ColumnDefault(value = "N") private String DEL_YN; // N CHAR(1) Y 'N' 삭제 여부 public void updateName(RoadDto.RoadNameUpdateReq req) { this.ROAD_NAME = req.getROAD_NAME(); this.STRT_NM = req.getSTRT_NM(); this.END_NM = req.getEND_NM(); } }