From 7dd8a6662bf24138ec8d9d8e9b011d0873c27fa4 Mon Sep 17 00:00:00 2001 From: jacy-dukang Date: Tue, 7 Jul 2026 14:48:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E4=BC=99=E4=BA=BA=E7=AB=AF=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E9=A1=B5=E9=9D=A2=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/h5-partner/src/pages/LoginPage.tsx | 187 +++++++++--------------- scripts/test-partner-auth.mjs | 8 +- 2 files changed, 70 insertions(+), 125 deletions(-) diff --git a/apps/h5-partner/src/pages/LoginPage.tsx b/apps/h5-partner/src/pages/LoginPage.tsx index 9628b3a..07043eb 100644 --- a/apps/h5-partner/src/pages/LoginPage.tsx +++ b/apps/h5-partner/src/pages/LoginPage.tsx @@ -28,6 +28,9 @@ function formatPartnerError(e: unknown): string { if (text.includes('合伙人账号不存在') || text.includes('未找到合伙人账号')) { return '未找到合伙人账号'; } + if (text.includes('合伙人账号已停用')) { + return '合伙人账号已停用'; + } return text; } @@ -36,14 +39,8 @@ export default function LoginPage() { const [params] = useSearchParams(); const quick = params.get('quick') === '1'; const remembered = loadRememberedPhone(); - const [step, setStep] = useState<'phone' | 'code'>('phone'); const [phone, setPhone] = useState(remembered.phone || '13700000001'); - const [confirmedProfile, setConfirmedProfile] = useState<{ - maskedPhone: string; - name?: string; - companyName?: string; - } | null>(null); - const [code, setCode] = useState('123456'); + const [code, setCode] = useState(''); const [rememberAccount, setRememberAccount] = useState(remembered.remember); const [agreed, setAgreed] = useState(true); const [loading, setLoading] = useState(false); @@ -91,37 +88,6 @@ export default function LoginPage() { } } - function backToPhoneStep() { - setStep('phone'); - setConfirmedProfile(null); - setCode(''); - setMsg(''); - setCodeCooldown(0); - } - - async function confirmPhone() { - if (!ensureAgreed()) return; - setLoading(true); - setMsg(''); - try { - const data = await request<{ ok: boolean; maskedPhone: string; name?: string; companyName?: string }>( - 'PARTNER_H5', - '/partner/auth/phone/check', - { method: 'POST', body: JSON.stringify({ phone }) }, - ); - setConfirmedProfile({ - maskedPhone: data.maskedPhone, - name: data.name, - companyName: data.companyName, - }); - setStep('code'); - } catch (e) { - setMsg(formatPartnerError(e)); - } finally { - setLoading(false); - } - } - async function sendCode() { if (!ensureAgreed()) return; setMsg(''); @@ -130,7 +96,7 @@ export default function LoginPage() { method: 'POST', body: JSON.stringify({ phone, scene: 'PARTNER_LOGIN' }), }); - setMsg('验证码已发送(Mock: 123456)'); + setMsg('验证码已发送'); setCodeCooldown(60); const timer = setInterval(() => { setCodeCooldown((s) => { @@ -146,11 +112,17 @@ export default function LoginPage() { } } - async function login() { - if (!ensureAgreed()) return; + async function login(options?: { quick?: boolean }) { + if (!options?.quick && !ensureAgreed()) return; setLoading(true); setMsg(''); try { + if (options?.quick) { + await request('PARTNER_H5', '/partner/auth/sms/send', { + method: 'POST', + body: JSON.stringify({ phone, scene: 'PARTNER_LOGIN' }), + }); + } const data = await request<{ accessToken: string }>('PARTNER_H5', '/partner/auth/login/sms', { method: 'POST', body: JSON.stringify({ phone, code }), @@ -214,7 +186,7 @@ export default function LoginPage() {