| 12345678910111213141516 |
- // 两个后台分别保存演示登录状态;页面地址和账户输入不扩大员工权限。
- function adminProduct(role) { return ['merchant', 'staff', 'supervisor'].includes(role) ? 'merchant' : role === 'platform' ? 'platform' : null; }
- function completeAdminLogin(product, data) {
- if (!data.get('account').trim() || !data.get('password').trim() || product === 'merchant' && !data.get('tenant').trim()) { notify('请填写完整的登录信息。'); return; }
- adminAuth[product] = true;
- const role = product === 'merchant' ? merchantRole : 'platform';
- const target = adminReturn[product]; adminReturn[product] = null;
- notice = '已进入后台演示身份,功能按当前账户权限展示。';
- navigate(role, target?.role === role && target.page !== 'login' ? target.page : roleHomes[role]);
- }
- function loginScreen(product) {
- const merchant = product === 'merchant';
- return `<div class="login-layout"><section class="login-intro"><h1>智服中台</h1><h2>${merchant ? '商家后台' : '平台后台'}</h2><p>${merchant ? '店铺经营 · 客户服务 · 售后管理' : '商家接入 · 资源管理 · 运行监控'}</p></section><section class="surface login-panel"><h2>${merchant ? '商家员工登录' : '平台员工登录'}</h2><p>${merchant ? '使用商家分配的员工账户登录。' : '仅限已授权的平台运营账户。'}</p>${form(`${product}-login`, `${merchant ? field('商家标识', 'tenant', 'merchant-a', 'text', 'required autocomplete="organization"') : ''}${field('员工账户', 'account', '', 'text', 'required autocomplete="username" placeholder="请输入员工账户"')}${field('密码', 'password', '', 'password', 'required autocomplete="current-password" placeholder="线稿演示,请勿输入真实密码"')}`, '登录')}<p class="muted">${merchant ? '账户与权限由商家管理员分配。' : '账户与权限由平台管理员分配。'}</p>${button('忘记密码 / 无法登录', 'admin-login-help')}<div class="hint">线稿使用任意非空账户与密码演示登录。${merchant ? '当前角色由评审工具中的员工角色决定。' : '商家员工账户不获得平台权限。'}</div></section></div>`;
- }
- register('merchant', 'login', 'M00', '商家后台登录', () => loginScreen('merchant'), ['商家标识、员工账户和密码必填;由服务端校验身份、账户状态和所属商家。', '登录成功后加载当前员工授权。无权访问的返回地址进入授权首页。', '登录失败保持页面并显示统一错误提示,密码清空;线稿情景用于确认反馈。']);
- register('platform', 'login', 'P00', '平台后台登录', () => loginScreen('platform'), ['平台账号通过独立的平台权限检查;商家登录状态不能用于平台后台。', '成功登录后进入授权的平台功能;失败不展示受保护内容。', '密码恢复由平台管理员处理,当前不设计自助注册。']);
|