πŸ“Œ 1. User ν…Œμ΄λΈ” (μœ μ € 정보)

id	κ³ μœ ν•œ μœ μ € μ‹λ³„μž (λͺ¨λ“  κ΄€κ³„μ˜ κΈ°μ€€)
email	둜그인 및 식별을 μœ„ν•œ 유일 정보
nickname	λ‹‰λ„€μž„ 기반 μ„œλΉ„μŠ€(ν¬ν† μΉ΄λ“œ μƒμ„±μž λ“±)에 ν•„μš”
password	둜컬 둜그인 μ‚¬μš©μžμš© (OAuth μ‚¬μš©μž μ œμ™Έ)
provider	LOCAL/GOOGLE λ“± OAuth ꡬ뢄을 μœ„ν•œ μ—΄κ±°ν˜•
points	포인트둜 ꡬ맀, 뽑기 λ“± 처리 μ‹œ ν•„μš”
photoCards, ownedCards, sales, purchases, proposals	μœ μ €κ°€ 생성/보유/κ±°λž˜ν•œ μΉ΄λ“œ 및 μ œμ•ˆ 관계 좔적
notifications	μ•Œλ¦Όμ„ μœ„ν•œ 관계 ν•„λ“œ
createdAt, updatedAt	ν™œλ™ μ‹œκ°„ 관리 및 μ •λ ¬, λ‘œκΉ… λͺ©μ 

πŸ“Œ 2. PhotoCard ν…Œμ΄λΈ” (ν¬ν† μΉ΄λ“œ λ§ˆμŠ€ν„° 정보)

id	ν¬ν† μΉ΄λ“œ 고유 μ‹λ³„μž
name	μΉ΄λ“œ 이름 (검색/ν•„ν„°μš©)
description	μΉ΄λ“œ 상세 μ„€λͺ…
imageUrl	μ‹€μ œ 이미지 URL μ €μž₯
grade	λ“±κΈ‰ (NORMAL, RARE λ“±) β€” 거래 ν•„ν„° 및 μ œμ•ˆ 쑰건에 μ‚¬μš©
genre	μž₯λ₯΄ (IDOL, SPORTS λ“±) β€” 필터링 및 κ΅ν™˜ 쑰건 기반
minPrice	거래 μ‹œ 가격 κΈ°μ€€ μ œν•œμ„ μœ„ν•œ μ΅œμ†Œκ°’
totalQuantity	λ°œν–‰λŸ‰ μ œν•œμ„ μœ„ν•œ μˆ˜λŸ‰ ν•„λ“œ
createdById	μ–΄λ–€ μœ μ €κ°€ μƒμ„±ν–ˆλŠ”μ§€ 좔적
userCards	ν•΄λ‹Ή μΉ΄λ“œμ˜ μ‹€μ†Œμœ  λͺ©λ‘ (UserCard 관계)
sales, proposals	거래 및 κ΅ν™˜ μ œμ•ˆ 좔적
createdAt, updatedAt	μ •λ ¬, μ΅œμ‹  μΉ΄λ“œ ν‘œμ‹œμš©

πŸ“Œ 3. UserCard ν…Œμ΄λΈ” (ν¬ν† μΉ΄λ“œ μ‹€μ†Œμœ )

id	κ°œλ³„ 보유 μΉ΄λ“œλ₯Ό 식별
userId	ν•΄λ‹Ή μΉ΄λ“œλ₯Ό κ°€μ§„ μœ μ € 정보 좔적
photoCardId	μ–΄λ–€ ν¬ν† μΉ΄λ“œμ˜ μΈμŠ€ν„΄μŠ€μΈμ§€ 좔적
isOnSale	ν˜„μž¬ 거래 쀑인지 μ—¬λΆ€ νŒλ‹¨
createdAt	보유 μˆœμ„œ, μ •λ ¬ κΈ°μ€€ λ“±μœΌλ‘œ μ‚¬μš© κ°€λŠ₯

ν•˜λ‚˜μ˜ PhotoCard(예: BTS RM 포토)μ—μ„œ 10μž₯ λ°œν–‰λœλ‹€λ©΄, UserCardλŠ” 각각의 μž₯을 κ΄€λ¦¬ν•©λ‹ˆλ‹€.

πŸ“Œ 4. Sale ν…Œμ΄λΈ” (판맀 정보)

id	거래 고유 μ‹λ³„μž
sellerId	판맀자 μœ μ € ID 좔적
userCardId	판맀 쀑인 κ°œλ³„ μ†Œμœ  μΉ΄λ“œ(UserCard)
price	판맀 가격 (포인트 차감/적립용)
isSoldOut	ν’ˆμ ˆ μ—¬λΆ€ μƒνƒœ
status	판맀 방식 (판맀 쀑 / κ΅ν™˜ μ „μš© λ“±)
desiredGrade, desiredGenre, desiredDesc	κ΅ν™˜ 쑰건 필터링을 μœ„ν•œ 판맀자의 희망쑰건
proposals	μ œμ•ˆλ°›μ€ κ΅ν™˜ λͺ©λ‘
createdAt, updatedAt	μ •λ ¬ κΈ°μ€€ 및 UI λ Œλ”λ§ λͺ©μ 

πŸ“Œ 5. Purchase ν…Œμ΄λΈ” (포인트 ꡬ맀 기둝)

id	ꡬ맀 기둝 μ‹λ³„μž
buyerId	ꡬ맀자 정보 좔적
saleId	μ–΄λ–€ 판맀λ₯Ό κ΅¬λ§€ν–ˆλŠ”μ§€ 좔적
createdAt	μ •μ‚° 및 μ•Œλ¦Ό μ‹œκ°„ κΈ°μ€€

πŸ“Œ 6. ExchangeProposal ν…Œμ΄λΈ” (κ΅ν™˜ μ œμ•ˆ)

id	μ œμ•ˆ 고유 μ‹λ³„μž
saleId	μ–΄λ–€ 판맀 건에 λŒ€ν•œ μ œμ•ˆμΈμ§€ 좔적
userCardId	μ œμ•ˆμžκ°€ 내놓은 κ΅ν™˜ μΉ΄λ“œ (UserCard κΈ°μ€€)
proposerId	μ œμ•ˆν•œ μœ μ € 좔적
status	μ œμ•ˆ μƒνƒœ (PENDING/ACCEPTED/REJECTED)
createdAt, updatedAt	μ •λ ¬, κ°±μ‹ , μ•Œλ¦Ό λ“± UI μ²˜λ¦¬μ— ν™œμš©

πŸ“Œ 7. Notification ν…Œμ΄λΈ” (μ•Œλ¦Ό)

id	μ•Œλ¦Ό 고유 μ‹λ³„μž
userId	μ•Œλ¦Ό μˆ˜μ‹ μž
content	μ‹€μ œ μ•Œλ¦Ό λ‚΄μš© (λ©”μ‹œμ§€ λ Œλ”λ§)
type	μ–΄λ–€ μ’…λ₯˜μ˜ μ΄λ²€νŠΈμΈμ§€ λΆ„λ₯˜
read	읽음 μ—¬λΆ€ ν™•μΈμš©
createdAt	μ‹œκ°„ 기반 μ •λ ¬, ν‘œμ‹œ λͺ©μ 

πŸ“Œ 8. PointLog ν…Œμ΄λΈ” (포인트 νžˆμŠ€ν† λ¦¬)

id	둜그 μ‹λ³„μž
userId	포인트λ₯Ό νšλ“/μ†ŒλΉ„ν•œ μœ μ €
amount	λ³€κ²½λœ 포인트 μ–‘ (μ–‘μˆ˜/음수)
reason	이유 (뽑기, ꡬ맀 λ“± κ΅¬λΆ„μš©)
createdAt	μ‹œκ°„ 순 둜그 μ •λ ¬μš©

πŸ“Œ 9. CardCreationLimit ν…Œμ΄λΈ” (생성 μ œν•œ λ‘œκΉ…)

userId	μœ μ €λ³„ μ œν•œ 카운트 μ €μž₯
month, year	생성 μ œν•œ μ΄ˆκΈ°ν™” κΈ°μ€€ νŒλ‹¨μš© (예: 2025λ…„ 7μ›”)
created	이번 달 μƒμ„±ν•œ μΉ΄λ“œ 수 좔적
updatedAt	μžλ™ μ΄ˆκΈ°ν™” 확인 및 UI ν‘œμ‹œ κΈ°μ€€

πŸ“Œ ENUM μ„€λͺ… ENUM 이름 μ„€λͺ… AuthProvider 인증 방식 κ΅¬λΆ„μš© (LOCAL, GOOGLE) CardGrade ν¬ν† μΉ΄λ“œ λ“±κΈ‰ (NORMAL, RARE, LEGENDARY) CardGenre ν¬ν† μΉ΄λ“œ μž₯λ₯΄ (IDOL, SPORTS, ART λ“±) SaleStatus 판맀 μƒνƒœ (ON_SALE, EXCHANGE_ONLY, SOLD_OUT) ProposalStatus κ΅ν™˜ μ œμ•ˆμ˜ μƒνƒœ 관리 NotificationType μ•Œλ¦Ό μ’…λ₯˜ (κ΅ν™˜ μ œμ•ˆ, 판맀 μ™„λ£Œ λ“± ꡬ뢄)