Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
16 changes: 11 additions & 5 deletions backend/src/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

if _sys.platform == "win32":
import asyncio as _asyncio

_asyncio.set_event_loop_policy(_asyncio.WindowsSelectorEventLoopPolicy())

import asyncio
Expand Down Expand Up @@ -785,11 +786,16 @@ async def _collect_same_brand_locations(
if s.get("dong_name") not in target_set:
_stats["dong_drop"] += 1
continue
# 옵션 A: target_category 지정 시 매장 category 일치 필수.
# target_category 미지정 (구버전 또는 admin 등) 시 필터 비활성.
if target_category is not None and s.get("category") != target_category:
_stats["cat_drop"] += 1
continue
# 옵션 A: target_category 지정 시 매장 category 일치 필수 — misalign 차단용
# (메가커피 계정이 치킨 시뮬 돌리면 자사 매장 0개).
# 단 "기타" 는 카카오 분류 누락 케이스 (브랜드 명확하지만 category 미지정).
# brand 매칭으로 이미 정확히 골라진 매장이라 통과시킴 (cat misalign 아님).
# target_category 미지정 (구버전 또는 admin) 시 필터 비활성.
if target_category is not None:
store_cat = s.get("category") or ""
if store_cat != target_category and store_cat != "기타":
_stats["cat_drop"] += 1
continue
lat_v = s.get("lat")
lon_v = s.get("lon")
if not lat_v or not lon_v:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -481,7 +481,7 @@ export function MarketMap({
if (isSelfBrand) {
// 자사 매장 별표 — Layer 3 sameBrand 마커와 동일 디자인.
dot.style.cssText =
'position:relative;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#fbbf24;border:2px solid #ffffff;border-radius:9999px;box-shadow:0 0 8px rgba(251,191,36,0.6);font-size:12px;font-weight:900;color:#1c1917;cursor:pointer;';
'position:relative;width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:#fbbf24;border:2px solid #ffffff;border-radius:9999px;box-shadow:0 0 6px rgba(251,191,36,0.7);font-size:10px;font-weight:900;color:#1c1917;cursor:pointer;';
dot.innerHTML = '★';
dot.title = `${c.brand_name || '자사매장'} · ${c.place_name}`;
} else {
Expand Down Expand Up @@ -547,11 +547,10 @@ export function MarketMap({
return;
}
const pos = new maps.LatLng(s.lat, s.lng);
// 로고 아이콘 마커 — 금색 동그라미 + 작은 펄스 (자사 매장 표시).
// 로고 아이콘 마커 — 금색 동그라미 (자사 매장 표시). 18px 콤팩트 사이즈.
const logo = document.createElement('div');
// DEBUG: 별표 안 보이는 이슈 — 디자인 강화 (크기↑ + 강한 그림자 + 외곽선 추가).
logo.style.cssText =
'position:relative;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#fbbf24;border:3px solid #ffffff;border-radius:9999px;box-shadow:0 0 16px rgba(251,191,36,0.95),0 0 4px rgba(0,0,0,0.5);font-size:18px;font-weight:900;color:#1c1917;cursor:pointer;outline:2px solid #f59e0b;outline-offset:1px;';
'position:relative;width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:#fbbf24;border:2px solid #ffffff;border-radius:9999px;box-shadow:0 0 6px rgba(251,191,36,0.7);font-size:10px;font-weight:900;color:#1c1917;cursor:pointer;';
logo.innerHTML = '★';
logo.title = `${s.brand_name || '자사매장'} · ${s.place_name}`;
logo.addEventListener('click', (ev) => {
Expand Down
Loading