仪表盘
总许可证
{{ stats.total_licenses || 0 }}
已激活
{{ stats.active_licenses || 0 }}
在线设备
{{ stats.online_devices || 0 }}
7日激活
{{ stats.recent_activations || 0 }}
许可证管理
| 密钥 | 类型 | 状态 | 时长 | 激活时间 | 到期时间 | 操作 |
|---|---|---|---|---|---|---|
| {{ lic.license_key?.substring(0,16) }}... | {{ {trial:'试用',standard:'标准',pro:'专业',enterprise:'企业'}[lic.license_type] || lic.license_type }} | {{ {active:'有效',expired:'已过期',inactive:'未激活',revoked:'已吊销'}[lic.status] || lic.status }} | {{ lic.duration_days }}天 | {{ lic.activated_at?.substring(0,10) || '-' }} | {{ lic.expires_at?.substring(0,10) || '-' }} |
设备管理
| 指纹 | 主机名 | CPU | GPU | 内存 | 最后心跳 | 状态 |
|---|---|---|---|---|---|---|
| {{ dev.fingerprint }} | {{ dev.hostname || '-' }} | {{ dev.cpu_info || '-' }} | {{ dev.gpu_info || '-' }} | {{ dev.ram_gb ? dev.ram_gb + 'GB' : '-' }} | {{ dev.last_heartbeat?.substring(0,16) || '-' }} | {{ dev.is_online ? '在线' : '离线' }} |
用户管理
| 用户名 | 手机 | 邮箱 | 状态 | 注册时间 |
|---|---|---|---|---|
| {{ u.username }} | {{ u.phone || '-' }} | {{ u.email || '-' }} | {{ u.status==='active' ? '正常' : '停用' }} | {{ u.created_at?.substring(0,10) || '-' }} |
操作日志
| 时间 | 操作 | 详情 | IP |
|---|---|---|---|
| {{ log.created_at?.substring(0,16) }} | {{ log.action }} | {{ log.detail }} | {{ log.ip_address || '-' }} |
离线激活
为无法联网的设备生成激活码。
流程:用户从客户端复制机器码 → 管理员输入许可证密钥和机器码 → 生成激活码 → 用户在客户端输入激活码完成激活。
流程:用户从客户端复制机器码 → 管理员输入许可证密钥和机器码 → 生成激活码 → 用户在客户端输入激活码完成激活。
许可证类型
{{ {trial:'试用',standard:'标准',pro:'专业',enterprise:'企业'}[offlineResult.license_type] || offlineResult.license_type }}
到期时间
{{ offlineResult.expires_at?.substring(0,10) || '永久' }}
剩余天数
{{ offlineResult.remaining_days }}天
激活码(请复制给用户):
{{ offlineResult.activation_code }}
{{ offlineError }}