From 643e15c37617575b2b58aaab7b961c591671d090 Mon Sep 17 00:00:00 2001 From: jaewohong Date: Tue, 25 Nov 2025 16:15:28 +0900 Subject: [PATCH 1/8] =?UTF-8?q?adapter=EA=B0=9D=EC=B2=B4=20=EB=AA=BB?= =?UTF-8?q?=EC=B0=BE=EC=98=A4=EB=8A=94=20=EB=B6=80=EB=B6=84=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../stdmessage/loader/StandardMessageInfoLoader.java | 8 ++++++++ .../loader/StandardMessageInfoLoaderRepository.java | 4 ++++ .../data/entity/onl/stdmessage/StandardMessageInfo.java | 5 +++++ 3 files changed, 17 insertions(+) diff --git a/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoader.java b/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoader.java index e366636..e1ab97f 100644 --- a/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoader.java +++ b/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoader.java @@ -6,9 +6,17 @@ import org.springframework.transaction.annotation.Transactional; import com.eactive.eai.data.entity.onl.stdmessage.StandardMessageInfo; import com.eactive.eai.data.jpa.AbstractDataLoader; +import java.util.Optional; + @Service @Transactional public class StandardMessageInfoLoader extends AbstractDataLoader { + + // jwhong 추가 + //Optional findByApiFullPath(String apiFullPath); + public Optional findByApiFullPath(String apiFullPath) { + return repository.findByApiFullPath(apiFullPath); + } } diff --git a/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoaderRepository.java b/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoaderRepository.java index fe9a85b..51016e9 100644 --- a/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoaderRepository.java +++ b/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoaderRepository.java @@ -4,6 +4,10 @@ import com.eactive.eai.data.DataLoaderRepository; import com.eactive.eai.data.entity.onl.stdmessage.StandardMessageInfo; import com.eactive.eai.data.jpa.BaseRepository; +import java.util.Optional; + interface StandardMessageInfoLoaderRepository extends DataLoaderRepository, BaseRepository { + // jwhong 추가 + Optional findByApiFullPath(String apiFullPath); } \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java b/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java index 741da56..7c2604a 100644 --- a/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java +++ b/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java @@ -59,6 +59,11 @@ public class StandardMessageInfo extends AbstractEntity implements Seria @Column(length = 1) @Comment("수정상태구분코드") private String modfimgtstusdstcd; + + // jwhong 추가 + @Column(length = 50,unique = true) + @Comment("인터페이스URL Full Path") + private String apiFullPath; @Column(length = 17) @Comment("최종수정시간") From b03feed9e4ed5920d9f44b1fb3e064d0c29f7626 Mon Sep 17 00:00:00 2001 From: jaewohong Date: Thu, 4 Dec 2025 10:49:02 +0900 Subject: [PATCH 2/8] =?UTF-8?q?apiFullPath=20column=20=EA=B8=B8=EC=9D=B4?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../eai/data/entity/onl/stdmessage/StandardMessageInfo.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java b/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java index 7c2604a..ae2ebf8 100644 --- a/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java +++ b/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java @@ -61,7 +61,7 @@ public class StandardMessageInfo extends AbstractEntity implements Seria private String modfimgtstusdstcd; // jwhong 추가 - @Column(length = 50,unique = true) + @Column(length = 100,unique = true) @Comment("인터페이스URL Full Path") private String apiFullPath; From 5c0e7efbfbe23382bf50e95558e7342dd6eeb2a5 Mon Sep 17 00:00:00 2001 From: "Yunsam.Eo" Date: Fri, 5 Dec 2025 09:23:29 +0900 Subject: [PATCH 3/8] =?UTF-8?q?Http=20Adapter=20Extra=20Log=20-=20Header?= =?UTF-8?q?=EC=B2=98=EB=A6=AC=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../onl/logger/HttpAdapterExtraHeader.java | 92 +++++++++---------- .../onl/logger/HttpAdapterExtraHeaderId.java | 64 ++++++------- .../onl/logger/HttpAdapterExtraLog.java | 33 +++---- .../onl/logger/HttpAdapterExtraLogId.java | 6 +- 4 files changed, 95 insertions(+), 100 deletions(-) diff --git a/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraHeader.java b/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraHeader.java index 5406bed..617f148 100644 --- a/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraHeader.java +++ b/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraHeader.java @@ -1,46 +1,46 @@ -package com.eactive.eai.data.entity.onl.logger; - -import javax.persistence.Column; -import javax.persistence.ConstraintMode; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.ForeignKey; -import javax.persistence.Index; -import javax.persistence.JoinColumn; -import javax.persistence.JoinColumns; -import javax.persistence.ManyToOne; -import javax.persistence.Table; - -import org.hibernate.annotations.Comment; - -import com.eactive.eai.data.entity.AbstractEntity; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; - -@Data -@EqualsAndHashCode(onlyExplicitlyIncluded = true, callSuper = true) - -@Entity -@Table(name = "http_adapter_extra_header", indexes = { - @Index(name = "idx_guid_service_number", columnList = "weekday, guid, service_process_number") }) -public class HttpAdapterExtraHeader extends AbstractEntity { - - private static final long serialVersionUID = 1L; - - @EmbeddedId - private HttpAdapterExtraHeaderId id; - - @Column(name = "value", nullable = false, length = 500) - @Comment("헤더 값") - private String value; - - @ManyToOne - @JoinColumns({ - @JoinColumn(name = "weekday", referencedColumnName = "weekday", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)), - @JoinColumn(name = "guid", referencedColumnName = "guid", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)), - @JoinColumn(name = "service_process_number", referencedColumnName = "service_process_number", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)) }) - @ToString.Exclude - private HttpAdapterExtraLog log; -} +//package com.eactive.eai.data.entity.onl.logger; +// +//import javax.persistence.Column; +//import javax.persistence.ConstraintMode; +//import javax.persistence.EmbeddedId; +//import javax.persistence.Entity; +//import javax.persistence.ForeignKey; +//import javax.persistence.Index; +//import javax.persistence.JoinColumn; +//import javax.persistence.JoinColumns; +//import javax.persistence.ManyToOne; +//import javax.persistence.Table; +// +//import org.hibernate.annotations.Comment; +// +//import com.eactive.eai.data.entity.AbstractEntity; +// +//import lombok.Data; +//import lombok.EqualsAndHashCode; +//import lombok.ToString; +// +//@Data +//@EqualsAndHashCode(onlyExplicitlyIncluded = true, callSuper = true) +// +//@Entity +//@Table(name = "http_adapter_extra_header", indexes = { +// @Index(name = "idx_guid_service_number", columnList = "weekday, guid, service_process_number") }) +//public class HttpAdapterExtraHeader extends AbstractEntity { +// +// private static final long serialVersionUID = 1L; +// +// @EmbeddedId +// private HttpAdapterExtraHeaderId id; +// +// @Column(name = "value", nullable = false, length = 500) +// @Comment("헤더 값") +// private String value; +// +// @ManyToOne +// @JoinColumns({ +// @JoinColumn(name = "weekday", referencedColumnName = "weekday", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)), +// @JoinColumn(name = "guid", referencedColumnName = "guid", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)), +// @JoinColumn(name = "service_process_number", referencedColumnName = "service_process_number", insertable = false, updatable = false, foreignKey = @ForeignKey(ConstraintMode.NO_CONSTRAINT)) }) +// @ToString.Exclude +// private HttpAdapterExtraLog log; +//} diff --git a/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraHeaderId.java b/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraHeaderId.java index 76f2a88..0e2018a 100644 --- a/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraHeaderId.java +++ b/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraHeaderId.java @@ -1,32 +1,32 @@ -package com.eactive.eai.data.entity.onl.logger; - -import java.io.Serializable; - -import javax.persistence.Column; -import javax.persistence.Embeddable; - -import org.hibernate.annotations.Comment; - -import lombok.Data; - -@Data -@Embeddable -public class HttpAdapterExtraHeaderId implements Serializable { - private static final long serialVersionUID = 1L; - - @Column(name = "weekday") - @Comment("파티션을 위한 요일 코드(1:일요일, 2:월요일...)") - private Integer weekday; - - @Column(name = "guid", nullable = false, length = 500) - @Comment("트랜잭션 별 Unique ID") - private String guid; - - @Column(name = "service_process_number", nullable = false) - @Comment("서비스 처리 번호 (100/200/300/400...)") - private int serviceProcessNumber; - - @Column(name = "name", nullable = false, length = 500) - @Comment("헤더 이름") - private String name; -} \ No newline at end of file +//package com.eactive.eai.data.entity.onl.logger; +// +//import java.io.Serializable; +// +//import javax.persistence.Column; +//import javax.persistence.Embeddable; +// +//import org.hibernate.annotations.Comment; +// +//import lombok.Data; +// +//@Data +//@Embeddable +//public class HttpAdapterExtraHeaderId implements Serializable { +// private static final long serialVersionUID = 1L; +// +// @Column(name = "weekday") +// @Comment("파티션을 위한 요일 코드(1:일요일, 2:월요일...)") +// private Integer weekday; +// +// @Column(name = "guid", nullable = false, length = 500) +// @Comment("트랜잭션 별 Unique ID") +// private String guid; +// +// @Column(name = "service_process_number", nullable = false) +// @Comment("서비스 처리 번호 (100/200/300/400...)") +// private int serviceProcessNumber; +// +// @Column(name = "name", nullable = false, length = 500) +// @Comment("헤더 이름") +// private String name; +//} \ No newline at end of file diff --git a/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraLog.java b/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraLog.java index 152978d..0ab322a 100644 --- a/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraLog.java +++ b/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraLog.java @@ -1,23 +1,17 @@ package com.eactive.eai.data.entity.onl.logger; -import java.util.List; - -import javax.persistence.CascadeType; -import javax.persistence.Column; -import javax.persistence.EmbeddedId; -import javax.persistence.Entity; -import javax.persistence.OneToMany; -import javax.persistence.Table; - +import com.eactive.eai.data.entity.AbstractEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; import org.hibernate.annotations.Comment; import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; -import com.eactive.eai.data.entity.AbstractEntity; - -import lombok.Data; -import lombok.EqualsAndHashCode; -import lombok.ToString; +import javax.persistence.Column; +import javax.persistence.EmbeddedId; +import javax.persistence.Entity; +import javax.persistence.Lob; +import javax.persistence.Table; @Data @EqualsAndHashCode(onlyExplicitlyIncluded = true, callSuper = true) @@ -26,7 +20,10 @@ import lombok.ToString; @DynamicInsert @DynamicUpdate @Table(name = "http_adapter_extra_log") +@org.hibernate.annotations.Table(appliesTo = "http_adapter_extra_log", comment = "http 헤더 로그") public class HttpAdapterExtraLog extends AbstractEntity { + + private static final long serialVersionUID = 1L; @EmbeddedId @@ -52,10 +49,8 @@ public class HttpAdapterExtraLog extends AbstractEntity { @Comment("HTTP 응답 상태 코드(200,404,500...)") private Integer httpStatus; - @OneToMany(mappedBy = "log", cascade = CascadeType.ALL, orphanRemoval = true) - @ToString.Exclude - List headerList; - - + @Lob + @Column(name = "header_content") //,columnDefinition = "TEXT") // oracle 적용시 주석 처리 + private String headerContent; } diff --git a/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraLogId.java b/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraLogId.java index 70bc40c..5744798 100644 --- a/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraLogId.java +++ b/src/main/java/com/eactive/eai/data/entity/onl/logger/HttpAdapterExtraLogId.java @@ -18,9 +18,9 @@ import lombok.NoArgsConstructor; public class HttpAdapterExtraLogId implements Serializable { private static final long serialVersionUID = 1L; - @Column(name = "weekday") - @Comment("파티션을 위한 요일 코드(1:일요일, 2:월요일...)") - private Integer weekday; + @Column(name = "prcs_date") + @Comment("파티션을 위한 처리일자") + private String prcsDate; @Column(name = "guid", nullable = false, length = 500) @Comment("트랜잭션 별 Unique ID") From f99cb15ccfb1247df1dfa413aa4fb4b7f45922ce Mon Sep 17 00:00:00 2001 From: daekuk Date: Mon, 8 Dec 2025 12:14:39 +0900 Subject: [PATCH 4/8] =?UTF-8?q?=EC=B9=B4=EB=A9=9C=EC=BC=80=EC=9D=B4?= =?UTF-8?q?=EC=8A=A4=20->=20=EC=86=8C=EB=AC=B8=EC=9E=90=EB=A1=9C=20?= =?UTF-8?q?=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../eai/data/entity/onl/stdmessage/StandardMessageInfo.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java b/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java index ae2ebf8..e8f8ba6 100644 --- a/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java +++ b/src/main/java/com/eactive/eai/data/entity/onl/stdmessage/StandardMessageInfo.java @@ -63,7 +63,7 @@ public class StandardMessageInfo extends AbstractEntity implements Seria // jwhong 추가 @Column(length = 100,unique = true) @Comment("인터페이스URL Full Path") - private String apiFullPath; + private String apifullpath; @Column(length = 17) @Comment("최종수정시간") From ce1fe142ff696164f49e4f84745899bdaedef93f Mon Sep 17 00:00:00 2001 From: daekuk Date: Mon, 8 Dec 2025 15:12:14 +0900 Subject: [PATCH 5/8] =?UTF-8?q?apifullpath=20=EC=97=90=EB=9F=AC=20?= =?UTF-8?q?=EC=88=98=EC=A0=95(=EC=B9=B4=EB=A9=9C=EC=BC=80=EC=9D=B4?= =?UTF-8?q?=EC=8A=A4=20->=20=EC=86=8C=EB=AC=B8=EC=9E=90)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../eai/common/stdmessage/loader/StandardMessageInfoLoader.java | 2 +- .../stdmessage/loader/StandardMessageInfoLoaderRepository.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoader.java b/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoader.java index e1ab97f..03500ac 100644 --- a/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoader.java +++ b/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoader.java @@ -16,7 +16,7 @@ public class StandardMessageInfoLoader // jwhong 추가 //Optional findByApiFullPath(String apiFullPath); public Optional findByApiFullPath(String apiFullPath) { - return repository.findByApiFullPath(apiFullPath); + return repository.findByApifullpath(apiFullPath); } } diff --git a/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoaderRepository.java b/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoaderRepository.java index 51016e9..8756524 100644 --- a/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoaderRepository.java +++ b/src/main/java/com/eactive/eai/common/stdmessage/loader/StandardMessageInfoLoaderRepository.java @@ -9,5 +9,5 @@ import java.util.Optional; interface StandardMessageInfoLoaderRepository extends DataLoaderRepository, BaseRepository { // jwhong 추가 - Optional findByApiFullPath(String apiFullPath); + Optional findByApifullpath(String apiFullPath); } \ No newline at end of file From 909b3b293ebd44e8f4ae3b4cc956e6ede1926788 Mon Sep 17 00:00:00 2001 From: parkl Date: Mon, 8 Dec 2025 17:30:04 +0900 Subject: [PATCH 6/8] =?UTF-8?q?id=20=EC=98=A4=EB=A5=98=20=EC=88=98?= =?UTF-8?q?=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../eai/apim/apigroup/loader/ApiGroupApiLoader.java | 8 +++++--- .../apigroup/loader/ApiGroupApiLoaderRepository.java | 10 ++++++---- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/eactive/eai/apim/apigroup/loader/ApiGroupApiLoader.java b/src/main/java/com/eactive/eai/apim/apigroup/loader/ApiGroupApiLoader.java index 81d595b..85034be 100644 --- a/src/main/java/com/eactive/eai/apim/apigroup/loader/ApiGroupApiLoader.java +++ b/src/main/java/com/eactive/eai/apim/apigroup/loader/ApiGroupApiLoader.java @@ -1,11 +1,13 @@ package com.eactive.eai.apim.apigroup.loader; -import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApi; -import com.eactive.eai.data.jpa.AbstractDataLoader; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApi; +import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApiId; +import com.eactive.eai.data.jpa.AbstractDataLoader; + @Service @Transactional -public class ApiGroupApiLoader extends AbstractDataLoader { +public class ApiGroupApiLoader extends AbstractDataLoader { } diff --git a/src/main/java/com/eactive/eai/apim/apigroup/loader/ApiGroupApiLoaderRepository.java b/src/main/java/com/eactive/eai/apim/apigroup/loader/ApiGroupApiLoaderRepository.java index 6cdc5c4..04b9353 100644 --- a/src/main/java/com/eactive/eai/apim/apigroup/loader/ApiGroupApiLoaderRepository.java +++ b/src/main/java/com/eactive/eai/apim/apigroup/loader/ApiGroupApiLoaderRepository.java @@ -1,10 +1,12 @@ package com.eactive.eai.apim.apigroup.loader; -import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApi; -import com.eactive.eai.data.DataLoaderRepository; -import com.eactive.eai.data.jpa.BaseRepository; import org.springframework.data.querydsl.QuerydslPredicateExecutor; -public interface ApiGroupApiLoaderRepository extends BaseRepository, +import com.eactive.eai.data.DataLoaderRepository; +import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApi; +import com.eactive.eai.data.entity.onl.apim.apigroup.ApiGroupApiId; +import com.eactive.eai.data.jpa.BaseRepository; + +public interface ApiGroupApiLoaderRepository extends BaseRepository, QuerydslPredicateExecutor, DataLoaderRepository { } From ccfb5a53adc5cfc733d3de7884179f39fabb0381 Mon Sep 17 00:00:00 2001 From: yunjy-hp Date: Thu, 11 Dec 2025 10:04:23 +0900 Subject: [PATCH 7/8] =?UTF-8?q?inflow=20group=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../loader/InflowControlGroupLoader.java | 39 +++++++++++++ .../InflowControlGroupLoaderRepository.java | 12 ++++ .../InflowControlGroupMappingLoader.java | 52 +++++++++++++++++ ...owControlGroupMappingLoaderRepository.java | 12 ++++ .../entity/onl/inflow/InflowControlGroup.java | 58 +++++++++++++++++++ .../onl/inflow/InflowControlGroupMapping.java | 42 ++++++++++++++ 6 files changed, 215 insertions(+) create mode 100644 src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupLoader.java create mode 100644 src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupLoaderRepository.java create mode 100644 src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupMappingLoader.java create mode 100644 src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupMappingLoaderRepository.java create mode 100644 src/main/java/com/eactive/eai/data/entity/onl/inflow/InflowControlGroup.java create mode 100644 src/main/java/com/eactive/eai/data/entity/onl/inflow/InflowControlGroupMapping.java diff --git a/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupLoader.java b/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupLoader.java new file mode 100644 index 0000000..7a603d1 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupLoader.java @@ -0,0 +1,39 @@ +package com.eactive.eai.common.inflow.loader; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.data.domain.Sort; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.eactive.eai.data.entity.onl.inflow.InflowControlGroup; +import com.eactive.eai.data.entity.onl.inflow.QInflowControlGroup; +import com.eactive.eai.data.jpa.AbstractDataLoader; +import com.querydsl.core.types.dsl.BooleanExpression; + +@Service +@Transactional +public class InflowControlGroupLoader extends AbstractDataLoader { + + /** + * 조건으로 그룹 조회 + */ + public Iterable findByConditions(String groupId) { + QInflowControlGroup q = QInflowControlGroup.inflowControlGroup; + BooleanExpression expression = q.groupId.isNotNull(); + + if (StringUtils.isNotBlank(groupId)) { + expression = expression.and(q.groupId.eq(groupId)); + } + + return repository.findAll(expression, Sort.by("groupId")); + } + + /** + * 활성화된 그룹만 조회 + */ + public Iterable findActiveGroups() { + QInflowControlGroup q = QInflowControlGroup.inflowControlGroup; + BooleanExpression expression = q.useYn.eq("1"); + return repository.findAll(expression, Sort.by("groupId")); + } +} diff --git a/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupLoaderRepository.java b/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupLoaderRepository.java new file mode 100644 index 0000000..eb474a2 --- /dev/null +++ b/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupLoaderRepository.java @@ -0,0 +1,12 @@ +package com.eactive.eai.common.inflow.loader; + +import org.springframework.data.querydsl.QuerydslPredicateExecutor; + +import com.eactive.eai.data.DataLoaderRepository; +import com.eactive.eai.data.entity.onl.inflow.InflowControlGroup; +import com.eactive.eai.data.jpa.BaseRepository; + +interface InflowControlGroupLoaderRepository extends DataLoaderRepository, + BaseRepository, QuerydslPredicateExecutor { + +} diff --git a/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupMappingLoader.java b/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupMappingLoader.java new file mode 100644 index 0000000..2caa22b --- /dev/null +++ b/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupMappingLoader.java @@ -0,0 +1,52 @@ +package com.eactive.eai.common.inflow.loader; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.data.domain.Sort; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.eactive.eai.data.entity.onl.inflow.InflowControlGroupMapping; +import com.eactive.eai.data.entity.onl.inflow.QInflowControlGroupMapping; +import com.eactive.eai.data.jpa.AbstractDataLoader; +import com.querydsl.core.types.dsl.BooleanExpression; + +@Service +@Transactional +public class InflowControlGroupMappingLoader extends AbstractDataLoader { + + /** + * 그룹 ID로 매핑 조회 + */ + public Iterable findByGroupId(String groupId) { + QInflowControlGroupMapping q = QInflowControlGroupMapping.inflowControlGroupMapping; + BooleanExpression expression = q.groupId.eq(groupId); + return repository.findAll(expression, Sort.by("interfaceId")); + } + + /** + * 인터페이스 ID로 매핑 조회 + */ + public Iterable findByInterfaceId(String interfaceId) { + QInflowControlGroupMapping q = QInflowControlGroupMapping.inflowControlGroupMapping; + BooleanExpression expression = q.interfaceId.eq(interfaceId); + return repository.findAll(expression); + } + + /** + * 활성화된 매핑만 조회 + */ + public Iterable findActiveMappings() { + QInflowControlGroupMapping q = QInflowControlGroupMapping.inflowControlGroupMapping; + BooleanExpression expression = q.useYn.eq("1"); + return repository.findAll(expression, Sort.by("groupId", "interfaceId")); + } + + /** + * 그룹 ID와 활성화 상태로 매핑 조회 + */ + public Iterable findActiveByGroupId(String groupId) { + QInflowControlGroupMapping q = QInflowControlGroupMapping.inflowControlGroupMapping; + BooleanExpression expression = q.groupId.eq(groupId).and(q.useYn.eq("1")); + return repository.findAll(expression, Sort.by("interfaceId")); + } +} diff --git a/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupMappingLoaderRepository.java b/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupMappingLoaderRepository.java new file mode 100644 index 0000000..c73432a --- /dev/null +++ b/src/main/java/com/eactive/eai/common/inflow/loader/InflowControlGroupMappingLoaderRepository.java @@ -0,0 +1,12 @@ +package com.eactive.eai.common.inflow.loader; + +import org.springframework.data.querydsl.QuerydslPredicateExecutor; + +import com.eactive.eai.data.DataLoaderRepository; +import com.eactive.eai.data.entity.onl.inflow.InflowControlGroupMapping; +import com.eactive.eai.data.jpa.BaseRepository; + +interface InflowControlGroupMappingLoaderRepository extends DataLoaderRepository, + BaseRepository, QuerydslPredicateExecutor { + +} diff --git a/src/main/java/com/eactive/eai/data/entity/onl/inflow/InflowControlGroup.java b/src/main/java/com/eactive/eai/data/entity/onl/inflow/InflowControlGroup.java new file mode 100644 index 0000000..97f5d9f --- /dev/null +++ b/src/main/java/com/eactive/eai/data/entity/onl/inflow/InflowControlGroup.java @@ -0,0 +1,58 @@ +package com.eactive.eai.data.entity.onl.inflow; + +import java.io.Serializable; +import java.time.LocalDateTime; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.Id; +import javax.persistence.Table; + +import org.hibernate.annotations.Comment; +import org.hibernate.annotations.GenericGenerator; + +import lombok.Data; + +@Data +@Entity +@Table(name = "inflow_control_group") +@org.hibernate.annotations.Table(appliesTo = "inflow_control_group", comment = "유량제어 그룹") +public class InflowControlGroup implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @GeneratedValue(generator = "UUID") + @GenericGenerator(name = "UUID", strategy = "org.hibernate.id.UUIDGenerator") + @Column(name = "group_id", updatable = false, nullable = false, length = 36) + @Comment("그룹 ID") + private String groupId; + + @Column(name = "group_name", length = 100) + @Comment("그룹명") + private String groupName; + + @Column(name = "threshold") + @Comment("임계치") + private Integer threshold; + + @Column(name = "threshold_per_second") + @Comment("초당 임계치") + private Integer thresholdPerSecond; + + @Column(name = "threshold_time_unit", length = 12) + @Comment("임계치 TimeUnit") + private String thresholdTimeUnit; + + @Column(name = "use_yn", length = 1) + @Comment("사용여부") + private String useYn; + + @Column(name = "modified_by", length = 50) + @Comment("수정자") + private String modifiedBy; + + @Column(name = "modified_at") + @Comment("수정일시") + private LocalDateTime modifiedAt; +} diff --git a/src/main/java/com/eactive/eai/data/entity/onl/inflow/InflowControlGroupMapping.java b/src/main/java/com/eactive/eai/data/entity/onl/inflow/InflowControlGroupMapping.java new file mode 100644 index 0000000..c1f62f5 --- /dev/null +++ b/src/main/java/com/eactive/eai/data/entity/onl/inflow/InflowControlGroupMapping.java @@ -0,0 +1,42 @@ +package com.eactive.eai.data.entity.onl.inflow; + +import java.io.Serializable; +import java.time.LocalDateTime; + +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +import org.hibernate.annotations.Comment; + +import lombok.Data; + +@Data +@Entity +@Table(name = "inflow_control_group_mapping") +@org.hibernate.annotations.Table(appliesTo = "inflow_control_group_mapping", comment = "유량제어 그룹 매핑") +public class InflowControlGroupMapping implements Serializable { + private static final long serialVersionUID = 1L; + + @Id + @Column(name = "interface_id", nullable = false, length = 100) + @Comment("인터페이스 ID") + private String interfaceId; + + @Column(name = "group_id", nullable = false, length = 50) + @Comment("그룹 ID") + private String groupId; + + @Column(name = "use_yn", length = 1) + @Comment("사용여부") + private String useYn; + + @Column(name = "modified_by", length = 50) + @Comment("수정자") + private String modifiedBy; + + @Column(name = "modified_at") + @Comment("수정일시") + private LocalDateTime modifiedAt; +} From 6beee5738570d65713faea2d582349b1cc5e5104 Mon Sep 17 00:00:00 2001 From: pksup Date: Thu, 11 Dec 2025 11:14:35 +0900 Subject: [PATCH 8/8] =?UTF-8?q?eclipse=20wtp=20facet=20=EC=84=A4=EC=A0=95?= =?UTF-8?q?=20=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- build.gradle | 6 ------ 1 file changed, 6 deletions(-) diff --git a/build.gradle b/build.gradle index 0de091a..4db7724 100644 --- a/build.gradle +++ b/build.gradle @@ -145,12 +145,6 @@ eclipse { genTestSrcDir = file(generatedTestJavaDir) } } - wtp { - facet { - //you can add some extra wtp facets or update existing ones; mandatory keys: 'name', 'version': - facet name: 'jpt.jpa', version: '2.2' - } - } project { natures = ['org.eclipse.buildship.core.gradleprojectnature', 'org.eclipse.jdt.core.javanature',