diff --git a/app/services/lotto/page.tsx b/app/services/lotto/page.tsx index b2c3273..48c539c 100644 --- a/app/services/lotto/page.tsx +++ b/app/services/lotto/page.tsx @@ -221,6 +221,65 @@ export default function LottoPage() { + {/* ─── 기능 비교표 ─── */} +
+
+
+

PLAN FEATURES

+

플랜별 기능 비교

+

내게 맞는 플랜을 선택하세요

+
+
+ + + + + + + + + + + {[ + { feature: '번호 생성 횟수', gold: '1세트/일', plat: '3세트/일', dia: '무제한' }, + { feature: '배치 생성 (동시)', gold: '—', plat: '—', dia: '5개 동시' }, + { feature: '전략 선택 (균형/고위험/안정)', gold: '✓', plat: '✓', dia: '✓' }, + { feature: '이번 주 공략 리포트', gold: '✓', plat: '✓', dia: '✓' }, + { feature: '핫/콜드 번호 분석', gold: '✓', plat: '✓', dia: '✓' }, + { feature: '구매 기록 관리', gold: '✓', plat: '✓', dia: '✓' }, + { feature: '내 패턴 AI 분석', gold: '—', plat: '✓', dia: '✓' }, + { feature: '연간 당첨 패턴 리포트', gold: '—', plat: '—', dia: '✓' }, + { feature: '우선 고객 지원', gold: '—', plat: '—', dia: '✓' }, + ].map((row, i) => ( + + + + + + + ))} + +
기능 +
🥇 골드
+
900원/월
+
+
💎 플래티넘
+
2,900원/월
+
추천
+
+
👑 다이아
+
9,900원/월
+
{row.feature} + {row.gold} + + {row.plat} + + {row.dia} +
+
+
+
+ {/* ─── 요금제 ─── */}
diff --git a/app/services/lotto/recommend/page.tsx b/app/services/lotto/recommend/page.tsx index c1272ac..2f866ec 100644 --- a/app/services/lotto/recommend/page.tsx +++ b/app/services/lotto/recommend/page.tsx @@ -157,6 +157,18 @@ const PLAN_MAX_COMBOS: Record = { lotto_diamond: 999, }; +const PLAN_RANK: Record = { lotto_gold: 1, lotto_platinum: 2, lotto_diamond: 3 }; +function planGte(userPlan: string, required: string): boolean { + return (PLAN_RANK[userPlan] ?? 0) >= (PLAN_RANK[required] ?? 1); +} + +const TABS_CONFIG = [ + { key: 'generate' as const, label: '🎲 번호 생성', requiredPlan: null as string | null, planBadge: null as string | null }, + { key: 'report' as const, label: '📋 이번 주 공략', requiredPlan: 'lotto_gold' as string | null, planBadge: '🥇 GOLD+' as string | null }, + { key: 'purchase' as const, label: '💰 구매 기록', requiredPlan: 'lotto_gold' as string | null, planBadge: '🥇 GOLD+' as string | null }, + { key: 'pattern' as const, label: '🔍 내 패턴', requiredPlan: 'lotto_platinum' as string | null, planBadge: '💎 PLATINUM+' as string | null }, +]; + // ─── Lotto Ball ─────────────────────────────────────────────────────────────── function getBallStyle(n: number): { bg: string; shadow: string; text: string } { @@ -566,31 +578,75 @@ export default function LottoRecommendPage() { {/* ── 탭 네비게이션 ── */} {isSubscribed && (
- {([ - { key: 'generate', label: '🎲 번호 생성' }, - { key: 'report', label: '📋 이번 주 공략' }, - { key: 'purchase', label: '💰 구매 기록' }, - { key: 'pattern', label: '🔍 내 패턴' }, - ] as const).map(tab => ( - - ))} + {TABS_CONFIG.map(tab => { + const isLocked = tab.requiredPlan !== null && !planGte(plan, tab.requiredPlan); + const isActive = activeTab === tab.key; + return ( + + ); + })}
)} {/* ── 탭별 컨텐츠: 공략/구매/패턴 ── */} {isSubscribed && activeTab === 'report' && } {isSubscribed && activeTab === 'purchase' && } - {isSubscribed && activeTab === 'pattern' && } + {isSubscribed && activeTab === 'pattern' && ( + planGte(plan, 'lotto_platinum') ? ( + + ) : ( + // 플래티넘 미만 → 업셀 카드 +
+
+ 🔍 +
+
PLATINUM PLAN REQUIRED
+

내 번호 패턴 분석

+

+ 내가 자주 선택하는 번호, 기피하는 번호, 구간 분포를 AI가 분석합니다.
+ 실제 당첨 패턴과 비교해 최적 전략을 도출해드립니다. +

+
+ {['내 번호 빈도 분석', '기피 번호 감지', '구간 분포 히트맵', '당첨 패턴 비교'].map(f => ( + {f} + ))} +
+ + 💎 플래티넘으로 업그레이드 → + +

+ 현재 플랜: {PLAN_LABELS[plan] ?? plan} · 플래티넘 2,900원/월 +

+
+ ) + )} {/* ── 기존 메인 콘텐츠 (번호 생성 탭 or 비구독) ── */}
@@ -831,7 +887,7 @@ export default function LottoRecommendPage() {
{/* 프리미엄 컨텐츠 */} -
+
{/* ── 번호 생성 메인 카드 ── */}
@@ -1130,35 +1186,81 @@ export default function LottoRecommendPage() { )}
- {/* ── 비구독자 잠금 오버레이 ── */} - {!isSubscribed && ( -
-
-
- - - - -
-
SUBSCRIPTION REQUIRED
-

구독하면 더 많이 받을 수 있어요

-

- 골드 주 1회 · 플래티넘 주 3회 · 다이아 무제한
- 핫/콜드 번호 분석 · 시뮬레이션 통계 · 연간 패턴 리포트 -

-
- - 구독 플랜 보기 → - - - 로그인 - -
-
-
- )}
+ {/* ── 비구독자 업셀 블록 ── */} + {!isSubscribed && ( +
+ {/* 구분선 */} +
+
+ 구독하면 이런 것들도 +
+
+ + {/* 플랜별 기능 미리보기 카드 3개 */} +
+ {[ + { + plan: '🥇 골드 플랜', + price: '900원/월', + color: '#fbbf24', + colorAlpha: 'rgba(251,191,36,.12)', + borderColor: 'rgba(251,191,36,.25)', + features: ['번호 1세트/일 생성', '이번 주 공략 리포트', '핫/콜드 번호 분석', '구매 기록 관리'], + cta: '골드 시작하기', + recommended: false, + }, + { + plan: '💎 플래티넘 플랜', + price: '2,900원/월', + color: '#a78bfa', + colorAlpha: 'rgba(167,139,250,.12)', + borderColor: 'rgba(167,139,250,.3)', + features: ['번호 3세트/일 생성', '전략별 생성 (균형/고위험/안정)', '내 패턴 AI 분석', '상세 통계 대시보드'], + cta: '플래티넘 시작하기', + recommended: true, + }, + { + plan: '👑 다이아 플랜', + price: '9,900원/월', + color: '#38bdf8', + colorAlpha: 'rgba(56,189,248,.1)', + borderColor: 'rgba(56,189,248,.25)', + features: ['번호 무제한 생성', '배치 생성 (5개 동시)', '연간 당첨 패턴 리포트', '우선 고객 지원'], + cta: '다이아 시작하기', + recommended: false, + }, + ].map(p => ( +
+ {p.recommended && ( +
추천
+ )} +
{p.plan}
+
{p.price}
+
    + {p.features.map(f => ( +
  • +
    + {f} +
  • + ))} +
+ + {p.cta} → + +
+ ))} +
+ + +
+ )} + {/* ── 소셜 증거 패널 ── */}
COMMUNITY