phonebill/bill-service/build.gradle
hiondal 02bcfa5434 kos-mock 상품변경 실제 DB 업데이트 기능 추가
- MockDataService에 updateCustomerProduct 메서드 추가
- KosMockService에 실제 고객 데이터 업데이트 로직 추가
- 상품변경 시 고객의 current_product_code를 실제로 업데이트하도록 수정
- 트랜잭션 처리로 데이터 일관성 보장
- product-service Hibernate dialect 설정 추가

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-10 02:06:24 +09:00

97 lines
2.5 KiB
Groovy

// bill-service 모듈
// 루트 build.gradle의 subprojects 블록에서 공통 설정 적용됨
plugins {
id 'jacoco'
}
dependencies {
// Database (bill service specific)
runtimeOnly 'org.postgresql:postgresql'
implementation 'com.zaxxer:HikariCP:5.0.1'
// Redis (bill service specific)
implementation 'redis.clients:jedis:4.4.6'
// Circuit Breaker & Resilience
implementation 'io.github.resilience4j:resilience4j-spring-boot3:2.1.0'
implementation 'io.github.resilience4j:resilience4j-circuitbreaker:2.1.0'
implementation 'io.github.resilience4j:resilience4j-retry:2.1.0'
implementation 'io.github.resilience4j:resilience4j-timelimiter:2.1.0'
// Logging (bill service specific)
implementation 'org.slf4j:slf4j-api'
implementation 'ch.qos.logback:logback-classic'
// HTTP Client
implementation 'org.springframework.boot:spring-boot-starter-webflux'
// Common modules (로컬 의존성)
implementation project(':common')
implementation project(':kos-mock')
// Test Dependencies (bill service specific)
testImplementation 'org.testcontainers:postgresql'
testImplementation 'redis.embedded:embedded-redis:0.7.3'
testImplementation 'com.github.tomakehurst:wiremock-jre8:2.35.0'
}
tasks.named('test') {
finalizedBy jacocoTestReport
}
jacocoTestReport {
dependsOn test
reports {
xml.required = true
csv.required = false
html.outputLocation = layout.buildDirectory.dir('jacocoHtml')
}
}
jacoco {
toolVersion = "0.8.8"
}
jacocoTestCoverageVerification {
violationRules {
rule {
limit {
minimum = 0.80
}
}
}
}
springBoot {
buildInfo()
}
// 환경별 실행 프로필 설정
task runDev(type: JavaExec, dependsOn: 'classes') {
group = 'application'
description = 'Run the application with dev profile'
classpath = sourceSets.main.runtimeClasspath
mainClass = 'com.phonebill.bill.BillServiceApplication'
systemProperty 'spring.profiles.active', 'dev'
}
task runProd(type: JavaExec, dependsOn: 'classes') {
group = 'application'
description = 'Run the application with prod profile'
classpath = sourceSets.main.runtimeClasspath
mainClass = 'com.phonebill.bill.BillServiceApplication'
systemProperty 'spring.profiles.active', 'prod'
}
// JAR 파일명 설정
jar {
enabled = false
archiveBaseName = 'bill-service'
}
bootJar {
enabled = true
archiveBaseName = 'bill-service'
archiveClassifier = ''
}