import { useEffect, useState } from 'react'; import { Link } from 'react-router-dom'; import { request } from '../lib/api'; import { usePartnerSession } from '../contexts/PartnerSessionContext'; import { contactSupport } from '../lib/contact'; import { isPrimaryAccount } from '../lib/partnerAccess'; import { toastError } from '../lib/toast'; type CenterPageProps = { /** 子账号个人中心复用 */ variant?: 'primary' | 'sub'; roleLabel?: string; }; export default function CenterPage({ variant = 'primary', roleLabel }: CenterPageProps) { const { account, logout, refresh } = usePartnerSession(); const isPrimary = variant === 'primary' && isPrimaryAccount(account); const [name, setName] = useState(account?.name ?? ''); const [saving, setSaving] = useState(false); useEffect(() => { document.title = isPrimary ? '合伙人中心' : '个人中心'; }, [isPrimary]); useEffect(() => { setName(account?.name ?? ''); }, [account?.name]); async function handleSave() { const trimmed = name.trim(); if (!trimmed) { toastError('请输入姓名'); return; } if (trimmed === account?.name) return; setSaving(true); try { await request('PARTNER_H5', '/partner/me', { method: 'PUT', body: JSON.stringify({ name: trimmed }), }); await refresh(); } finally { setSaving(false); } } function handleContactPartner() { if (isPrimary) { if (!contactSupport()) toastError('暂无客服电话'); return; } if (!account?.primaryPhone) { toastError('暂无合伙人联系方式'); return; } window.location.href = `tel:${account.primaryPhone}`; } return (
{account?.phone || ''}
手机号由管理员维护,如需修改请联系总部
传承千年 · 杜康好客