Skip to content
Merged
Show file tree
Hide file tree
Changes from 65 commits
Commits
Show all changes
72 commits
Select commit Hold shift + click to select a range
49b41e2
git initialize
HwuanPage Jun 30, 2025
537c984
feature/swagger-03-gunwoong (#5)
gunwoong1630 Jul 4, 2025
94cd99e
feature/base domain 04 gunwoong (#6)
gunwoong1630 Jul 4, 2025
a0ada69
feature/OpenAPI Test/02-HwuanPage
HwuanPage Jul 4, 2025
7694e75
feature/EntityInit-13-HwuanPage
HwuanPage Jul 7, 2025
34a65bf
feat: entity, repositor κ΅¬ν˜„
johnhuh619 Jul 8, 2025
eebd4ac
feat: μ˜ˆμƒ dto κ΅¬ν˜„
johnhuh619 Jul 8, 2025
36fd789
chore: μ˜μ‘΄μ„± μΆ”κ°€
johnhuh619 Jul 8, 2025
175200c
feat: 둜그인 κ΅¬ν˜„ & 이후 토큰 λ°œκΈ‰ 둜직 κ΅¬ν˜„
johnhuh619 Jul 8, 2025
0adafb8
fix: AuthCotnroller μˆ˜μ •
johnhuh619 Jul 8, 2025
b72262b
fix: ν΄λΌμ΄μ–ΈνŠΈμ—μ„œ μΉ΄μΉ΄μ˜€μ—μ„œ μ½”λ“œλ₯Ό λ°›μ•„ μ„œλ²„λ‘œ post ν•˜κ²Œ μˆ˜μ •
johnhuh619 Jul 8, 2025
306d47a
feat: 토큰 검증
johnhuh619 Jul 8, 2025
d6e9a8f
feat: refresh token λΈ”λž™λ¦¬μŠ€νŠΈ 처리 둜직 κ΅¬ν˜„
johnhuh619 Jul 8, 2025
2afab70
feat: refresh 토큰 λΈ”λž™λ¦¬μŠ€νŠΈ 처리 & μž¬λ°œκΈ‰ 둜직 κ΅¬ν˜„
johnhuh619 Jul 8, 2025
5e29204
feat: SecurityFilterChain μ—”λ“œ 포인트 ν—ˆμš©
johnhuh619 Jul 9, 2025
911358b
feat: refresh 토큰 λΈ”λž™λ¦¬μŠ€νŠΈ 검증 둜직 κ΅¬ν˜„
johnhuh619 Jul 9, 2025
4e94e82
feat: redisμ—μ„œ refreshToken λΈ”λž™λ¦¬μŠ€νŠΈ 검증
johnhuh619 Jul 9, 2025
a8c95cb
refactor: controller에 κ°•ν•˜κ²Œ κ²°ν•© λ˜μ–΄ 있던 λ‘œμ§λ“€ 뢄리
johnhuh619 Jul 9, 2025
36efc22
test: member κ΄€λ ¨ ν…ŒμŠ€νŠΈ
johnhuh619 Jul 9, 2025
7a5b753
chore: ν•˜λ“œμ½”λ”©ν•œ μ€‘μš” κ°’ Intellij IDEA ν™˜κ²½λ³€μˆ˜λ‘œ μ„€μ •
johnhuh619 Jul 9, 2025
c968016
refactor: state 관리λ₯Ό μœ„ν•΄ μ„Έμ…˜ μΆ”κ°€
johnhuh619 Jul 9, 2025
cb4d897
feat: member 정보 μ‘°νšŒν•˜λŠ” μ„œλΉ„μŠ€ 둜직 κ΅¬ν˜„
johnhuh619 Jul 10, 2025
3d0c45a
feat: member 정보 μ‘°νšŒν•˜λŠ” μ„œλΉ„μŠ€ 둜직 κ΅¬ν˜„
johnhuh619 Jul 10, 2025
9c4e3b2
format: naver formatter둜 ν¬λ§€νŒ…
johnhuh619 Jul 10, 2025
9a3057b
chore: application-dev
johnhuh619 Jul 10, 2025
07b1b3d
fix: customException 처리
johnhuh619 Jul 10, 2025
df194fb
Feat/meeting interface (#19)
garusitell Jul 7, 2025
2214b68
Feature/FavoritesAndAlertInterface-16-HwuanPage
HwuanPage Jul 7, 2025
d8bdb16
feature/CustomExceptionInit-22-HwuanPage
HwuanPage Jul 7, 2025
8ad8409
Refactor application.yml ν™˜κ²½λ³€μˆ˜ μ„€μ • (#25)
audwls239 Jul 8, 2025
28b9b51
Feature/spot service interface 29 gunwoong (#30)
gunwoong1630 Jul 8, 2025
c81e4ad
Feature/api scheduler 15 gunwoong (#28)
gunwoong1630 Jul 8, 2025
2214a36
feat: spot service (#34)
gunwoong1630 Jul 10, 2025
991bba3
hotfix: duplicated controller method
gunwoong1630 Jul 10, 2025
d0874a6
feature/FavoriteCRUD-33-HwuanPage
HwuanPage Jul 11, 2025
832541e
Feature/spot preview 40 gunwoong (#41)
gunwoong1630 Jul 11, 2025
6e82141
hotfix: jpa metamodel fix
gunwoong1630 Jul 11, 2025
757c6fb
fix: error fix
gunwoong1630 Jul 11, 2025
496de94
fix: μ†Œμ…œ 둜그인 μž¬μ‹œλ„ μ‹œ λ‹‰λ„€μž„ UNIQUE μ œμ•½ μœ„λ°˜ 였λ₯˜ λ°œμƒ (#42)
johnhuh619 Jul 11, 2025
12db47a
hofix: bug fix
gunwoong1630 Jul 11, 2025
e818cdd
Feature/Alert-22-HwuanPage
HwuanPage Jul 14, 2025
9af7855
feat: 즐겨찾기 μΆ”κ°€ 및 λ¦¬νŒ©ν† λ§ (#49)
gunwoong1630 Jul 14, 2025
2eb0453
feat: 카카였 λ‘œκ·ΈμΈμ„ stateless ν•˜κ²Œ λ³€κ²½ν•œλ‹€ (#51)
johnhuh619 Jul 14, 2025
3121616
Feat/meeting service (#46)
garusitell Jul 14, 2025
9ba172b
Feature/integration init (#54)
HwuanPage Jul 14, 2025
008272a
Feature/activities 17 audwls239 (#56)
audwls239 Jul 14, 2025
b45b2e7
feat : ParticipantError μž…λ‹ˆλ‹€.
garusitell Jul 14, 2025
d556d53
hotfix: error fix
gunwoong1630 Jul 14, 2025
2cbdc8c
fix : Directory μˆ˜μ •μ‚¬ν•­μž…λ‹ˆλ‹€. (#57)
garusitell Jul 14, 2025
afd564a
hotfix: error fix
gunwoong1630 Jul 14, 2025
bd2923e
feat: member delete (#58)
johnhuh619 Jul 14, 2025
b101278
fix : ParticipantRepository (#59)
garusitell Jul 14, 2025
944b62f
fix : ParticipantRepository (#60)
garusitell Jul 14, 2025
db23ae1
fix: token (#61)
johnhuh619 Jul 15, 2025
4aa55cc
hotfix/fix-alert&favorites-62-HwuanPage
HwuanPage Jul 15, 2025
1f70995
fix(hotfix/Meeting) : rebase둜 μΈν•œ μ½”λ“œ λˆ„λ½ μˆ˜μ • (#65)
garusitell Jul 15, 2025
73ae7c2
hotfix: μ½”λ“œ λˆ„λ½ ν•΄κ²° (#67)
audwls239 Jul 15, 2025
a052e1e
Fix/fix 70 gunwoong (#71)
gunwoong1630 Jul 15, 2025
abaaca0
fix: application-prod.ymlμ—μ„œ μΏ ν‚€λ₯Ό μ“Έμ§€ 말지 κ²°μ •ν•  수 있게 μˆ˜μ • (#69)
johnhuh619 Jul 15, 2025
62e120b
fix: activities μ‹œνλ¦¬ν‹° μ—”λ“œν¬μΈνŠΈ ν—ˆμš©. redirecturi μˆ˜μ •
johnhuh619 Jul 16, 2025
9e484d5
Chore/docker set andvariable-68-hwuanPage
HwuanPage Jul 16, 2025
f69afe9
refactor: blacklist μ—”ν‹°ν‹°μ˜ jti에 인덱슀λ₯Ό 건닀. (#74)
johnhuh619 Jul 16, 2025
76b0998
Feat/meeting test 75 (#77)
garusitell Jul 16, 2025
a1b72fe
space prob solve
HwuanPage Jul 16, 2025
a7c6ab8
stack-trace-DEBUG
HwuanPage Jul 16, 2025
ad018cf
hotfix/data.sql deprecate-HwuanPage (#79)
HwuanPage Jul 16, 2025
16c1f7d
Xtest
HwuanPage Jul 16, 2025
68d92ca
test X
HwuanPage Jul 16, 2025
2f35102
workflow fix
HwuanPage Jul 16, 2025
9913db5
add id
HwuanPage Jul 16, 2025
9c0f685
fix docker-compose-image-root
HwuanPage Jul 16, 2025
e2bd799
release/v1-marineleisure
HwuanPage Jul 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
/gradlew text eol=lf
*.bat text eol=crlf
*.jar binary
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: Bug Template
about: 버그λ₯Ό μ΄μŠˆμ— λ“±λ‘ν•œλ‹€.
title: ''
labels: ''
assignees: ''

---

## 🀷 버그 λ‚΄μš©

## ⚠ 버그 μž¬ν˜„ 방법
1.
2.
3.

## πŸ“Έ μŠ€ν¬λ¦°μƒ·

## πŸ‘„ μ°Έκ³  사항
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/chore-template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: Chore Template
about: 운영기λŠ₯을 μ΄μŠˆμ— λ“±λ‘ν•œλ‹€.
title: ''
labels: ''
assignees: ''

---

## 🀷 κ΅¬ν˜„ν•  κΈ°λŠ₯

## πŸ”¨ λ™μž‘ λ‚΄μš©

- [ ] To-do 1
- [ ] To-do 2
- [ ] To-do 3

## πŸ“„ μ°Έκ³  사항

20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature-template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature Template
about: κ΅¬ν˜„ν•  κΈ°λŠ₯을 μ΄μŠˆμ— λ“±λ‘ν•œλ‹€.
title: ''
labels: ''
assignees: ''

---

## 🀷 κ΅¬ν˜„ν•  κΈ°λŠ₯

## πŸ”¨ 상세 μž‘μ—… λ‚΄μš©

- [ ] To-do 1
- [ ] To-do 2
- [ ] To-do 3

## πŸ“„ μ°Έκ³  사항

## ⏰ μ˜ˆμƒ μ†Œμš” κΈ°κ°„
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/fix-template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Fix Template
about: ν”½μŠ€ κΈ°λŠ₯을 μ΄μŠˆμ— λ“±λ‘ν•œλ‹€.
title: ''
labels: ''
assignees: ''

---

## 🀷 ν”½μŠ€ν•  κΈ°λŠ₯

## πŸ”¨ 상세 μž‘μ—… λ‚΄μš©

- [ ] To-do 1
- [ ] To-do 2
- [ ] To-do 3

## πŸ“„ μ°Έκ³  사항

## ⏰ μ˜ˆμƒ μ†Œμš” κΈ°κ°„
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/refactor-template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Refactor Template
about: λ¦¬νŽ™ν† λ§ν•  κΈ°λŠ₯을 μ΄μŠˆμ— λ“±λ‘ν•œλ‹€.
title: ''
labels: ''
assignees: ''

---

## 🀷 λ¦¬νŽ™ν† λ§ν•  κΈ°λŠ₯

## πŸ”¨ 상세 μž‘μ—… λ‚΄μš©

- [ ] To-do 1
- [ ] To-do 2
- [ ] To-do 3

## πŸ“„ μ°Έκ³  사항

## ⏰ μ˜ˆμƒ μ†Œμš” κΈ°κ°„
13 changes: 13 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
- [ ] πŸ’― ν…ŒμŠ€νŠΈλŠ” 잘 ν†΅κ³Όν–ˆλ‚˜μš”?
- [ ] πŸ—οΈ λΉŒλ“œλŠ” μ„±κ³΅ν–ˆλ‚˜μš”?
- [ ] 🧹 λΆˆν•„μš”ν•œ μ½”λ“œλŠ” μ œκ±°ν–ˆλ‚˜μš”?
- [ ] πŸ’­ μ΄μŠˆλŠ” λ“±λ‘ν–ˆλ‚˜μš”?
- [ ] 🏷️ 라벨은 λ“±λ‘ν–ˆλ‚˜μš”?

## μž‘μ—… λ‚΄μš©

## μŠ€ν¬λ¦°μƒ·

## μ£Όμ˜μ‚¬ν•­

Closes #{이슈 번호}
91 changes: 91 additions & 0 deletions .github/workflows/pr-workflow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
name: MarineLeisure Pull Request Script -Test & Image build
on:
pull_request:
branches:
- main
env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}

jobs:
codetest:
name: μ½”λ“œ ν…ŒμŠ€νŠΈ
runs-on: ubuntu-latest

steps:
- name: branch checkout
uses: actions/checkout@v4

- name: JDK setting
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'

- name: set Permission
run: chmod +x ./gradlew

- name: do test
run: ./gradlew test --stacktrace --no-daemon -Dspring.profiles.active=test --info
env:
JAVA_TOOL_OPTIONS: "-Dlogging.level.root=DEBUG"

tagging:
name: νƒœκΉ… 및 릴리즈
runs-on: ubuntu-latest
outputs:
tag_name: ${{ steps.tag_version.outputs.new_tag }}

steps:
- uses: actions/checkout@v4

- name: versioning and tagging
id: tag_version
uses: mathieudutour/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}

- name: releasing
uses: ncipollo/release-action@v1
with:
tag: ${{ steps.tag_version.outputs.new_tag }}
name: ${{ steps.tag_version.outputs.new_tag }}
body: ${{ steps.tag_version.outputs.changelog }}
build-image:
name: 도컀 이미지 λΉŒλ“œ
runs-on: ubuntu-latest
needs: [ codetest,tagging ]

permissions:
contents: read
packages: write
attestations: write
id-token: write

steps:

- name: Check out Repository
uses: actions/checkout@v4

- name: Sign in github container registry
uses: docker/login-action@v3
with:
registry: ${{env.REGISTRY}}
username: ${{github.actor}}
password: ${{secrets.GITHUB_TOKEN}}
- name: Extract metadata
uses: docker/metadata-action@v5
with:
images: ${{env.REGISTRY}}/${{env.IMAGE_NAME}}
tags:
type=sha
type=raw,value=${{needs.tagging.outputs.tag_name}}
type=raw,value=latest

- name: Build and Push Image
uses: docker/build-push-action@v6
with:
context: .
push: 'true'
tags: ${{steps.meta.outputs.tags}}
labels: ${{steps.meta.outputs.labels}}
51 changes: 51 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
HELP.md
.gradle
build/
!gradle/wrapper/gradle-wrapper.jar
!**/src/main/**/build/
!**/src/test/**/build/

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
bin/
!**/src/main/**/bin/
!**/src/test/**/bin/

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
out/
!**/src/main/**/out/
!**/src/test/**/out/

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/

### VS Code ###
.vscode/

### Environment Variables ###
.env
.env.*
*.env
env.properties
application-secrets.yml
application-secrets.properties

### Application Properties ###
WEB5_7_7STARBALL_BE/src/main/resources/application-*.yml
/src/main/resources/application-local.yml
/src/main/resources/application-dev.yml

25 changes: 25 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
FROM gradle:jdk21 as builder

WORKDIR /libs

COPY gradlew .
COPY gradle gradle
COPY build.gradle .
COPY settings.gradle .

RUN ./gradlew dependencies --no-daemon || true

COPY src src

RUN ./gradlew build --no-daemon -x test

FROM openjdk:21-slim

WORKDIR /app

COPY --from=builder /libs/build/libs/*.jar app.jar

ENTRYPOINT [ "java", "-Dspring.profiles.active=prod" , "-jar", "app.jar" ]



87 changes: 87 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
plugins {
id 'java'
id 'org.springframework.boot' version '3.5.3'
id 'io.spring.dependency-management' version '1.1.7'
}

ext {
springAiVersion = "1.0.0"
}

group = 'sevenstar'
version = '1.0.0'

java {
toolchain {
languageVersion = JavaLanguageVersion.of(21)
}
}

configurations {
compileOnly {
extendsFrom annotationProcessor
}
}

repositories {
mavenCentral()
}

dependencies {
// spring boot dependencies
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-webflux'
implementation 'org.springframework.boot:spring-boot-starter-validation'
implementation 'org.springframework.ai:spring-ai-starter-model-openai'
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testCompileOnly 'org.projectlombok:lombok'
testAnnotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'

// jwt
implementation 'io.jsonwebtoken:jjwt-api:0.12.6'
runtimeOnly 'io.jsonwebtoken:jjwt-impl:0.12.6'
runtimeOnly 'io.jsonwebtoken:jjwt-jackson:0.12.6' //JSON νŒŒμ‹±

// redis
implementation 'org.springframework.boot:spring-boot-starter-data-redis'

//JSON parsing
implementation 'com.fasterxml.jackson.core:jackson-databind'
// db dependencies
runtimeOnly 'com.mysql:mysql-connector-j'
runtimeOnly 'com.h2database:h2'

// security dependencies
implementation 'org.springframework.boot:spring-boot-starter-oauth2-client'
implementation 'org.springframework.boot:spring-boot-starter-security'
testImplementation 'org.springframework.security:spring-security-test'

// swagger dependencies
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.1.0'

// geo dependencies
implementation 'org.hibernate:hibernate-spatial:6.5.2.Final'
implementation 'org.locationtech.jts:jts-core:1.19.0'

// mock-inline
testImplementation 'org.mockito:mockito-inline:5.2.0'
// html parser
implementation 'org.jsoup:jsoup:1.21.1'

// pdf parsing
implementation 'org.apache.pdfbox:pdfbox:3.0.5'
}

dependencyManagement {
imports {
mavenBom "org.springframework.ai:spring-ai-bom:$springAiVersion"
}
}

tasks.named('test') {
useJUnitPlatform()
}
Loading
Loading