diff --git a/docs/design/place-db.md b/docs/design/place-db.md index b5bf835..568379d 100644 --- a/docs/design/place-db.md +++ b/docs/design/place-db.md @@ -380,7 +380,9 @@ node dist/commands/place-sync.js tour-kor | `GET /api/events/{id}` | 소개·공연 시간·요금·장소·홈페이지·전화·출처. 숨김이면 RES_001 | - **화면 규칙**(2026-11-03 합의): - - 홈 '이번 주말 축제·행사' = `from`=토 · `to`=일 · 동네 중심 좌표 · `radius`=120000 → 대구 행사가 먼저, 다음 경북(거리 표시 "대구에서 85km"). + - 홈 '이번 주말 축제·행사' = `from`=토 · `to`=일 · 동네 중심 좌표 · `radius`=50000 → 대구 전역(군위 포함)과 경산·칠곡 등 바로 옆 도시까지 거리순. + 처음(2026-11-03)에는 관광공사 행사뿐이라 120km(경북)였다. KOPIS·문화포털이 들어온 뒤 대구 도심 기준 이번 주말 50km 32건 · 120km 42건이 되었고, + 120km 면 영덕·영주(차로 2시간)까지 나와 2026-11-04 50km 로 줄였다. - **비면** 같은 반경으로 `from`=오늘 · `to`=오늘+30일을 불러 제목을 '다가오는 축제·행사'로 바꿔 보여 준다(빈 칸을 두지 않는다). - 장소 상세 '근처 축제·행사' = 장소 좌표 + 기본 반경(5km), 없으면 칸을 숨긴다. - 계약 테스트: `backend/test/festival.e2e-spec.ts` — 2030년 날짜·동해 좌표 픽스처라 실행 날짜와 무관하다. diff --git a/flutter/lib/features/event/presentation/providers/event_providers.dart b/flutter/lib/features/event/presentation/providers/event_providers.dart index 04337fe..deacc6e 100644 --- a/flutter/lib/features/event/presentation/providers/event_providers.dart +++ b/flutter/lib/features/event/presentation/providers/event_providers.dart @@ -6,8 +6,10 @@ import 'package:wandergo/features/event/data/models/event_models.dart'; import 'package:wandergo/features/event/data/repositories/event_repository.dart'; import 'package:wandergo/features/location/presentation/providers/base_location_provider.dart'; -/// 홈 축제 칸 반경 — 대구 근교(경북)까지 거리순(대구 먼저). 2026-11-03 합의 -const int kHomeEventRadiusM = 120000; +/// 홈 축제 칸 반경 — 대구 전역(군위 포함)과 경산·칠곡 같은 바로 옆 도시까지, 거리순. +/// 2026-11-03 에는 관광공사 행사뿐이라 120km(경북)였으나, KOPIS·문화포털이 들어와 +/// 대구 안에서도 충분히 차서 2026-11-04 50km 로 줄였다(120km 면 영덕·영주 등 차로 2시간 거리까지 나왔다). +const int kHomeEventRadiusM = 50000; /// 주말이 비었을 때 대신 보이는 '다가오는' 기간(일) const int kUpcomingDays = 30; @@ -32,7 +34,7 @@ class HomeEvents { final bool isUpcoming; } -/// 홈 '이번 주말 축제·행사' — 기준 위치 반경 120km 거리순, 비면 같은 반경 30일 +/// 홈 '이번 주말 축제·행사' — 기준 위치 반경 50km 거리순, 비면 같은 반경 30일 final homeEventsProvider = FutureProvider((ref) async { final base = await ref.watch(basePointProvider.future); final repo = ref.watch(eventRepositoryProvider);