Skip to content
/ BE Public

πŸŒ³ν™˜κ²½κ³Ό ν•¨κ»˜ν•˜λŠ” λ˜‘λ˜‘ν•œ ν•œλΌ, RE:FOOD πŸ₯‡ 2025 IITP μ΅œμš°μˆ˜μƒ

Notifications You must be signed in to change notification settings

RE-FOOD/BE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

RE:FOOD

πŸ₯‡ 2025 IITP μš°μˆ˜μ„±κ³Όκ³΅μœ  컨퍼런슀 μ΅œμš°μˆ˜μƒ

image

🌳 μ„œλΉ„μŠ€ μ†Œκ°œ

κ°€κ²Œμ—μ„œ λ²„λ €μ§€λŠ” μ‹ν’ˆλ“€ λ„ˆλ¬΄ μ•„κΉŒμš΄λ°... λ‚΄κ°€ μ‹Έκ²Œ μ‚΄ μˆ˜λŠ” μ—†μ„κΉŒ?

λ¦¬ν‘Έλ“œλŠ” λ‚¨λŠ” μ‹ν’ˆ 거래 ν”Œλž«νΌ μ„œλΉ„μŠ€λ‘œ, 합리적 μ†ŒλΉ„μ™€ ν™˜κ²½λ³΄ν˜Έλ₯Ό λͺ¨λ‘ μ–»λŠ” λ˜‘λ˜‘ν•œ ν‘Έλ“œ ν”½μ—… μ„œλΉ„μŠ€μž…λ‹ˆλ‹€.
이λ₯Ό 톡해 합리적이고 ν™˜κ²½μΉœν™”μ μΈ 식문화에 κΈ°μ—¬ν•˜μž! λΌλŠ” μ„œλΉ„μŠ€ λͺ©ν‘œλ₯Ό κ°–κ³  μžˆμŠ΅λ‹ˆλ‹€.

πŸ’° 우리 μ„œλΉ„μŠ€μ˜ κ°€μΉ˜

  • 경제적 κ°€μΉ˜ - μ†ŒλΉ„μž : μ†ŒλΉ„μžλŠ” 근처 마감 할인을 ν†΅ν•œ 이득을 μ–»λŠ” λ™μ‹œμ—, ν™˜κ²½ 포인트 및 쿠폰 λ¦¬μ›Œλ“œλ₯Ό 톡해 μ„œλΉ„μŠ€ 이용 동기λ₯Ό μ–»μŠ΅λ‹ˆλ‹€.
  • 경제적 κ°€μΉ˜ - 판맀자 : νŒλ§€μžλŠ” μž¬κ³ μ— λŒ€ν•œ 원가λ₯Ό νšŒμˆ˜ν•˜κ³ , λΉ λ₯Έ κ°€κ²Œ λ…ΈμΆœμ„ ν†΅ν•œ μΆ”κ°€ 맀좜 기회λ₯Ό μ–»μŠ΅λ‹ˆλ‹€.
  • ν™˜κ²½ 보호: μŒμ‹λ¬Ό μ“°λ ˆκΈ° κ°μ†Œλ₯Ό ν†΅ν•œ νƒ„μ†Œ λ°°μΆœλŸ‰ 감좕

✨ μ£Όμš” κΈ°λŠ₯

πŸ” 인증 및 κΆŒν•œ 관리

  • JWT 기반 인증 μ‹œμŠ€ν…œ: μ•ˆμ „ν•˜κ³  ν™•μž₯ κ°€λŠ₯ν•œ 토큰 기반 인증
  • OAuth2 μ†Œμ…œ 둜그인: 카카였 둜그인 지원
  • 역할별 κΆŒν•œ 처리: 일반 μ‚¬μš©μž, μ‚¬μ—…μž, κ΄€λ¦¬μž μ—­ν•  ꡬ뢄
  • ν™˜κ²½ 포인트 μ‹œμŠ€ν…œ: ν™˜κ²½ μΉœν™”μ  ν™œλ™μ— λŒ€ν•œ 포인트 적립

πŸͺ κ°€κ²Œ 관리

  • μ‚¬μ—…μž 등둝 및 승인: μ‚¬μ—…μž 자격 검증 μ‹œμŠ€ν…œ
  • κ°€κ²Œ 정보 관리: 메뉴, μ˜μ—…μ‹œκ°„, μœ„μΉ˜ λ“± 상세 정보 관리
  • μ‹€μ‹œκ°„ 재고 관리: λ‚¨λŠ” μŒμ‹ μ‹€μ‹œκ°„ μ—…λ°μ΄νŠΈ

πŸ—ΊοΈ 지도 기반 μ„œλΉ„μŠ€

  • μœ„μΉ˜ 기반 κ°€κ²Œ 쑰회: μ‚¬μš©μž μœ„μΉ˜ 기반 근처 κ°€κ²Œ 검색
  • 거리 계산: μ‚¬μš©μžμ™€ κ°€κ²Œ κ°„ 거리 μžλ™ 계산
  • 지역별 필터링: μ›ν•˜λŠ” μ§€μ—­μ˜ κ°€κ²Œλ§Œ 쑰회

πŸ›’ μ£Όλ¬Έ 및 결제

  • μž₯λ°”κ΅¬λ‹ˆ μ‹œμŠ€ν…œ: Redis 기반 μ‹€μ‹œκ°„ μž₯λ°”κ΅¬λ‹ˆ 관리
  • μ£Όλ¬Έ ν”„λ‘œμ„ΈμŠ€: μ£Όλ¬Έ 생성, 확인, μ·¨μ†Œ 전체 ν”Œλ‘œμš°
  • 결제 μ‹œμŠ€ν…œ: λ‹€μ–‘ν•œ 결제 μˆ˜λ‹¨ 지원
  • μ£Όλ¬Έ λ‚΄μ—­ 관리: μ‚¬μš©μžλ³„ μ£Όλ¬Έ 이λ ₯ 쑰회

πŸ”” μ•Œλ¦Ό μ„œλΉ„μŠ€

  • FCM ν‘Έμ‹œ μ•Œλ¦Ό: μ‹€μ‹œκ°„ μ£Όλ¬Έ μƒνƒœ μ•Œλ¦Ό
  • ν™˜κ²½ 레벨 μ—… μ•Œλ¦Ό: 포인트 적립 및 레벨 μƒμŠΉ μ•Œλ¦Ό
  • κ°€κ²Œλ³„ μ•Œλ¦Ό: μƒˆλ‘œμš΄ 메뉴, 할인 정보 λ“±

πŸ› οΈ 기술 μŠ€νƒ

2025-09-05_10 51 55

Backend

  • Java 21 LTS
  • Spring Boot 3.5.4, Spring Security, Spring Data JPA

Database

  • MySQL 8.0.43
  • Redis 8.2.0

Query & ORM

  • QueryDSL 5.0.0
  • JPA/Hibernate

External Services

  • AWS S3
  • Kakao API, Toss Payments API
  • FCM(Firebase Cloud Messaging)
  • Spring Mail

Development Tools

  • Gradle
  • Docker compose & github actions : μ„œλ²„ μ»¨ν…Œμ΄λ„ˆν™”λ₯Ό ν†΅ν•œ CI/CD
  • Swagger

Other Dependencies

  • JWT, Lombok, Jackson, thymeleaf

πŸ“ ν”„λ‘œμ νŠΈ ꡬ쑰

src/main/java/com/iitp/
β”œβ”€β”€ domains/                    # 도메인별 λͺ¨λ“ˆ
β”‚   β”œβ”€β”€ member/                 # νšŒμ› 관리 도메인
β”‚   β”‚   β”œβ”€β”€ controller/         # νšŒμ› κ΄€λ ¨ API
β”‚   β”‚   β”œβ”€β”€ domain/             # 도메인 λͺ¨λΈ
β”‚   β”‚   β”‚   β”œβ”€β”€ entity/         # μ—”ν‹°ν‹°
β”‚   β”‚   β”œβ”€β”€ dto/                # μš”μ²­/응닡 DTO
β”‚   β”‚   β”œβ”€β”€ repository/         # 데이터 μ ‘κ·Ό 계측
β”‚   β”‚   └── service/            # νšŒμ› λΉ„μ¦ˆλ‹ˆμŠ€ 둜직
β”‚   β”œβ”€β”€ store/
β”‚   β”œβ”€β”€ ...
|
β”œβ”€β”€ global/                     # 곡톡 λͺ¨λ“ˆ
β”‚   β”œβ”€β”€ config/                 # μ„€μ •
β”‚   β”œβ”€β”€ exception/              # μ˜ˆμ™Έ 처리
β”‚   β”œβ”€β”€ jwt/                    # JWT κ΄€λ ¨
β”‚   β”œβ”€β”€ redis/                  # Redis μ„œλΉ„μŠ€
β”‚   └── util/                   # μœ ν‹Έλ¦¬ν‹°
└── IitpApplication.java        # 메인 μ• ν”Œλ¦¬μΌ€μ΄μ…˜ 클래슀

πŸ—οΈ μ‹œμŠ€ν…œ μ•„ν‚€ν…μ²˜

image

CQRS (Command Query Responsibility Segregation) νŒ¨ν„΄

  • λͺ…λ Ήκ³Ό 쑰회 뢄리: 읽기와 μ“°κΈ° μž‘μ—…μ˜ μ΅œμ ν™”
  • Command: 데이터 λ³€κ²½ μž‘μ—… (Create, Update, Delete)
  • Query: 인메λͺ¨λ¦¬ DB Redisλ₯Ό ν†΅ν•œ 데이터 쑰회 μž‘μ—… (Read)

πŸš€ μ‹€ν–‰ 방법

Prerequisites

  • Java 21+
  • MySQL 8.0+
  • Redis 6.0+
  • Docker (선택사항)

Local Development

# 1. μ €μž₯μ†Œ 클둠
git clone <repository-url>
cd BE

# 2. μ˜μ‘΄μ„± μ„€μΉ˜
./gradlew build

# 3. λ°μ΄ν„°λ² μ΄μŠ€ μ„€μ •
# MySQL에 refood λ°μ΄ν„°λ² μ΄μŠ€ 생성

# 4. Redis μ‹€ν–‰
redis-server

# 5. μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ‹€ν–‰
./gradlew bootRun

Refood Team - ν™˜κ²½κ³Ό ν•¨κ»˜ν•˜λŠ” λ˜‘λ˜‘ν•œ ν•œ 끼λ₯Ό λ§Œλ“€μ–΄κ°‘λ‹ˆλ‹€ 🌱

About

πŸŒ³ν™˜κ²½κ³Ό ν•¨κ»˜ν•˜λŠ” λ˜‘λ˜‘ν•œ ν•œλΌ, RE:FOOD πŸ₯‡ 2025 IITP μ΅œμš°μˆ˜μƒ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •