meeting, notification 실행환경 설정

This commit is contained in:
djeon
2025-10-23 23:53:28 +09:00
42 changed files with 190 additions and 28 deletions
+31 -2
View File
@@ -1,6 +1,8 @@
spring:
application:
name: meeting
profiles:
active: ${SPRING_PROFILES_ACTIVE:dev}
# Database Configuration
datasource:
@@ -43,7 +45,7 @@ spring:
# Server Configuration
server:
port: ${SERVER_PORT:8081}
port: ${SERVER_PORT:8082}
# JWT Configuration
jwt:
@@ -85,6 +87,7 @@ springdoc:
# Logging Configuration
logging:
level:
root: ${LOG_LEVEL_ROOT:INFO}
com.unicorn.hgzero.meeting: ${LOG_LEVEL_APP:DEBUG}
org.springframework.web: ${LOG_LEVEL_WEB:INFO}
org.springframework.security: ${LOG_LEVEL_SECURITY:DEBUG}
@@ -95,4 +98,30 @@ logging:
console: "%d{yyyy-MM-dd HH:mm:ss} - %msg%n"
file: "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n"
file:
name: ${LOG_FILE_PATH:logs/meeting.log}
name: ${LOG_FILE:logs/meeting-service.log}
logback:
rollingpolicy:
max-file-size: ${LOG_MAX_FILE_SIZE:10MB}
max-history: ${LOG_MAX_HISTORY:7}
total-size-cap: ${LOG_TOTAL_SIZE_CAP:100MB}
# External API Configuration
api:
claude:
key: ${CLAUDE_API_KEY:}
url: ${CLAUDE_API_URL:https://api.anthropic.com}
openai:
key: ${OPENAI_API_KEY:}
url: ${OPENAI_API_URL:https://api.openai.com}
openweather:
key: ${OPENWEATHER_API_KEY:}
url: ${OPENWEATHER_API_URL:https://api.openweathermap.org}
kakao:
key: ${KAKAO_API_KEY:}
url: ${KAKAO_API_URL:https://dapi.kakao.com}
# Azure EventHub Configuration
eventhub:
connection-string: ${EVENTHUB_CONNECTION_STRING:}
name: ${EVENTHUB_NAME:hgzero-eventhub-name}
consumer-group: ${EVENTHUB_CONSUMER_GROUP:$Default}
@@ -35,7 +35,6 @@ public class MinutesEntity extends BaseTimeEntity {
private String title;
@OneToMany(mappedBy = "minutes", cascade = CascadeType.ALL, orphanRemoval = true)
@OrderBy("order ASC")
@Builder.Default
private List<MinutesSectionEntity> sections = new ArrayList<>();
@@ -39,8 +39,9 @@ public class MinutesSectionEntity extends BaseTimeEntity {
@Column(name = "content", columnDefinition = "TEXT")
private String content;
@Column(name = "order", nullable = false)
private Integer order;
@Column(name = "\"order\"")
@Builder.Default
private Integer order = 0;
@Column(name = "verified", nullable = false)
@Builder.Default
@@ -2,6 +2,8 @@ package com.unicorn.hgzero.meeting.infra.gateway.repository;
import com.unicorn.hgzero.meeting.infra.gateway.entity.MinutesSectionEntity;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@@ -15,7 +17,8 @@ public interface MinutesSectionJpaRepository extends JpaRepository<MinutesSectio
/**
* 회의록 ID로 섹션 목록 조회 (순서대로)
*/
List<MinutesSectionEntity> findByMinutesIdOrderByOrderAsc(String minutesId);
@Query("SELECT m FROM MinutesSectionEntity m WHERE m.minutesId = :minutesId ORDER BY m.order ASC")
List<MinutesSectionEntity> findByMinutesIdOrderByOrderAsc(@Param("minutesId") String minutesId);
/**
* 회의록 ID와 타입으로 섹션 목록 조회
@@ -21,6 +21,7 @@ spring:
# JPA Configuration
jpa:
show-sql: ${SHOW_SQL:true}
database-platform: org.hibernate.dialect.PostgreSQLDialect
properties:
hibernate:
format_sql: true