From 90802890de1ae3d94c1f6c5f2afa328004a82a0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=A7=80=EB=8C=80=ED=95=9C?= Date: Wed, 7 Feb 2024 06:01:41 +0000 Subject: [PATCH] feature/data (#6) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit refactor: data layer 분리 및 수정 - entity db type 추가 - entity 연관관계 적용(모듈별 연관관계 제외) --- .../palnet/kac/data/cns/model/CnsFaqBas.java | 29 +-- .../palnet/kac/data/cns/model/CnsQnaBas.java | 54 ++--- .../data/com/domain/ComAdmDistrictBas.java | 22 +-- .../kac/data/com/domain/ComArcrftBas.java | 54 ++--- .../kac/data/com/domain/ComAuthBas.java | 36 ++-- .../palnet/kac/data/com/domain/ComCdBas.java | 4 - .../kac/data/com/domain/ComCdGroupBas.java | 1 - .../kac/data/com/domain/ComCdLangCtg.java | 6 - .../kac/data/com/domain/ComConfirmBas.java | 31 ++- .../kac/data/com/domain/ComFileBas.java | 30 +-- .../kac/data/com/domain/ComIdntfBas.java | 53 +++-- .../kac/data/com/domain/ComRiseSetBas.java | 38 ++-- .../kac/data/com/domain/ComSiteBas.java | 27 +-- .../kac/data/com/domain/ComTrmnlBas.java | 16 +- .../com/repository/ComAuthBasRepository.java | 7 + .../com/repository/ComSiteBasRepository.java | 7 + .../com/repository/ComTrmnlBasRepository.java | 7 + .../kac/data/ctr/model/CtrCntrlBas.java | 61 +++--- .../kac/data/ctr/model/CtrCntrlHstry.java | 64 +++--- .../kac/data/ctr/model/CtrCntrlHstryArea.java | 58 +++--- .../kac/data/ctr/model/CtrCntrlWarnLog.java | 26 +-- .../flt/model/FltCptAuthAdmDistrictRel.java | 23 ++- .../kac/data/flt/model/FltCptAuthBas.java | 30 +-- .../kac/data/flt/model/FltPlanArcrft.java | 103 +++++----- .../kac/data/flt/model/FltPlanArea.java | 47 +++-- .../kac/data/flt/model/FltPlanAreaCoord.java | 33 ++-- .../palnet/kac/data/flt/model/FltPlanBas.java | 82 ++++---- .../data/flt/model/FltPlanCtrCntrlRel.java | 43 ++-- .../kac/data/flt/model/FltPlanPilot.java | 53 ++--- .../kac/data/other/model/SuredataEntity.java | 187 +++++++++++++++--- .../kac/data/pty/model/PtyCrtfyhpBas.java | 12 +- .../kac/data/pty/model/PtyCstmrBas.java | 49 +++-- .../data/pty/model/PtyCstmrConectHist.java | 34 ++-- .../kac/data/pty/model/PtyCstmrDtl.java | 41 ++-- .../kac/data/pty/model/PtyCstmrGroup.java | 51 +++-- .../kac/data/pty/model/PtyGroupBas.java | 24 +-- .../kac/data/pty/model/PtySnsLoginRel.java | 38 ++-- .../kac/data/pty/model/PtyTermsAgreeTxn.java | 35 ++-- .../kac/data/pty/model/PtyTermsBas.java | 43 ++-- .../kac/data/pty/model/PtyTermsDtl.java | 32 +-- 40 files changed, 922 insertions(+), 669 deletions(-) create mode 100644 data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComAuthBasRepository.java create mode 100644 data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComSiteBasRepository.java create mode 100644 data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComTrmnlBasRepository.java diff --git a/data/cns/src/main/java/kr/co/palnet/kac/data/cns/model/CnsFaqBas.java b/data/cns/src/main/java/kr/co/palnet/kac/data/cns/model/CnsFaqBas.java index 585e2ca..3932b52 100644 --- a/data/cns/src/main/java/kr/co/palnet/kac/data/cns/model/CnsFaqBas.java +++ b/data/cns/src/main/java/kr/co/palnet/kac/data/cns/model/CnsFaqBas.java @@ -21,49 +21,50 @@ public class CnsFaqBas { // FAQ일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "FAQ_SNO") - private int faqSno; + @Column(name = "FAQ_SNO", columnDefinition = "int unsigned") + private Long faqSno; // 카테고리 - @Column(name = "CATEGORY") + @Column(name = "CATEGORY", length = 20) private String category; // 제목 - @Column(name = "TITLE") + @Column(name = "TITLE", nullable = false) private String title; // 내용 - @Column(name = "CONTENT") + @Lob + @Column(name = "CONTENT", columnDefinition = "text") private String content; // 조회수 - @Column(name = "VIEW_CNT") - private int viewCnt = 0; + @Column(name = "VIEW_CNT", columnDefinition = "int default 0", nullable = false) + private Integer viewCnt; // 표출여부 - @Column(name = "EXPSR_YN") - private String expsrYn = "N"; + @Column(name = "EXPSR_YN", columnDefinition = "char(1) default 'N'", nullable = false) + private String expsrYn; // 삭제여부 - @Column(name = "DEL_YN") + @Column(name = "DEL_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String delYn = "N"; // 등록사용자ID - @Column(name = "CREATE_USER_ID", updatable = false) + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 등록일시 @CreationTimestamp - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP", updatable = false) + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; // 수정일시 @UpdateTimestamp - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; } diff --git a/data/cns/src/main/java/kr/co/palnet/kac/data/cns/model/CnsQnaBas.java b/data/cns/src/main/java/kr/co/palnet/kac/data/cns/model/CnsQnaBas.java index 1913946..32ec783 100644 --- a/data/cns/src/main/java/kr/co/palnet/kac/data/cns/model/CnsQnaBas.java +++ b/data/cns/src/main/java/kr/co/palnet/kac/data/cns/model/CnsQnaBas.java @@ -22,77 +22,77 @@ public class CnsQnaBas { // QNA일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "QNA_SNO") - private int qnaSno; + @Column(name = "QNA_SNO", columnDefinition = "int unsigned") + private Long qnaSno; // 상위QNA일련번호 - @Column(name = "TARGET_SNO") - private int targetSno; + @Column(name = "TARGET_SNO", columnDefinition = "int unsigned") + private Long targetSno; // 카테고리 - @Column(name = "CATEGORY") + @Column(name = "CATEGORY", length = 20) private String category; // 제목 - @Column(name = "TITLE") + @Column(name = "TITLE", nullable = false) private String title; // 내용 - @Column(name = "CONTENT") + @Lob + @Column(name = "CONTENT", columnDefinition = "text") private String content; // 연락처 - @Column(name = "CONTACT") + @Column(name = "CONTACT", length = 20) private String contact; // 답변내용 - @Column(name = "ANSER_CONTENT") + @Lob + @Column(name = "ANSER_CONTENT", columnDefinition = "text") private String anserContent; // 답변자 - @Column(name = "ANSER_USER_NM") + @Column(name = "ANSER_USER_NM", length = 50) private String anserUserNm; // 답변처리일시 - @Column(name = "ANSER_PROC_DT", columnDefinition = "TIMESTAMP") + @Column(name = "ANSER_PROC_DT", columnDefinition = "datetime") private Instant anserProcDt; // 답변상태 - @Column(name = "ANSER_STATUS") - private String anserStatus; + @Column(name = "ANSER_STATUS", length = 10) + private String anserStatus; // 질문, 답변중, 답변완료, 보류 // 파일그룹번호 - @Column(name = "FILE_GROUP_NO") - private Integer fileGroupNo; + @Column(name = "FILE_GROUP_NO", columnDefinition = "int unsigned") + private Long fileGroupNo; // 표출여부 - @Column(name = "EXPSR_YN") - private String expsrYn = "N"; + @Column(name = "EXPSR_YN", columnDefinition = "char(1) default 'N'", nullable = false) + private String expsrYn; // 삭제여부 - @Column(name = "DEL_YN") - private String delYn = "N"; + @Column(name = "DEL_YN", columnDefinition = "char(1) default 'N'", nullable = false) + private String delYn; // 조회수 - @Column(name = "VIEW_CNT") - private int viewCnt = 0; + @Column(name = "VIEW_CNT", columnDefinition = "int default 0", nullable = false) + private Integer viewCnt = 0; // 등록사용자ID - @Column(name = "CREATE_USER_ID", updatable = false) + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 등록일시 - @CreationTimestamp - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP", updatable = false) + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; // 수정일시 - @UpdateTimestamp - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; } diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComAdmDistrictBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComAdmDistrictBas.java index 848d3fc..07dbc8c 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComAdmDistrictBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComAdmDistrictBas.java @@ -20,34 +20,34 @@ public class ComAdmDistrictBas { // 행정코드 @Id - @Column(name = "ADM_CD") + @Column(name = "ADM_CD", length = 10) private String admCd; // 행정구역명 - @Column(name = "ADM_SECT_NM") + @Column(name = "ADM_SECT_NM", length = 100) private String admSectNm; // 최하위행정구역명 - @Column(name = "LOWEST_ADM_SECT_NM") + @Column(name = "LOWEST_ADM_SECT_NM", length = 100) private String lowestAdmSectNm; // 레벨 - @Column(name = "LEVEL") - private String level; + @Column(name = "LEVEL", columnDefinition = "int(11)") + private Integer level; // 상위행정코드 - @Column(name = "UP_ADM_CD") + @Column(name = "UP_ADM_CD", length = 10) private String upAdmCd; // 삭제일자 - @Column(name = "DEL_YMD") + @Column(name = "DEL_YMD", length = 8) private String delYmd; // 변경전행정구역구분 - @Column(name = "CHG_BEF_ADM_SECT_GBN") + @Column(name = "CHG_BEF_ADM_SECT_GBN", length = 1) private String chgBefAdmSectGbn; // 생성일자 - @Column(name = "CRE_YMD") + @Column(name = "CRE_YMD", length = 8) private String creYmd; // 변경전행정구역코드 - @Column(name = "CHG_BEF_ADM_SECT_CD") + @Column(name = "CHG_BEF_ADM_SECT_CD", length = 10) private String chgBefAdmSectCd; // 원천시군구코드 - @Column(name = "COL_ADM_SECT_CD") + @Column(name = "COL_ADM_SECT_CD", length = 5) private String colAdmSectCd; } diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComArcrftBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComArcrftBas.java index 43bb60f..e26ddc5 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComArcrftBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComArcrftBas.java @@ -1,18 +1,17 @@ package kr.co.palnet.kac.data.com.domain; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import java.time.Instant; +import java.util.List; @Data @AllArgsConstructor @NoArgsConstructor @Builder +@ToString(exclude = {"comIdntfBasList"}) @Entity @Table(name = "COM_ARCRFT_BAS") public class ComArcrftBas { @@ -20,87 +19,90 @@ public class ComArcrftBas { // 기체일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "ARCRFT_SNO") - private int arcrftSno; + @Column(name = "ARCRFT_SNO", columnDefinition = "int unsigned") + private Long arcrftSno; // 그룹ID - @Column(name = "GROUP_ID") + @Column(name = "GROUP_ID", length = 50) private String groupId; // 제작번호 - @Column(name = "PRDCT_NUM") + @Column(name = "PRDCT_NUM", length = 50, nullable = false) private String prdctNum; // 기체종류코드 - @Column(name = "ARCRFT_TYPE_CD") + @Column(name = "ARCRFT_TYPE_CD", length = 20, nullable = false) private String arcrftTypeCd; // 기체모델명 - @Column(name = "ARCRFT_MODEL_NM") + @Column(name = "ARCRFT_MODEL_NM", length = 50, nullable = false) private String arcrftModelNm; // 제작자 - @Column(name = "PRDCT_CMPN_NM") + @Column(name = "PRDCT_CMPN_NM", length = 50) private String prdctCmpnNm; // 제작일자 - @Column(name = "PRDCT_DATE", columnDefinition = "TIMESTAMP") + @Column(name = "PRDCT_DATE", columnDefinition = "datetime") private Instant prdctDate; // 기체길이 - @Column(name = "ARCRFT_LNGTH") + @Column(name = "ARCRFT_LNGTH", columnDefinition = "double") private double arcrftLngth; // 기체폭 - @Column(name = "ARCRFT_WDTH") + @Column(name = "ARCRFT_WDTH", columnDefinition = "double") private double arcrftWdth; // 기체높이 - @Column(name = "ARCRFT_HGHT") + @Column(name = "ARCRFT_HGHT", columnDefinition = "double") private double arcrftHght; // 자체중량 - @Column(name = "ARCRFT_WGHT") + @Column(name = "ARCRFT_WGHT", columnDefinition = "double") private double arcrftWght; // 중량구분코드 - @Column(name = "WGHT_TYPE_CD") + @Column(name = "WGHT_TYPE_CD", length = 20, nullable = false) private String wghtTypeCd; // 이미지URL - @Column(name = "IMAGE_URL") + @Column(name = "IMAGE_URL", length = 200) private String imageUrl; // 최대이륙중량 - @Column(name = "TAKEOFF_WGHT") + @Column(name = "TAKEOFF_WGHT", columnDefinition = "double") private double takeoffWght; // 사용여부 - @Column(name = "USE_YN") + @Column(name = "USE_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String useYn; // 카메라탑재여부 - @Column(name = "CAMERA_YN") + @Column(name = "CAMERA_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String cameraYn; // 보험가입여부 - @Column(name = "INSRNC_YN") + @Column(name = "INSRNC_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String insrncYn; // 등록일자 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 등록사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 수정일자 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; + @OneToMany(mappedBy = "comArcrftBas", fetch = FetchType.LAZY) + private List comIdntfBasList; + } \ No newline at end of file diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComAuthBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComAuthBas.java index 42927f1..d680657 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComAuthBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComAuthBas.java @@ -1,10 +1,7 @@ package kr.co.palnet.kac.data.com.domain; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import java.time.Instant; @@ -13,45 +10,54 @@ import java.time.Instant; @AllArgsConstructor @NoArgsConstructor @Builder +@ToString(exclude = {"comSiteBas"}) @Entity @Table(name = "COM_AUTH_BAS") public class ComAuthBas { // 권한ID @Id - @Column(name = "AUTH_ID") + @Column(name = "AUTH_ID", length = 50) private String authId; // 사이트코드 - @Column(name = "SITE_CD") + @Column(name = "SITE_CD", length = 20, nullable = false) private String siteCd; // 권한명 - @Column(name = "AUTH_NM") + @Column(name = "AUTH_NM", length = 100, nullable = false) private String authNm; // 사용여부 - @Column(name = "USE_YN") + @Column(name = "USE_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String useYn; // 비고 @Lob - @Column(name = "RM") + @Column(name = "RM", columnDefinition = "mediumtext") private String rm; // 생성사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 생성일시 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; - // 수정일시 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") - private Instant updateDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; + // 수정일시 + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) + private Instant updateDt; + + @JoinColumn( + name = "SITE_CD", updatable = false, insertable = false, + foreignKey = @ForeignKey(name = "FK_COM_AUTH_BAS_COM_SITE_BAS_SITE_CD") + ) + @ManyToOne(fetch = FetchType.LAZY) + private ComSiteBas comSiteBas; + } \ No newline at end of file diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdBas.java index 4d686cc..b0b3bcb 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdBas.java @@ -6,7 +6,6 @@ import lombok.*; import java.io.Serializable; import java.time.LocalDateTime; -import java.util.ArrayList; import java.util.List; @@ -27,11 +26,8 @@ public class ComCdBas { @Builder public static class ComCdBasId implements Serializable { // 그룹코드 - @Column(name = "GROUP_CD") private String groupCd; - // 코드ID - @Column(name = "CD_ID") private String cdId; } diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdGroupBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdGroupBas.java index 2024bd2..2f1d79c 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdGroupBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdGroupBas.java @@ -7,7 +7,6 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.time.LocalDateTime; -import java.util.ArrayList; import java.util.List; diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdLangCtg.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdLangCtg.java index aad9e0b..24e8899 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdLangCtg.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComCdLangCtg.java @@ -22,17 +22,11 @@ public class ComCdLangCtg { @AllArgsConstructor @Builder public static class ComCdLangCtgId implements Serializable { - // 그룹코드 - @Column(name = "GROUP_CD") private String groupCd; - // 코드ID - @Column(name = "CD_ID") private String cdId; - // 언어구분코드 - @Column(name = "LANG_DIV_CD") private String langDivCd; } diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComConfirmBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComConfirmBas.java index 7cb35da..e91747a 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComConfirmBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComConfirmBas.java @@ -5,8 +5,6 @@ import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; -import org.hibernate.annotations.CreationTimestamp; -import org.hibernate.annotations.UpdateTimestamp; import java.time.Instant; @@ -21,49 +19,50 @@ public class ComConfirmBas { // 확인일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "CONFIRM_SNO") - private Integer confirmSno; + @Column(name = "CONFIRM_SNO", columnDefinition = "int unsigned") + private Long confirmSno; // 확인키 - @Column(name = "CONFIRM_KEY") + @Column(name = "CONFIRM_KEY", length = 50, nullable = false) private String confirmKey; // 상태 - @Column(name = "STATUS") + @Column(name = "STATUS", length = 20, nullable = false) private String status; // GENERATED, RECEIVED, CHECKED, FAILED, EXPIRED // 대상구분 - @Column(name = "TARGET_TYPE") + @Column(name = "TARGET_TYPE", length = 100) private String targetType; // RQ 데이터 - @Column(name = "RQ_DATA") + @Lob + @Column(name = "RQ_DATA", columnDefinition = "text") private String rqData; // RS 데이터 - @Column(name = "RS_DATA") + @Lob + @Column(name = "RS_DATA", columnDefinition = "text") private String rsData; // 비고 - @Column(name = "RM") + @Lob + @Column(name = "RM", columnDefinition = "text") private String rm; // 생성사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 생성일시 - @CreationTimestamp - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP", updatable = false) + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; // 수정일시 - @UpdateTimestamp - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; } diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComFileBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComFileBas.java index 1cad74f..4aa0c25 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComFileBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComFileBas.java @@ -19,51 +19,51 @@ public class ComFileBas { // 파일일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "FILE_SNO") - private int fileSno; + @Column(name = "FILE_SNO", columnDefinition = "int unsigned") + private Long fileSno; // 파일그룹번호 - @Column(name = "FILE_GROUP_NO") - private int fileGroupNo; + @Column(name = "FILE_GROUP_NO", columnDefinition = "int unsigned") + private Long fileGroupNo; // 저장된파일명 - @Column(name = "FILE_SAVE_NM") + @Column(name = "FILE_SAVE_NM", length = 200, nullable = false) private String fileSaveNm; // 실제파일명 - @Column(name = "FILE_ORI_NM") + @Column(name = "FILE_ORI_NM", length = 200) private String fileOriNm; // 파일저장경로 - @Column(name = "FILE_PATH") + @Column(name = "FILE_PATH", length = 200) private String filePath; // 파일확장명 - @Column(name = "FILE_EXT") + @Column(name = "FILE_EXT", length = 30) private String fileExt; // 파일크기 - @Column(name = "FILE_SIZE") + @Column(name = "FILE_SIZE", length = 30) private String fileSize; // 삭제여부 - @Column(name = "DEL_YN", columnDefinition = "TIMESTAMP") - private String delYn = "N"; + @Column(name = "DEL_YN", columnDefinition = "char(1) default 'N'", nullable = false) + private String delYn; // 삭제사용자ID - @Column(name = "DEL_USER_ID") + @Column(name = "DEL_USER_ID", length = 30) private String delUserId; // 삭제일시 - @Column(name = "DEL_DT") + @Column(name = "DEL_DT", columnDefinition = "datetime") private Instant delDt; // 생성사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 생성일시 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; } diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComIdntfBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComIdntfBas.java index f31d95d..f8e776b 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComIdntfBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComIdntfBas.java @@ -1,14 +1,9 @@ package kr.co.palnet.kac.data.com.domain; -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import jakarta.persistence.*; +import lombok.*; +import java.io.Serializable; import java.time.Instant; @@ -16,40 +11,62 @@ import java.time.Instant; @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"arcrftBas"}) +@IdClass(ComIdntfBas.ComIdntfBasId.class) @Entity @Table(name = "COM_IDNTF_BAS") public class ComIdntfBas { + + @Data + @NoArgsConstructor + @AllArgsConstructor + @Builder + public static class ComIdntfBasId implements Serializable { + // 식별번호 + private String idntfNum; + // 기체일련번호 + private Long arcrftSno; + } + // 식별번호 @Id - @Column(name = "IDNTF_NUM") + @Column(name = "IDNTF_NUM", length = 30) private String idntfNum; // 기체일련번호 - @Column(name = "ARCRFT_SNO") - private int arcrftSno; + @Id + @Column(name = "ARCRFT_SNO", columnDefinition = "int unsigned") + private Long arcrftSno; // 식별장치종류코드 - @Column(name = "IDNTF_TYPE_CD") + @Column(name = "IDNTF_TYPE_CD", length = 20, nullable = false) private String idntfTypeCd; // 소유자명 - @Column(name = "OWNER_NM") + @Column(name = "OWNER_NM", length = 100, nullable = false) private String ownerNm; // 고객일련번호(소유자) - @Column(name = "CSTMR_SNO") - private Integer cstmrSno; + @Column(name = "CSTMR_SNO", columnDefinition = "int unsigned") + private Long cstmrSno; // 휴대폰번호 - @Column(name = "HPNO") + @Column(name = "HPNO", length = 100, nullable = false) private String hpno; // 등록일자 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정일자 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; + @JoinColumn( + name = "ARCRFT_SNO", updatable = false, insertable = false, + foreignKey = @ForeignKey(name = "FK_COM_IDNTF_BAS_COM_ARCRFT_BAS_ARCRFT_SNO") + ) + @ManyToOne(fetch = FetchType.LAZY) + private ComArcrftBas comArcrftBas; + } \ No newline at end of file diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComRiseSetBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComRiseSetBas.java index 1b11b42..ae16947 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComRiseSetBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComRiseSetBas.java @@ -36,78 +36,76 @@ public class ComRiseSetBas { // 날짜 @Id - @Column(name = "LOC_DATE") + @Column(name = "LOC_DATE", length = 8) private String locDate; // 지역 @Id - @Column(name = "LOCATION") + @Column(name = "LOCATION", length = 100) private String location; // 경도 - @Column(name = "LON") + @Column(name = "LON", columnDefinition = "double") private Double lon; // 위도 - @Column(name = "LAT") + @Column(name = "LAT" , columnDefinition = "double") private Double lat; // 일출 - @Column(name = "SUNRISE") + @Column(name = "SUNRISE", length = 6) private String sunrise; // 일증 - @Column(name = "SUNTRANSIT") + @Column(name = "SUNTRANSIT", length = 6) private String suntransit; // 일몰 - @Column(name = "SUNSET") + @Column(name = "SUNSET", length = 6) private String sunset; // 월출 - @Column(name = "MOONRISE") + @Column(name = "MOONRISE", length = 6) private String moonrise; // 월중 - @Column(name = "MOONTRANSIT") + @Column(name = "MOONTRANSIT", length = 6) private String moontransit; // 월몰 - @Column(name = "MOONSET") + @Column(name = "MOONSET", length = 6) private String moonset; // 시민박명(아침) - @Column(name = "CIVILM") + @Column(name = "CIVILM", length = 6) private String civilm; // 시민박명(저녁) - @Column(name = "CIVILE") + @Column(name = "CIVILE", length = 6) private String civile; // 황해박명(아침) - @Column(name = "NAUTM") + @Column(name = "NAUTM", length = 6) private String nautm; // 황해박명(저녁) - @Column(name = "NAUTE") + @Column(name = "NAUTE", length = 6) private String naute; // 천문박명(아침) - @Column(name = "ASTM") + @Column(name = "ASTM", length = 6) private String astm; // 춘문박명(저녁) - @Column(name = "ASTE") + @Column(name = "ASTE", length = 6) private String aste; // 수정일시 - @UpdateTimestamp - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime") private Instant updateDt; // 등록일시 - @CreationTimestamp - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP", updatable = false) + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false) private Instant createDt; } diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComSiteBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComSiteBas.java index 8e7ba3e..7e77ce7 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComSiteBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComSiteBas.java @@ -1,58 +1,59 @@ package kr.co.palnet.kac.data.com.domain; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import java.time.Instant; +import java.util.List; @Data @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"comAuthBasList"}) @Entity @Table(name = "COM_SITE_BAS") public class ComSiteBas { // 사이트코드 @Id - @Column(name = "SITE_CD") + @Column(name = "SITE_CD", length = 20) private String siteCd; // 사이트경로 - @Column(name = "SITE_URL") + @Column(name = "SITE_URL", length = 50, nullable = false) private String siteUrl; // 사이트명 - @Column(name = "SITE_NM") + @Column(name = "SITE_NM", length = 50, nullable = false) private String siteNm; // 사이트설명 @Lob - @Column(name = "SITE_DESC") + @Column(name = "SITE_DESC", columnDefinition = "text") private String siteDesc; // 사용여부 - @Column(name = "USE_YN") + @Column(name = "USE_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String useYn; // 등록일자 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 등록사용자 - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 수정일자 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; // 수정사용자 - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; + @OneToMany(mappedBy = "comSiteBas", fetch = FetchType.LAZY) + private List comAuthBasList; } \ No newline at end of file diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComTrmnlBas.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComTrmnlBas.java index 94a2406..e661656 100644 --- a/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComTrmnlBas.java +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/domain/ComTrmnlBas.java @@ -21,15 +21,15 @@ public class ComTrmnlBas { // 터미널ID @Id - @Column(name = "TRMNL_ID") + @Column(name = "TRMNL_ID", length = 20) private String trmnlId; // 터미널명 - @Column(name = "TRMNL_NM") + @Column(name = "TRMNL_NM", length = 100, nullable = false) private String trmnlNm; // 인증KEY - @Column(name = "AUTH_KEY") + @Column(name = "AUTH_KEY", length = 100, nullable = false) private String authKey; // 터미널설명 @@ -37,22 +37,22 @@ public class ComTrmnlBas { private String descSn; // 사용여부 - @Column(name = "USE_YN") + @Column(name = "USE_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String useYn; // 등록일시 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 등록사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 수정일시 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; } \ No newline at end of file diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComAuthBasRepository.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComAuthBasRepository.java new file mode 100644 index 0000000..35050fa --- /dev/null +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComAuthBasRepository.java @@ -0,0 +1,7 @@ +package kr.co.palnet.kac.data.com.repository; + +import kr.co.palnet.kac.data.com.domain.ComAuthBas; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface ComAuthBasRepository extends JpaRepository{ +} diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComSiteBasRepository.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComSiteBasRepository.java new file mode 100644 index 0000000..1ea74fb --- /dev/null +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComSiteBasRepository.java @@ -0,0 +1,7 @@ +package kr.co.palnet.kac.data.com.repository; + +import kr.co.palnet.kac.data.com.domain.ComSiteBas; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface ComSiteBasRepository extends JpaRepository{ +} diff --git a/data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComTrmnlBasRepository.java b/data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComTrmnlBasRepository.java new file mode 100644 index 0000000..c42f652 --- /dev/null +++ b/data/com/src/main/java/kr/co/palnet/kac/data/com/repository/ComTrmnlBasRepository.java @@ -0,0 +1,7 @@ +package kr.co.palnet.kac.data.com.repository; + +import kr.co.palnet.kac.data.com.domain.ComTrmnlBas; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface ComTrmnlBasRepository extends JpaRepository{ +} diff --git a/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlBas.java b/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlBas.java index c070c35..bf2ec2f 100644 --- a/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlBas.java +++ b/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlBas.java @@ -1,100 +1,99 @@ package kr.co.palnet.kac.data.ctr.model; -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import jakarta.persistence.*; +import lombok.*; import java.time.Instant; +import java.util.List; @Data @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"ctrCntrlHstryList"}) @Entity @Table(name = "CTR_CNTRL_BAS") public class CtrCntrlBas { // 관제ID @Id - @Column(name = "CNTRL_ID") + @Column(name = "CNTRL_ID", length = 60) private String cntrlId; // 식별번호 - @Column(name = "IDNTF_NUM") + @Column(name = "IDNTF_NUM", length = 30, nullable = false) private String idntfNum; // 상태코드 - @Column(name = "STATUS_CD") + @Column(name = "STATUS_CD", length = 20, nullable = false) private String statusCd; // 처리상태여부 - @Column(name = "PROC_STATUS_YN") + @Column(name = "PROC_STATUS_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String procStatusYn; // 물체타입코드 - @Column(name = "OBJECT_TYPE_CD") + @Column(name = "OBJECT_TYPE_CD", length = 20, nullable = false) private String objectTypeCd; // 비행시작일시 - @Column(name = "FLGHT_ST_DT", columnDefinition = "TIMESTAMP") + @Column(name = "FLGHT_ST_DT", columnDefinition = "datetime(6)") private Instant flghtStDt; // 비행종료일시 - @Column(name = "FLGHT_END_DT", columnDefinition = "TIMESTAMP") + @Column(name = "FLGHT_END_DT", columnDefinition = "datetime(6)") private Instant flghtEndDt; // 관제시작일시 - @Column(name = "CNTRL_ST_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CNTRL_ST_DT", columnDefinition = "datetime(6)", nullable = false) private Instant cntrlStDt; // 관제종료일시 - @Column(name = "CNTRL_END_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CNTRL_END_DT", columnDefinition = "datetime(6)") private Instant cntrlEndDt; // 총비행시간 - @Column(name = "TTL_TIME") - private Double ttlTime = 0.0; + @Column(name = "TTL_TIME", columnDefinition = "double default 0.0") + private Double ttlTime; // 총비행시간단위 - @Column(name = "TTL_TIME_TYPE") + @Column(name = "TTL_TIME_TYPE", length = 20) private String ttlTimeType; // 총비행거리 - @Column(name = "TTL_DSTNC") - private Double ttlDstnc = 0.0; + @Column(name = "TTL_DSTNC", columnDefinition = "double default 0.0") + private Double ttlDstnc; // 총비행거리단위 - @Column(name = "TTL_DSTNC_TYPE") + @Column(name = "TTL_DSTNC_TYPE", length = 20) private String ttlDstncType; // 평균속도 - @Column(name = "AVRG_SPEED") - private Double avrgSpeed = 0.0; + @Column(name = "AVRG_SPEED", columnDefinition = "double default 0.0") + private Double avrgSpeed; // 평균속도단위 - @Column(name = "AVRG_SPEED_TYPE") + @Column(name = "AVRG_SPEED_TYPE", length = 20) private String avrgSpeedType; // 배터리소모량 - @Column(name = "BTTR_CNSMPTN") - private Double bttrCnsmptn = 0.0; + @Column(name = "BTTR_CNSMPTN", columnDefinition = "double default 0.0") + private Double bttrCnsmptn; // 종료타입코드 - @Column(name = "END_TYPE_CD") + @Column(name = "END_TYPE_CD", length = 20) private String endTypeCd; // 생성일시 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정일시 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; + @OneToMany(mappedBy = "ctrCntrlBas", fetch = FetchType.LAZY) + private List ctrCntrlHstryList; + } \ No newline at end of file diff --git a/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlHstry.java b/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlHstry.java index 2da0139..c0d7567 100644 --- a/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlHstry.java +++ b/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlHstry.java @@ -1,18 +1,17 @@ package kr.co.palnet.kac.data.ctr.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import java.time.Instant; +import java.util.List; @Data @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"ctrCntrlHstryAreaList", "ctrCntrlBas"}) @Entity @Table(name = "CTR_CNTRL_HSTRY") public class CtrCntrlHstry { @@ -20,96 +19,105 @@ public class CtrCntrlHstry { // 이력일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "HSTRY_SNO") - private int hstrySno; + @Column(name = "HSTRY_SNO", columnDefinition = "int unsigned") + private Long hstrySno; // 관제ID - @Column(name = "CNTRL_ID") + @Column(name = "CNTRL_ID", length = 60, nullable = false) private String cntrlId; // 터미널ID - @Column(name = "TRMNL_ID") + @Column(name = "TRMNL_ID", length = 100, nullable = false) private String trmnlId; // 메시지코드 - @Column(name = "MSSG_TYPE_CD") + @Column(name = "MSSG_TYPE_CD", length = 20, nullable = false) private String mssgTypeCd; // 상태코드 - @Column(name = "STATUS_CD") + @Column(name = "STATUS_CD", length = 20) private String statusCd; // 위도 - @Column(name = "LAT") + @Column(name = "LAT", columnDefinition = "double(18,10)", nullable = false) private Double lat; // 경도 - @Column(name = "LON") + @Column(name = "LON", columnDefinition = "double(18,10)", nullable = false) private Double lon; // 속도 - @Column(name = "SPEED") + @Column(name = "SPEED", columnDefinition = "double") private Double speed; // 속도단위 - @Column(name = "SPEED_TYPE") + @Column(name = "SPEED_TYPE", length = 20) private String speedType; // 방향 - @Column(name = "HEADING") + @Column(name = "HEADING", columnDefinition = "double") private Double heading; // 고도단위 - @Column(name = "ELEV_TYPE") + @Column(name = "ELEV_TYPE", length = 20) private String elevType; // 고도 - @Column(name = "ELEV") + @Column(name = "ELEV", columnDefinition = "double") private Double elev; // 이동거리 - @Column(name = "MV_DSTNC") + @Column(name = "MV_DSTNC", columnDefinition = "double") private Double mvDstnc; // 이동거리단위 - @Column(name = "MV_DSTNC_TYPE") + @Column(name = "MV_DSTNC_TYPE", length = 20) private String mvDstncType; // 배터리잔량 - @Column(name = "BTTR_LVL") + @Column(name = "BTTR_LVL", columnDefinition = "double") private Double bttrLvl; // 배터리전압 - @Column(name = "BTTR_VLTG") + @Column(name = "BTTR_VLTG", columnDefinition = "double") private Double bttrVltg; // 단말기수신시간 - @Column(name = "TRMNL_RCV_DT", columnDefinition = "TIMESTAMP") + @Column(name = "TRMNL_RCV_DT", columnDefinition = "datetime(6)") private Instant trmnlRcvDt; // 서버수신시간 - @Column(name = "SRVR_RCV_DT", columnDefinition = "TIMESTAMP") + @Column(name = "SRVR_RCV_DT", columnDefinition = "datetime(6)", nullable = false) private Instant srvrRcvDt; // 환경센서 필드 // 일산화탄소 - @Column(name = "SENSOR_CO") + @Column(name = "SENSOR_CO", columnDefinition = "double") private Double sensorCo; // 아황산가스 - @Column(name = "SENSOR_SO2") + @Column(name = "SENSOR_SO2", columnDefinition = "double") private Double sensorSo2; // 이산화질소 - @Column(name = "SENSOR_NO2") + @Column(name = "SENSOR_NO2", columnDefinition = "double") private Double sensorNo2; // 오존 - @Column(name = "SENSOR_O3") + @Column(name = "SENSOR_O3", columnDefinition = "double") private Double sensorO3; // 미세먼지 - @Column(name = "SENSOR_DUST") + @Column(name = "SENSOR_DUST", columnDefinition = "double") private Double sensorDust; + @JoinColumn( + name = "CNTRL_ID", insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_CTR_CNTRL_HSTRY_CTR_CNTRL_BAS") + ) + @ManyToOne(fetch = FetchType.LAZY) + private CtrCntrlBas ctrCntrlBas; + + @OneToMany(mappedBy = "ctrCntrlHstry", fetch = FetchType.LAZY) + private List ctrCntrlHstryAreaList; } \ No newline at end of file diff --git a/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlHstryArea.java b/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlHstryArea.java index 87c8482..6c50bac 100644 --- a/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlHstryArea.java +++ b/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlHstryArea.java @@ -1,10 +1,7 @@ package kr.co.palnet.kac.data.ctr.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import java.time.Instant; @@ -13,6 +10,7 @@ import java.time.Instant; @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"ctrCntrlHstry"}) @Entity @Table(name = "CTR_CNTRL_HSTRY_AREA") public class CtrCntrlHstryArea { @@ -20,71 +18,79 @@ public class CtrCntrlHstryArea { // 이력지역일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "HSTRY_AREA_SNO") - private int hstryAreaSno; + @Column(name = "HSTRY_AREA_SNO", columnDefinition = "int unsigned") + private Long hstryAreaSno; + + // 이력일련번호 + @Column(name = "HSTRY_SNO", columnDefinition = "int unsigned", nullable = false) + private int hstrySno; // 관제ID - @Column(name = "CNTRL_ID") + @Column(name = "CNTRL_ID", length = 60, nullable = false) private String cntrlId; // 행동구분 - @Column(name = "ACTN_TYPE") + @Column(name = "ACTN_TYPE", length = 20, nullable = false) private String actnType; // 처리여부 - @Column(name = "PRCS_YN") + @Column(name = "PRCS_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String prcsYn; - // 이력일련번호 - @Column(name = "HSTRY_SNO") - private int hstrySno; // 위도 - @Column(name = "LAT") - private double lat; + @Column(name = "LAT", columnDefinition = "double(18,10)") + private Double lat; // 경도 - @Column(name = "LON") - private double lon; + @Column(name = "LON", columnDefinition = "double(18,10)") + private Double lon; // 시도명 - @Column(name = "AREA1") + @Column(name = "AREA1", length = 20) private String area1; // 시군구명 - @Column(name = "AREA2") + @Column(name = "AREA2", length = 20) private String area2; // 읍면동명 - @Column(name = "AREA3") + @Column(name = "AREA3", length = 20) private String area3; // 우편번호 - @Column(name = "ZIP_CD") + @Column(name = "ZIP_CD", length = 6) private String zipCd; // 도로명 - @Column(name = "LAND_NM") + @Column(name = "LAND_NM", length = 30) private String landNm; // 도로번호 - @Column(name = "LAND_NUM") + @Column(name = "LAND_NUM", length = 10) private String landNum; // 지역타입 - @Column(name = "AREA_TYPE") + @Column(name = "AREA_TYPE", length = 20) private String areaType; // 지역명 - @Column(name = "AREA_NM") + @Column(name = "AREA_NM", length = 100) private String areaNm; // 등록일시 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정일시 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; + @JoinColumn( + name = "HSTRY_SNO", updatable = false, insertable = false, + foreignKey = @ForeignKey(name = "FK_CTR_CNTRL_HSTRY_AREA_CTR_CNTRL_HSTRY") + ) + @ManyToOne(fetch = FetchType.LAZY) + private CtrCntrlHstry ctrCntrlHstry; + } \ No newline at end of file diff --git a/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlWarnLog.java b/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlWarnLog.java index 1941a4c..5d195db 100644 --- a/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlWarnLog.java +++ b/data/ctr/src/main/java/kr/co/palnet/kac/data/ctr/model/CtrCntrlWarnLog.java @@ -19,43 +19,43 @@ public class CtrCntrlWarnLog { // 로그일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "WARN_LOG_SNO") + @Column(name = "WARN_LOG_SNO", columnDefinition = "int unsigned") private Integer warnLogSno; // 관제ID - @Column(name = "CNTRL_ID") + @Column(name = "CNTRL_ID", length = 60, nullable = false) private String cntrlId; // 상황종류 - @Column(name = "WARN_TYPE") + @Column(name = "WARN_TYPE", length = 30, nullable = false) private String warnType; // 식별번호 - @Column(name = "IDNTF_NUM") + @Column(name = "IDNTF_NUM", length = 30, nullable = false) private String idntfNum; // 발생시간 - @Column(name = "OCCUR_DT") + @Column(name = "OCCUR_DT", columnDefinition = "datetime(6)", nullable = false) private Instant occurDt; // 위도 - @Column(name = "LAT") - private double lat; + @Column(name = "LAT", columnDefinition = "double(18,10)") + private Double lat; // 경도 - @Column(name = "LON") - private double lon; + @Column(name = "LON", columnDefinition = "double(18,10)") + private Double lon; // 고도 - @Column(name = "ELEV") - private double elev; + @Column(name = "ELEV", columnDefinition = "double") + private Double elev; // 등록일자 - @Column(name = "CREATE_DT") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 등록사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; } diff --git a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltCptAuthAdmDistrictRel.java b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltCptAuthAdmDistrictRel.java index 3e67ac9..201b601 100644 --- a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltCptAuthAdmDistrictRel.java +++ b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltCptAuthAdmDistrictRel.java @@ -1,11 +1,8 @@ package kr.co.palnet.kac.data.flt.model; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; +import lombok.*; import jakarta.persistence.*; -import lombok.NoArgsConstructor; import java.io.Serializable; import java.time.Instant; @@ -14,6 +11,7 @@ import java.time.Instant; @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"fltCptAuthBas"}) @IdClass(FltCptAuthAdmDistrictRel.FltCptAuthAdmDistrictRelId.class) @Entity @Table(name = "FLT_CPT_AUTH_ADM_DISTRICT_REL") @@ -36,24 +34,31 @@ public class FltCptAuthAdmDistrictRel { // 관할기관코드 @Id - @Column(name = "CPT_AUTH_CODE") + @Column(name = "CPT_AUTH_CODE", length = 10) private String CPT_AUTH_CODE; // 행정코드 @Id - @Column(name = "ADM_CD") + @Column(name = "ADM_CD", length = 10) private String ADM_CD; // 구분 @Id - @Column(name = "TYPE") + @Column(name = "TYPE", length = 10) private String type; // 수정일시 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant UPDATE_DT; // 생성일시 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP", updatable = false) + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant CREATE_DT; + @JoinColumn( + name = "CPT_AUTH_CODE", insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_FLT_CPT_AUTH_ADM_DISTRICT_REL_FLT_CPT_AUTH_BAS") + ) + @ManyToOne(fetch = FetchType.LAZY) + private FltCptAuthBas fltCptAuthBas; + } diff --git a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltCptAuthBas.java b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltCptAuthBas.java index 4da10b7..6dc6154 100644 --- a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltCptAuthBas.java +++ b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltCptAuthBas.java @@ -1,51 +1,51 @@ package kr.co.palnet.kac.data.flt.model; -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import jakarta.persistence.*; +import lombok.*; import java.time.Instant; +import java.util.List; @Data @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"fltCptAuthAdmDistrictRelList"}) @Entity @Table(name = "FLT_CPT_AUTH_BAS") public class FltCptAuthBas { // 관할기관코드 @Id - @Column(name = "CPT_AUTH_CODE") + @Column(name = "CPT_AUTH_CODE", length = 10) private String cptAuthCode; // 관할기관명 - @Column(name = "CPT_AUTH_NM") + @Column(name = "CPT_AUTH_NM", length = 100, nullable = false) private String cptAuthNm; // 관할기관연락처 - @Column(name = "CPT_AUTH_TP") + @Column(name = "CPT_AUTH_TP", length = 100) private String cptAuthTp; // 관할기관FAX - @Column(name = "CPT_AUTH_FAX") + @Column(name = "CPT_AUTH_FAX", length = 20) private String cptAuthFax; // 비고 - @Column(name = "RM") + @Lob + @Column(name = "RM", columnDefinition = "text") private String rm; // 수정일자 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; // 생성일자 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP", updatable = false) + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; + @OneToMany(mappedBy = "fltCptAuthBas", fetch = FetchType.LAZY) + private List fltCptAuthAdmDistrictRelList; + } diff --git a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanArcrft.java b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanArcrft.java index a9c010c..b890118 100644 --- a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanArcrft.java +++ b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanArcrft.java @@ -1,19 +1,17 @@ package kr.co.palnet.kac.data.flt.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; -import org.hibernate.annotations.CreationTimestamp; +import lombok.*; import org.hibernate.annotations.UpdateTimestamp; import java.time.Instant; +import java.time.LocalDate; @Data @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"fltPlanBas"}) @Table(name = "FLT_PLAN_ARCRFT") @Entity public class FltPlanArcrft { @@ -21,125 +19,126 @@ public class FltPlanArcrft { // 비행계획기체정보일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "PLAN_ARCRFT_SNO") - private Integer planArcrftSno; + @Column(name = "PLAN_ARCRFT_SNO", columnDefinition = "int unsigned") + private Long planArcrftSno; // 비행계획서일련번호 - @Column(name = "PLAN_SNO") - private Integer planSno; + @Column(name = "PLAN_SNO", columnDefinition = "int unsigned", nullable = false) + private Long planSno; // 기체일련번호 - @Column(name = "ARCRFT_SNO") - private Integer arcrftSno; + @Column(name = "ARCRFT_SNO", columnDefinition = "int unsigned") + private Long arcrftSno; // 식별번호 - @Column(name = "IDNTF_NUM") + @Column(name = "IDNTF_NUM", length = 30) private String idntfNum; // 그룹명 - @Column(name = "GROUP_NM") + @Column(name = "GROUP_NM", length = 50, nullable = false) private String groupNm; // 제작번호 - @Column(name = "PRDCT_NUM") + @Column(name = "PRDCT_NUM", length = 50) private String prdctNum; // 기체종류코드 -// @Convert(converter = ArcrftTypeCdConverter.class) - @Column(name = "ARCRFT_TYPE_CD") -// private ArcrftTypeCd arcrftTypeCd; + @Column(name = "ARCRFT_TYPE_CD", length = 20, nullable = false) private String arcrftTypeCd; // 기체모델명 - @Column(name = "ARCRFT_MODEL_NM") + @Column(name = "ARCRFT_MODEL_NM", length = 50, nullable = false) private String arcrftModelNm; // 제작자 - @Column(name = "PRDCT_CMPN_NM") + @Column(name = "PRDCT_CMPN_NM", length = 50) private String prdctCmpnNm; // 제작일자 - @Column(name = "PRDCT_DATE") - private Instant prdctDate; + @Column(name = "PRDCT_DATE", columnDefinition = "date") + private LocalDate prdctDate; // 기체길이 - @Column(name = "ARCRFT_LNGTH") - private double arcrftLngth; + @Column(name = "ARCRFT_LNGTH", columnDefinition = "double") + private Double arcrftLngth; // 기체폭 - @Column(name = "ARCRFT_WDTH") - private double arcrftWdth; + @Column(name = "ARCRFT_WDTH", columnDefinition = "double") + private Double arcrftWdth; // 기체높이 - @Column(name = "ARCRFT_HGHT") - private double arcrftHght; + @Column(name = "ARCRFT_HGHT", columnDefinition = "double") + private Double arcrftHght; // 자체중량 - @Column(name = "ARCRFT_WGHT") - private double arcrftWght; + @Column(name = "ARCRFT_WGHT", columnDefinition = "double") + private Double arcrftWght; // 자체중량코드 -// @Convert(converter = ArcrftWghtCdConverter.class) - @Column(name = "ARCRFT_WGHT_CD") -// private ArcrftWghtCd arcrftWghtCd; + @Column(name = "ARCRFT_WGHT_CD", length = 10) private String arcrftWghtCd; // 중량구분코드 - @Column(name = "WGHT_TYPE_CD") + @Column(name = "WGHT_TYPE_CD", length = 20) private String wghtTypeCd; // 이미지URL - @Column(name = "IMAGE_URL") + @Column(name = "IMAGE_URL", length = 200) private String imageUrl; // 최대이륙중량 - @Column(name = "TAKEOFF_WGHT") - private double takeoffWght; + @Column(name = "TAKEOFF_WGHT", columnDefinition = "double") + private Double takeoffWght; // 사용여부 - @Column(name = "USE_YN") + @Column(name = "USE_YN", columnDefinition = "char(1) default 'N'") private String useYn; // 카메라탑재여부 - @Column(name = "CAMERA_YN") + @Column(name = "CAMERA_YN", columnDefinition = "char(1) default 'N'") private String cameraYn; - // 소유자명 - @Column(name = "OWNER_NM") - private String ownerNm; - // 보험가입여부 - @Column(name = "INSRNC_YN") + @Column(name = "INSRNC_YN", columnDefinition = "char(1) default 'N'") private String insrncYn; // 기체보험유무 - @Column(name = "ACRFT_INSURANCE_YN") + @Column(name = "ACRFT_INSURANCE_YN", columnDefinition = "char(1) default 'N'") private String acrftInsuranceYn; // 보험유효기간 - @Column(name = "INSURANCE_EXPERIOD", columnDefinition = "TIMESTAMP") - private Instant insuranceExperiod; + @Column(name = "INSURANCE_EXPERIOD", columnDefinition = "datetime") + private String insuranceExperiod; // 법인명 - @Column(name = "CORPORATION_NM") + @Column(name = "CORPORATION_NM", length = 100) private String corporationNm; + // 소유자명 + @Column(name = "OWNER_NM", length = 100, nullable = false) + private String ownerNm; + // 생성사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 생성일시 - @CreationTimestamp - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; // 수정일시 @UpdateTimestamp - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; + @JoinColumn( + name = "PLAN_SNO", insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_FLT_PLAN_ARCRFT_FLT_PLAN_BAS_PLAN_SNO") + ) + @ManyToOne(fetch = FetchType.LAZY) + private FltPlanBas fltPlanBas; } diff --git a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanArea.java b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanArea.java index 4672a5a..46f0e98 100644 --- a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanArea.java +++ b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanArea.java @@ -1,19 +1,18 @@ package kr.co.palnet.kac.data.flt.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import org.hibernate.annotations.CreationTimestamp; import org.hibernate.annotations.UpdateTimestamp; import java.time.Instant; +import java.util.List; @Data @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"fltPlanBas", "fltPlanAreaCoordList"}) @Entity @Table(name = "FLT_PLAN_AREA") public class FltPlanArea { @@ -21,55 +20,63 @@ public class FltPlanArea { // 비행계획비행구역일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "PLAN_AREA_SNO") - private Integer planAreaSno; + @Column(name = "PLAN_AREA_SNO", columnDefinition = "int unsigned") + private Long planAreaSno; // 비행계획서일련번호 - @Column(name = "PLAN_SNO") - private Integer planSno; + @Column(name = "PLAN_SNO", columnDefinition = "int unsigned", nullable = false) + private Long planSno; // 구역종류 - @Column(name = "AREA_TYPE") + @Column(name = "AREA_TYPE", length = 30, nullable = false) private String areaType; // 비행방식 -// @Convert(converter = FltMethodConverter.class) - @Column(name = "FLT_METHOD") -// private FltMethod fltMethod; + @Column(name = "FLT_METHOD", length = 200) private String fltMethod; // 비행방식비고 - @Column(name = "FLT_MOTHOE_RM") + @Column(name = "FLT_MOTHOE_RM", length = 200) private String fltMothoeRm; // 비행구역주소 - @Column(name = "FLT_AREA_ADDR") + @Column(name = "FLT_AREA_ADDR", length = 200) private String fltAreaAddr; // 버퍼존 - @Column(name = "BUFFER_ZONE") + @Column(name = "BUFFER_ZONE", columnDefinition = "int") private Integer bufferZone; // 비행고도 - @Column(name = "FLT_ELEV") + @Column(name = "FLT_ELEV", length = 30, nullable = false) private String fltElev; // 생성사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 생성일시 @CreationTimestamp - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; // 수정일시 @UpdateTimestamp - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; + @JoinColumn( + name = "PLAN_SNO", insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_FLT_PLAN_AREA_FLT_PLAN_BAS_PLAN_SNO") + ) + @ManyToOne(fetch = FetchType.LAZY) + private FltPlanBas fltPlanBas; + + @OneToMany(mappedBy = "fltPlanArea", fetch = FetchType.LAZY) + private List fltPlanAreaCoordList; + } diff --git a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanAreaCoord.java b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanAreaCoord.java index 01ee0c6..9d604d8 100644 --- a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanAreaCoord.java +++ b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanAreaCoord.java @@ -1,10 +1,7 @@ package kr.co.palnet.kac.data.flt.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import org.hibernate.annotations.CreationTimestamp; import java.time.Instant; @@ -13,6 +10,7 @@ import java.time.Instant; @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"fltPlanArea"}) @Entity @Table(name = "FLT_PLAN_AREA_COORD") public class FltPlanAreaCoord { @@ -20,28 +18,35 @@ public class FltPlanAreaCoord { // 비행계획비행구역좌표일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "PLAN_AREA_COORD_SNO") - private Integer planAreaCoordSno; + @Column(name = "PLAN_AREA_COORD_SNO", columnDefinition = "int unsigned") + private Long planAreaCoordSno; // 비행계획비행구역일련번호 - @Column(name = "PLAN_AREA_SNO") - private Integer planAreaSno; + @Column(name = "PLAN_AREA_SNO", columnDefinition = "int unsigned", nullable = false) + private Long planAreaSno; // 위도 - @Column(name = "LON") - private double lon; + @Column(name = "LON", columnDefinition = "double(18,10)", nullable = false) + private Double lon; // 경도 - @Column(name = "LAT") - private double lat; + @Column(name = "LAT", columnDefinition = "double(18,10)", nullable = false) + private Double lat; // 생성사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 생성일시 @CreationTimestamp - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; + @JoinColumn( + name = "PLAN_AREA_SNO", insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_FLT_PLAN_AREA_COORD_FLT_PLAN_AREA") + ) + @ManyToOne(fetch = FetchType.LAZY) + private FltPlanArea fltPlanArea; + } diff --git a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanBas.java b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanBas.java index 26c6aa1..8a757ac 100644 --- a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanBas.java +++ b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanBas.java @@ -1,19 +1,16 @@ package kr.co.palnet.kac.data.flt.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; -import org.hibernate.annotations.CreationTimestamp; -import org.hibernate.annotations.UpdateTimestamp; +import lombok.*; import java.time.Instant; +import java.util.List; @Data @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"fltPlanAreaList", "fltPlanArcrftList", "fltPlanPilotList", "fltPlanCtrCntrlRelList"}) @Entity @Table(name = "FLT_PLAN_BAS") public class FltPlanBas { @@ -21,107 +18,112 @@ public class FltPlanBas { // 비행계획서일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "PLAN_SNO") - private Integer planSno; + @Column(name = "PLAN_SNO", columnDefinition = "int unsigned") + private Long planSno; // 그룹ID - @Column(name = "GROUP_ID") + @Column(name = "GROUP_ID", length = 50, nullable = false) private String groupId; // 고객일련번호 - @Column(name = "CSTMR_SNO") - private Integer cstmrSno; + @Column(name = "CSTMR_SNO", columnDefinition = "int unsigned") + private Long cstmrSno; // 서비스구분 - @Column(name = "SERVICE_TYPE") + @Column(name = "SERVICE_TYPE", length = 10) private String serviceType; // 회원이름 - @Column(name = "MEMBER_NAME") + @Column(name = "MEMBER_NAME", length = 30, nullable = false) private String memberName; // 이메일 - @Column(name = "EMAIL") + @Column(name = "EMAIL", length = 100) private String email; // 휴대폰번호 - @Column(name = "HPNO") + @Column(name = "HPNO", length = 100) private String hpno; // 국가전화번호 - @Column(name = "CLNCD") + @Column(name = "CLNCD", length = 6) private String clncd; // 주소 - @Column(name = "ADDR") + @Column(name = "ADDR", length = 100) private String addr; // 주소상세내용 - @Column(name = "ADDR_DTL_CN") + @Column(name = "ADDR_DTL_CN", length = 200) private String addrDtlCn; // 우편번호 - @Column(name = "zip") + @Column(name = "zip", length = 6) private String zip; // 예정비행시작시간 - @Column(name = "SCH_FLT_ST_DT") + @Column(name = "SCH_FLT_ST_DT", columnDefinition = "datetime(6)", nullable = false) private Instant schFltStDt; // 예정비행종료시간 - @Column(name = "SCH_FLT_END_DT") + @Column(name = "SCH_FLT_END_DT", columnDefinition = "datetime(6)", nullable = false) private Instant schFltEndDt; // 비행목적 -// @Convert(converter = FltPurposeConverter.class) - @Column(name = "FLT_PURPOSE") -// private FltPurpose fltPurpose; + @Column(name = "FLT_PURPOSE", length = 200, nullable = false) private String fltPurpose; - // 비행유형 -// @Convert(converter = FltTypeConverter.class) - @Column(name = "FLT_TYPE") -// private FltType fltType; + // 비행방식 + @Column(name = "FLT_TYPE", length = 20) private String fltType; // 사업자여부 - @Column(name = "CORP_REG_YN") + @Column(name = "CORP_REG_YN", columnDefinition = "char(1) default 'N'") private String corpRegYn; // 승인여부 - @Column(name = "APRVL_YN") + @Column(name = "APRVL_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String aprvlYn; // 승인일시 - @Column(name = "APRVL_DT") + @Column(name = "APRVL_DT", columnDefinition = "datetime") private Instant aprvlDt; // 삭제여부 - @Column(name = "DEL_YN") + @Column(name = "DEL_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String delYn; // 파일그룹번호 - @Column(name = "FILE_GROUP_NO") - private Integer fileGroupNo; + @Column(name = "FILE_GROUP_NO", columnDefinition = "int unsigned") + private Long fileGroupNo; // 생성사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 생성일시 - @CreationTimestamp - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; // 수정일시 - @UpdateTimestamp - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; + @OneToMany(mappedBy = "fltPlanBas", fetch = FetchType.LAZY) + private List fltPlanAreaList; + + @OneToMany(mappedBy = "fltPlanBas", fetch = FetchType.LAZY) + private List fltPlanArcrftList; + + @OneToMany(mappedBy = "fltPlanBas", fetch = FetchType.LAZY) + private List fltPlanPilotList; + + @OneToMany(mappedBy = "fltPlanBas", fetch = FetchType.LAZY) + private List fltPlanCtrCntrlRelList; } diff --git a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanCtrCntrlRel.java b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanCtrCntrlRel.java index 02c5a10..cd6c058 100644 --- a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanCtrCntrlRel.java +++ b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanCtrCntrlRel.java @@ -1,41 +1,56 @@ package kr.co.palnet.kac.data.flt.model; -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import jakarta.persistence.*; +import lombok.*; + +import java.io.Serializable; @Data @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"fltPlanBas"}) +@IdClass(FltPlanCtrCntrlRel.FltPlanCtrCntrlRelId.class) @Entity @Table(name = "FLT_PLAN_CTR_CNTRL_REL") public class FltPlanCtrCntrlRel { + @Data + @NoArgsConstructor + @AllArgsConstructor + @Builder + public static class FltPlanCtrCntrlRelId implements Serializable { + private String cntrlId; + private Integer planSno; + } + // 관제ID - @Column(name = "CNTRL_ID") @Id + @Column(name = "CNTRL_ID", length = 60) private String cntrlId; // 비행계획서일련번호 - @Column(name = "PLAN_SNO") + @Id + @Column(name = "PLAN_SNO", columnDefinition = "int unsigned") private Integer planSno; // 식별번호 - @Column(name = "IDNTF_NUM") + @Column(name = "IDNTF_NUM", length = 30, nullable = false) private String idntfNum; // 그룹ID - @Column(name = "GROUP_ID") + @Column(name = "GROUP_ID", length = 50) private String groupId; // 기체소유자일련번호 - @Column(name = "IDNTF_CSTMR_SNO") - private Integer idntfCstmrSno; + @Column(name = "IDNTF_CSTMR_SNO", columnDefinition = "int unsigned") + private Long idntfCstmrSno; + + @JoinColumn( + name = "PLAN_SNO" , insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_FLT_PLAN_CTR_CNTRL_REL_FLT_PLAN_BAS") + ) + @ManyToOne(fetch = FetchType.LAZY) + private FltPlanBas fltPlanBas; } diff --git a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanPilot.java b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanPilot.java index 8abc698..ae6aeec 100644 --- a/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanPilot.java +++ b/data/flt/src/main/java/kr/co/palnet/kac/data/flt/model/FltPlanPilot.java @@ -1,10 +1,7 @@ package kr.co.palnet.kac.data.flt.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import org.hibernate.annotations.CreationTimestamp; import org.hibernate.annotations.UpdateTimestamp; @@ -14,6 +11,7 @@ import java.time.Instant; @NoArgsConstructor @AllArgsConstructor @Builder +@ToString(exclude = {"fltPlanBas"}) @Table(name = "FLT_PLAN_PILOT") @Entity public class FltPlanPilot { @@ -21,73 +19,80 @@ public class FltPlanPilot { // 비행계획조종사일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "PLAN_PILOT_SNO") - private Integer planPilotSno; + @Column(name = "PLAN_PILOT_SNO", columnDefinition = "int unsigned") + private Long planPilotSno; // 비행계획서일련번호 - @Column(name = "PLAN_SNO") - private Integer planSno; + @Column(name = "PLAN_SNO", columnDefinition = "int unsigned", nullable = false) + private Long planSno; // 고객일련번호 - @Column(name = "CSTMR_SNO") - private Integer cstmrSno; + @Column(name = "CSTMR_SNO", columnDefinition = "int unsigned") + private Long cstmrSno; // 그룹명 - @Column(name = "GROUP_NM") + @Column(name = "GROUP_NM", length = 50, nullable = false) private String groupNm; // 회원이름 - @Column(name = "MEMBER_NAME") + @Column(name = "MEMBER_NAME", length = 30, nullable = false) private String memberName; // 이메일 - @Column(name = "EMAIL") + @Column(name = "EMAIL", length = 100) private String email; // 휴대폰번호 - @Column(name = "HPNO") + @Column(name = "HPNO", length = 20) private String hpno; // 국가전화번호 - @Column(name = "CLNCD") + @Column(name = "CLNCD", length = 6) private String clncd; // 주소 - @Column(name = "ADDR") + @Column(name = "ADDR", length = 100) private String addr; // 주소상세내용 - @Column(name = "ADDR_DTL_CN") + @Column(name = "ADDR_DTL_CN", length = 200) private String addrDtlCn; // 우편번호 - @Column(name = "zip") + @Column(name = "zip", length = 10) private String zip; // 자격번호 - @Column(name = "QLFC_NO") + @Column(name = "QLFC_NO", length = 200) private String qlfcNo; // 경력 - @Column(name = "CARRER") + @Column(name = "CARRER", length = 200) private String carrer; // 생성사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 생성일시 @CreationTimestamp - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; // 수정일시 @UpdateTimestamp - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; + @JoinColumn( + name = "PLAN_SNO", insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_FLT_PLAN_PILOT_FLT_PLAN_BAS_PLAN_SNO") + ) + @ManyToOne(fetch = FetchType.LAZY) + private FltPlanBas fltPlanBas; + } diff --git a/data/other/src/main/java/kr/co/palnet/kac/data/other/model/SuredataEntity.java b/data/other/src/main/java/kr/co/palnet/kac/data/other/model/SuredataEntity.java index 9b8a70f..e889aef 100644 --- a/data/other/src/main/java/kr/co/palnet/kac/data/other/model/SuredataEntity.java +++ b/data/other/src/main/java/kr/co/palnet/kac/data/other/model/SuredataEntity.java @@ -1,8 +1,10 @@ - package kr.co.palnet.kac.data.other.model; import jakarta.persistence.*; -import lombok.*; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; @Data @AllArgsConstructor @@ -11,46 +13,173 @@ import lombok.*; @Entity @Table(name = "SUREData") public class SuredataEntity { - + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "SEQNO") - private Integer seqno; - - @Column(name = "USERCODE") - private String usercode; - - @Column(name = "INTIME") + private Long seqno; + + @Column(name = "INTIME", columnDefinition = "char(14)", nullable = false) private String intime; // date_format(now(), '%y%m%d%H%i%s') - @Column(name = "DEPTCODE") + @Column(name = "USERCODE", columnDefinition = "char(30)", nullable = false) + private String usercode; + + @Column(name = "DEPTCODE", columnDefinition = "char(30)") private String deptcode; - - @Column(name = "reqname") + + @Column(name = "BIZTYPE", length = 2) + private String biztype; + + @Column(name = "YELLOWID_KEY", length = 40) + private String yellowidKey; + + @Column(name = "REQNAME", length = 32) private String reqname; - - @Column(name = "REQPHONE") + + @Column(name = "REQPHONE", length = 20, nullable = false) private String reqphone; - - @Column(name = "CALLNAME") + + @Column(name = "CALLNAME", length = 32) private String callname; - - @Column(name = "CALLPHONE") + + @Column(name = "COUNTRY", length = 10) + private String country; + + @Column(name = "CALLPHONE", length = 20, nullable = false) private String callphone; - - @Column(name = "SUBJECT") + + @Column(name = "SUBJECT", length = 120) private String subject; - - @Column(name = "MSG") + + @Lob + @Column(name = "MSG", columnDefinition = "text", nullable = false) private String msg; - - @Column(name = "REQTIME") + + @Column(name = "REQTIME", columnDefinition = "char(14) default '0'", nullable = false) private String reqtime; - - @Column(name = "RESULT") + + @Column(name = "SENTTIME", columnDefinition = "char(14)") + private String senttime; + + @Column(name = "RECVTIME", columnDefinition = "char(14)") + private String recvtime; + + @Column(name = "RESULT", columnDefinition = "char(1) default '0'", nullable = false) private String result; - - @Column(name = "KIND") + + @Column(name = "ERRCODE", columnDefinition = "int") + private Integer errcode; + + @Column(name = "KIND", columnDefinition = "char(1)", nullable = false) private String kind; - + + @Column(name = "FKCONTENT", columnDefinition = "int") + private Integer fkcontent; + + @Column(name = "IMAGE_URL", length = 1000) + private String imageUrl; + + @Column(name = "BATCHFLAG", columnDefinition = "int default 0", nullable = false) + private Integer batchflag; + + @Column(name = "RETRY", columnDefinition = "int default 0") + private Integer retry; + + @Column(name = "RESEND", length = 1) + private String resend; + + @Column(name = "TEMPLATECODE", columnDefinition = "char(40)") + private String templatecode; + + @Column(name = "RETEXT", length = 2000) + private String retext; + + @Column(name = "RESENTFLAG", length = 1) + private String resentflag; + + @Column(name = "SENTMEDIA", length = 1) + private String sentmedia; + + @Column(name = "MEDIATYPE", columnDefinition = "char(1)") + private String mediatype; + + @Column(name = "BTN_TYPE_01", length = 2) + private String btnType01; + + @Column(name = "BTN_NM_01", length = 56) + private String btnNm01; + + @Column(name = "BTN_01_URL_01", length = 1000) + private String btn01Url01; + + @Column(name = "BTN_01_URL_02", length = 1000) + private String btn01Url02; + + @Column(name = "BTN_TYPE_02", length = 2) + private String btnType02; + + @Column(name = "BTN_NM_02", length = 56) + private String btnNm02; + + @Column(name = "BTN_02_URL_01", length = 1000) + private String btn02Url01; + + @Column(name = "BTN_02_URL_02", length = 1000) + private String btn02Url02; + + @Column(name = "BTN_TYPE_03", length = 2) + private String btnType03; + + @Column(name = "BTN_NM_03", length = 56) + private String btnNm03; + + @Column(name = "BTN_03_URL_01", length = 1000) + private String btn03Url01; + + @Column(name = "BTN_03_URL_02", length = 1000) + private String btn03Url02; + + @Column(name = "BTN_TYPE_04", length = 2) + private String btnType04; + + @Column(name = "BTN_NM_04", length = 56) + private String btnNm04; + + @Column(name = "BTN_04_URL_01", length = 1000) + private String btn04Url01; + + @Column(name = "BTN_04_URL_02", length = 100) + private String btn04Url02; + + @Column(name = "BTN_TYPE_05", length = 2) + private String btnType05; + + @Column(name = "BTN_NM_05", length = 56) + private String btnNm05; + + @Column(name = "BTN_05_URL_01", length = 1000) + private String btn05Url01; + + @Column(name = "BTN_05_URL_02", length = 1000) + private String btn05Url02; + + @Column(name = "KAKAOERRCODE", columnDefinition = "char(10)") + private String kakaoerrcode; + + @Column(name = "ETC1", columnDefinition = "char(10)") + private String etc1; + + @Column(name = "ETC2", columnDefinition = "char(10)") + private String etc2; + + @Column(name = "ETC3", columnDefinition = "char(10)") + private String etc3; + + @Column(name = "ETC4", columnDefinition = "char(10)") + private String etc4; + + @Column(name = "ETC5", columnDefinition = "char(10)") + private String etc5; + } \ No newline at end of file diff --git a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCrtfyhpBas.java b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCrtfyhpBas.java index c00fe4d..ff08227 100644 --- a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCrtfyhpBas.java +++ b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCrtfyhpBas.java @@ -20,24 +20,24 @@ public class PtyCrtfyhpBas { // 인증일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "CRTFYHP_SNO") - private int crtfyhpSno; + @Column(name = "CRTFYHP_SNO", columnDefinition = "int unsigned") + private Long crtfyhpSno; // 휴대폰번호 - @Column(name = "HPNO") + @Column(name = "HPNO", length = 20, nullable = false) private String hpno; // 인증번호 - @Column(name = "CRTFYHP_NO") + @Column(name = "CRTFYHP_NO", length = 10, nullable = false) private String crtfyhpNo; // 인증여부 - @Column(name = "CRTFYHP_YN") + @Column(name = "CRTFYHP_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String crtfyhpYn; // 등록일자 @CreationTimestamp - @Column(name = "CREATE_DT") + @Column(name = "CREATE_DT",columnDefinition = "datetime(6)", nullable = false) private Instant createDt; } \ No newline at end of file diff --git a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrBas.java b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrBas.java index 52f57b3..67670cc 100644 --- a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrBas.java +++ b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrBas.java @@ -1,12 +1,10 @@ package kr.co.palnet.kac.data.pty.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import java.time.Instant; +import java.util.List; @Data @@ -20,55 +18,55 @@ public class PtyCstmrBas { // 고객일련번호 @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "CSTMR_SNO") + @Column(name = "CSTMR_SNO", columnDefinition = "int unsigned") private Long cstmrSno; // 권한ID - @Column(name = "AUTH_ID") + @Column(name = "AUTH_ID", length = 30, nullable = false) private String authId; // 고객구분코드 - @Column(name = "CSTMR_DIV_CD") + @Column(name = "CSTMR_DIV_CD", length = 20, nullable = false) private String cstmrDivCd; // 고객상태코드 - @Column(name = "CSTMR_STATUS_CD") + @Column(name = "CSTMR_STATUS_CD", length = 20, nullable = false) private String cstmrStatusCd; // 고객상태변경일시 - @Column(name = "CSTMR_STATUS_CNG_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CSTMR_STATUS_CNG_DT", columnDefinition = "datetime") private Instant cstmrStatusCngDt; // 관할기관코드 - @Column(name = "CPT_AUTH_CODE") + @Column(name = "CPT_AUTH_CODE", length = 10) private String cptAuthCode; // 사용자ID - @Column(name = "USER_ID") + @Column(name = "USER_ID", length = 30, nullable = false) private String userId; // 가입일시 - @Column(name = "JOIN_DT", columnDefinition = "TIMESTAMP") + @Column(name = "JOIN_DT", columnDefinition = "datetime(6)", nullable = false) private Instant joinDt; // 가입IP주소 - @Column(name = "JOIN_IP") + @Column(name = "JOIN_IP", length = 39, nullable = false) private String joinIp; // 사이트코드 - @Column(name = "SITE_CODE") + @Column(name = "SITE_CODE", length = 20) private String siteCode; // 회원구분코드 - @Column(name = "MEMBER_DIV_CD") + @Column(name = "MEMBER_DIV_CD",length = 20) private String memberDivCd; // 사용자비밀번호 - @Column(name = "USER_PSWD") + @Column(name = "USER_PSWD", length = 100) private String userPswd; // 비밀번호수정일시 - @Column(name = "PSWD_UPDT_DT", columnDefinition = "TIMESTAMP") + @Column(name = "PSWD_UPDT_DT", columnDefinition = "datetime") private Instant pswdUpdtDt; // 재활용토큰 @@ -76,10 +74,23 @@ public class PtyCstmrBas { private String rfrshToken; // 터미널ID - @Column(name = "TRMNL_ID") + @Column(name = "TRMNL_ID", length = 20) private String trmnlId; - @OneToOne(mappedBy = "ptyCstmrBas", fetch = FetchType.LAZY, cascade = CascadeType.REMOVE) + @ToString.Exclude + @OneToOne(mappedBy = "ptyCstmrBas", cascade = CascadeType.REMOVE) private PtyCstmrDtl ptyCstmrDtl; + @ToString.Exclude + @OneToMany(mappedBy = "ptyCstmrBas", fetch = FetchType.LAZY) + private List ptyCstmrConectHistList; + + @ToString.Exclude + @OneToMany(mappedBy = "ptyCstmrBas", fetch = FetchType.LAZY) + private List ptySnsLoginRelList; + + @ToString.Exclude + @OneToMany(mappedBy = "ptyCstmrBas", fetch = FetchType.LAZY) + private List ptyCstmrGroupList; + } \ No newline at end of file diff --git a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrConectHist.java b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrConectHist.java index 46066d1..aa5785e 100644 --- a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrConectHist.java +++ b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrConectHist.java @@ -1,13 +1,7 @@ package kr.co.palnet.kac.data.pty.model; -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import jakarta.persistence.*; +import lombok.*; import java.time.Instant; @@ -21,27 +15,35 @@ public class PtyCstmrConectHist { // 고객접속이력일련번호 @Id - @Column(name = "CSTMR_CONECT_HIST_SNO") - private int cstmrConectHistSno; + @Column(name = "CSTMR_CONECT_HIST_SNO", columnDefinition = "int unsigned") + private Long cstmrConectHistSno; // 고객일련번호 - @Column(name = "CSTMR_SNO") - private int cstmrSno; + @Column(name = "CSTMR_SNO", columnDefinition = "int unsigned", nullable = false) + private Long cstmrSno; // 접속성공여부 - @Column(name = "CONECT_SUCES_YN") + @Column(name = "CONECT_SUCES_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String conectSucesYn; // 접속오류코드 - @Column(name = "CONECT_ERROR_CD") + @Column(name = "CONECT_ERROR_CD", length = 20, nullable = false) private String conectErrorCd; // 접속일시 - @Column(name = "CONECT_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CONECT_DT", columnDefinition = "datetime(6)", nullable = false) private Instant conectDt; // 접속IP주소 - @Column(name = "CONECT_IP") + @Column(name = "CONECT_IP", length = 39, nullable = false) private String conectIp; + @ToString.Exclude + @JoinColumn( + name = "CSTMR_SNO", insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_PTY_CSTMR_CONECT_HIST_PTY_CSTMR_BAS") + ) + @ManyToOne(fetch = FetchType.LAZY) + private PtyCstmrBas ptyCstmrBas; + } \ No newline at end of file diff --git a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrDtl.java b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrDtl.java index 01ddd7d..a3e980a 100644 --- a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrDtl.java +++ b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrDtl.java @@ -1,12 +1,10 @@ package kr.co.palnet.kac.data.pty.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import java.time.Instant; +import java.time.LocalDate; @Data @@ -19,69 +17,70 @@ public class PtyCstmrDtl { // 고객일련번호 @Id - @Column(name = "CSTMR_SNO") + @Column(name = "CSTMR_SNO", columnDefinition = "int unsigned") private Long cstmrSno; // 아이핀DI - @Column(name = "IPIN_DI") + @Column(name = "IPIN_DI", length = 64) private String ipinDi; // 아이핀CI - @Column(name = "IPIN_CI") + @Column(name = "IPIN_CI", length = 88) private String ipinCi; // 가입인증수단코드 - @Column(name = "JOIN_CRTFY_CD") + @Column(name = "JOIN_CRTFY_CD", length = 20) private String joinCrtfyCd; // 국가코드 - @Column(name = "CNTRY_CD") + @Column(name = "CNTRY_CD", length = 3) private String cntryCd; // 성별코드 - @Column(name = "GENDER_CD") + @Column(name = "GENDER_CD", length = 20) private String genderCd; // 회원이름 - @Column(name = "MEMBER_NAME") + @Column(name = "MEMBER_NAME", length = 30, nullable = false) private String memberName; // 생일일자 - @Column(name = "BRTHDY_DATE", columnDefinition = "TIMESTAMP") - private Instant brthdyDate; + @Column(name = "BRTHDY_DATE", columnDefinition = "date") + private LocalDate brthdyDate; // 이메일 - @Column(name = "EMAIL") + @Column(name = "EMAIL", length = 100) private String email; // 휴대폰번호 - @Column(name = "HPNO") + @Column(name = "HPNO", length = 100) private String hpno; // 국가전화번호 - @Column(name = "CLNCD") + @Column(name = "CLNCD", length = 6) private String clncd; // 주소 - @Column(name = "ADDR") + @Column(name = "ADDR", length = 100) private String addr; // 주소상세내용 - @Column(name = "ADDR_DTL_CN") + @Column(name = "ADDR_DTL_CN", length = 200) private String addrDtlCn; // 우편번호 - @Column(name = "ZIP") + @Column(name = "ZIP", length = 6) private String zip; // 수정일시 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; + @ToString.Exclude @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "CSTMR_SNO", insertable = false, updatable = false) private PtyCstmrBas ptyCstmrBas; diff --git a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrGroup.java b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrGroup.java index efbb6b5..15fb7fc 100644 --- a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrGroup.java +++ b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyCstmrGroup.java @@ -1,13 +1,7 @@ package kr.co.palnet.kac.data.pty.model; -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import jakarta.persistence.*; +import lombok.*; import java.time.Instant; @@ -22,48 +16,63 @@ public class PtyCstmrGroup { // 고객그룹일련번호 @Id - @Column(name = "CSTMR_GROUP_SNO") - private int cstmrGroupSno; + @Column(name = "CSTMR_GROUP_SNO", columnDefinition = "int unsigned") + private Long cstmrGroupSno; // 고객일련번호 - @Column(name = "CSTMR_SNO") - private int cstmrSno; + @Column(name = "CSTMR_SNO", columnDefinition = "int unsigned", nullable = false) + private Long cstmrSno; // 그룹ID - @Column(name = "GROUP_ID") + @Column(name = "GROUP_ID", length = 50, nullable = false) private String groupId; // 그룹참여권한코드 - @Column(name = "GROUP_AUTH_CD") + @Column(name = "GROUP_AUTH_CD", length = 20, nullable = false) private String groupAuthCd; // 승인여부 - @Column(name = "APRVL_YN") + @Column(name = "APRVL_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String aprvlYn; // 승인사용자 - @Column(name = "APRVL_USER_ID") + @Column(name = "APRVL_USER_ID", length = 30) private String aprvlUserId; // 승인일자 - @Column(name = "APRVL_DT", columnDefinition = "TIMESTAMP") + @Column(name = "APRVL_DT", columnDefinition = "datetime(6)") private Instant aprvlDt; // 참여여부 - @Column(name = "JOIN_YN") + @Column(name = "JOIN_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String joinYn; // 참여일시 - @Column(name = "JOIN_DT", columnDefinition = "TIMESTAMP") + @Column(name = "JOIN_DT", columnDefinition = "datetime(6)", nullable = false) private Instant joinDt; // 탈퇴일시 - @Column(name = "WTHDRW_DT", columnDefinition = "TIMESTAMP") + @Column(name = "WTHDRW_DT", columnDefinition = "datetime(6)") private Instant wthdrwDt; // 터미널ID - @Column(name = "TRMNL_ID") + @Column(name = "TRMNL_ID", length = 20) private String trmnlId; + @ToString.Exclude + @JoinColumn( + name = "CSTMR_SNO", insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_PTY_CSTMR_GROUP_PTY_CSTMR_BAS_CSTMR_SNO") + ) + @ManyToOne(fetch = FetchType.LAZY) + private PtyCstmrBas ptyCstmrBas; + + @ToString.Exclude + @JoinColumn( + name = "GROUP_ID", insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_PTY_CSTMR_GROUP_PTY_GROUP_BAS_GROUP_ID") + ) + @ManyToOne(fetch = FetchType.LAZY) + private PtyGroupBas ptyGroupBas; } \ No newline at end of file diff --git a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyGroupBas.java b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyGroupBas.java index 2c4ffe0..5c28c1c 100644 --- a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyGroupBas.java +++ b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyGroupBas.java @@ -1,12 +1,11 @@ package kr.co.palnet.kac.data.pty.model; -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; +import jakarta.persistence.*; import lombok.Data; +import lombok.ToString; import java.time.Instant; +import java.util.List; @Data @@ -16,32 +15,35 @@ public class PtyGroupBas { // 그룹ID @Id - @Column(name = "GROUP_ID") + @Column(name = "GROUP_ID", length = 50) private String groupId; // 그룹명 - @Column(name = "GROUP_NM") + @Column(name = "GROUP_NM", length = 50, nullable = false) private String groupNm; // 그룹구분코드 - @Column(name = "GROUP_TYPE_CD") + @Column(name = "GROUP_TYPE_CD", length = 20, nullable = false) private String groupTypeCd; // 터미널ID - @Column(name = "TRMNL_ID") + @Column(name = "TRMNL_ID", length = 20) private String trmnlId; // 사용여부 - @Column(name = "USE_YN") + @Column(name = "USE_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String useYn; // 등록일시 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정일시 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; + @ToString.Exclude + @OneToMany(mappedBy = "ptyGroupBas", fetch = FetchType.LAZY) + private List ptyCstmrGroupList; } \ No newline at end of file diff --git a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtySnsLoginRel.java b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtySnsLoginRel.java index 2d593c3..2f2b4e0 100644 --- a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtySnsLoginRel.java +++ b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtySnsLoginRel.java @@ -1,13 +1,7 @@ package kr.co.palnet.kac.data.pty.model; -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import jakarta.persistence.*; +import lombok.*; import java.time.Instant; @@ -22,35 +16,43 @@ public class PtySnsLoginRel { // SNS로그인일련번호 @Id - @Column(name = "SNS_LOGIN_SNO") - private int snsLoginSno; + @Column(name = "SNS_LOGIN_SNO", columnDefinition = "int unsigned") + private Long snsLoginSno; // 고객일련번호 - @Column(name = "CSTMR_SNO") - private int cstmrSno; + @Column(name = "CSTMR_SNO", columnDefinition = "int unsigned", nullable = false) + private Long cstmrSno; // SNS식별자ID - @Column(name = "SNS_IDNTFR_ID") + @Column(name = "SNS_IDNTFR_ID", nullable = false) private String snsIdntfrId; // SNS코드 - @Column(name = "SNS_CD") + @Column(name = "SNS_CD", length = 20 ,nullable = false) private String snsCd; // 연결여부 - @Column(name = "LINK_YN") + @Column(name = "LINK_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String linkYn; // 연결일시 - @Column(name = "LINK_DT", columnDefinition = "TIMESTAMP") + @Column(name = "LINK_DT", columnDefinition = "datetime") private Instant linkDt; // 탈퇴일시 - @Column(name = "WTHDR_DT", columnDefinition = "TIMESTAMP") + @Column(name = "WTHDR_DT", columnDefinition = "datetime") private Instant wthdrDt; // 연결IP주소 - @Column(name = "LINK_IP") + @Column(name = "LINK_IP", length = 39) private String linkIp; + @ToString.Exclude + @JoinColumn( + name = "CSTM_SNO", insertable = false, updatable = false, + foreignKey = @ForeignKey(name = "FK_PTY_SNS_LOGIN_REL_PTY_CSTMR_BAS") + ) + @ManyToOne(fetch = FetchType.LAZY) + private PtyCstmrBas ptyCstmrBas; + } \ No newline at end of file diff --git a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsAgreeTxn.java b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsAgreeTxn.java index 629e144..952ba67 100644 --- a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsAgreeTxn.java +++ b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsAgreeTxn.java @@ -1,10 +1,7 @@ package kr.co.palnet.kac.data.pty.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import java.time.Instant; @@ -19,36 +16,44 @@ public class PtyTermsAgreeTxn { // 동의일련번호 @Id - @Column(name = "AGREE_SNO") @GeneratedValue(strategy = GenerationType.IDENTITY) - private int agreeSno; + @Column(name = "AGREE_SNO", columnDefinition = "int unsigned") + private Long agreeSno; // 약관일련번호 - @Column(name = "TERMS_SNO") - private int termsSno; + @Column(name = "TERMS_SNO", columnDefinition = "int unsigned", nullable = false) + private Long termsSno; // 고객일련번호 - @Column(name = "CSTMR_SNO") - private int cstmrSno; + @Column(name = "CSTMR_SNO", columnDefinition = "int unsigned", nullable = false) + private Long cstmrSno; // 동의여부 - @Column(name = "AGREE_YN") + @Column(name = "AGREE_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String agreeYn; // 동의일시 - @Column(name = "AGREE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "AGREE_DT", columnDefinition = "datetime") private Instant agreeDt; // 처리IP주소 - @Column(name = "PROC_IP") + @Column(name = "PROC_IP", length = 39) private String procIp; // 수정일시 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; + @ToString.Exclude + @JoinColumn( + name = "TERMS_SNO", updatable = false, insertable = false, + foreignKey = @ForeignKey(name = "FK_PTY_TERMS_AGREE_TXN_PTY_TERMS_BAS") + ) + @ManyToOne(fetch = FetchType.LAZY) + private PtyTermsBas ptyTermsBas; + } \ No newline at end of file diff --git a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsBas.java b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsBas.java index a48679a..e84ad3e 100644 --- a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsBas.java +++ b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsBas.java @@ -1,15 +1,11 @@ package kr.co.palnet.kac.data.pty.model; -import jakarta.persistence.Column; -import jakarta.persistence.Entity; -import jakarta.persistence.Id; -import jakarta.persistence.Table; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import jakarta.persistence.*; +import lombok.*; import java.time.Instant; +import java.time.LocalDate; +import java.util.List; @Data @@ -22,39 +18,48 @@ public class PtyTermsBas { // 약관일련번호 @Id - @Column(name = "TERMS_SNO") - private int termsSno; + @Column(name = "TERMS_SNO", columnDefinition = "int unsigned") + private Long termsSno; // 최종내역여부 - @Column(name = "LAST_TXN_YN") + @Column(name = "LAST_TXN_YN", columnDefinition = "char(1) default 'N'", nullable = false) private String lastTxnYn; // 사이트코드 - @Column(name = "SITE_CD") + @Column(name = "SITE_CD", length = 20) private String siteCd; // 제정일자 - @Column(name = "ESTBSH_DATE", columnDefinition = "TIMESTAMP") - private Instant estbshDate; + @Column(name = "ESTBSH_DATE", columnDefinition = "date", nullable = false) + private LocalDate estbshDate; // 약관카테고리코드 - @Column(name = "TERMS_CTGRY_CD") + @Column(name = "TERMS_CTGRY_CD", length = 20, nullable = false) private String termsCtgryCd; // 생성사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 생성일시 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false, nullable = false) private Instant createDt; // 수정사용자ID - @Column(name = "UPDATE_USER_ID") + @Column(name = "UPDATE_USER_ID", length = 30, nullable = false) private String updateUserId; // 수정일시 - @Column(name = "UPDATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "UPDATE_DT", columnDefinition = "datetime", nullable = false) private Instant updateDt; + @ToString.Exclude + @OneToMany(mappedBy = "ptyTermsBas", fetch = FetchType.LAZY) + private List ptyTermsDtlList; + + @ToString.Exclude + @OneToMany(mappedBy = "ptyTermsBas", fetch = FetchType.LAZY) + private List ptyTermsAgreeTxnList; + + } \ No newline at end of file diff --git a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsDtl.java b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsDtl.java index 8bb21ba..9c72a89 100644 --- a/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsDtl.java +++ b/data/pty/src/main/java/kr/co/palnet/kac/data/pty/model/PtyTermsDtl.java @@ -1,10 +1,7 @@ package kr.co.palnet.kac.data.pty.model; import jakarta.persistence.*; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; +import lombok.*; import java.io.Serializable; import java.time.Instant; @@ -25,7 +22,7 @@ public class PtyTermsDtl { @Builder public static class PtyTermsDtlId implements Serializable { // 약관일련번호 - private int termsSno; + private Long termsSno; // 언어구분코드 private String langDivCd; @@ -33,40 +30,47 @@ public class PtyTermsDtl { // 약관일련번호 @Id - @Column(name = "TERMS_SNO") - private int termsSno; + @Column(name = "TERMS_SNO", columnDefinition = "int unsigned") + private Long termsSno; // 언어구분코드 @Id - @Column(name = "LANG_DIV_CD") + @Column(name = "LANG_DIV_CD", length = 5) private String langDivCd; // 약관제목명 - @Column(name = "TERMS_TITLE_NM") + @Column(name = "TERMS_TITLE_NM", length = 100, nullable = false) private String termsTitleNm; // 약관내용 @Lob - @Column(name = "TERMS_CN") + @Column(name = "TERMS_CN", columnDefinition = "mediumtext") private String termsCn; // 간략내용 @Lob - @Column(name = "SIMPLE_CN") + @Column(name = "SIMPLE_CN", columnDefinition = "mediumtext") private String simpleCn; // 비고 @Lob - @Column(name = "RM") + @Column(name = "RM", columnDefinition = "text") private String rm; // 생성사용자ID - @Column(name = "CREATE_USER_ID") + @Column(name = "CREATE_USER_ID", length = 30, updatable = false, nullable = false) private String createUserId; // 생성일시 - @Column(name = "CREATE_DT", columnDefinition = "TIMESTAMP") + @Column(name = "CREATE_DT", columnDefinition = "datetime", updatable = false) private Instant createDt; + @ToString.Exclude + @JoinColumn( + name = "TERMS_SNO", updatable = false, insertable = false, + foreignKey = @ForeignKey(name = "FK_PTY_TERMS_DTL_PTY_TERMS_BAS_TERMS_SNO") + ) + @ManyToOne(fetch = FetchType.LAZY) + private PtyTermsBas ptyTermsBas; } \ No newline at end of file