diff --git a/backend/templates/admin_members.html b/backend/templates/admin_members.html index d9b650d..620cf0d 100644 --- a/backend/templates/admin_members.html +++ b/backend/templates/admin_members.html @@ -829,15 +829,24 @@ function viewDetail(idx) { currentDetailMember = membersData[idx]; - const phone = currentDetailMember.phone.replace(/-/g, '').replace(/ /g, ''); + const phone = (currentDetailMember.phone || '').replace(/-/g, '').replace(/ /g, ''); // 모달 열기 document.getElementById('detailModal').classList.add('active'); document.getElementById('detailName').textContent = currentDetailMember.name || '이름 없음'; - document.getElementById('detailPhone').textContent = formatPhone(currentDetailMember.phone); + document.getElementById('detailPhone').textContent = formatPhone(currentDetailMember.phone) || '전화번호 없음'; document.getElementById('detailBalance').textContent = '로딩...'; document.getElementById('detailContent').innerHTML = '
데이터를 불러오는 중...
'; + // 전화번호 없으면 바로 안내 + if (!phone) { + document.getElementById('detailBalance').textContent = '-'; + document.getElementById('detailContent').innerHTML = + '
📵 전화번호가 등록되지 않은 회원입니다
POS에 전화번호를 등록하면 조회 가능합니다
'; + detailData = { mileage: null, purchases: [], prescriptions: [], interests: [] }; + return; + } + // 데이터 로드 fetch(`/api/members/history/${phone}`) .then(res => res.json())