feat: 完成独立的邀请与达人榜系统架构

This commit is contained in:
2026-03-12 09:33:38 +08:00
parent af1d1c5ace
commit 0ab0483603
9 changed files with 300 additions and 4 deletions
@@ -648,6 +648,30 @@
</div>
</div>
{{-- 邀请贡献卡片 (仅查看自己资料时显示) --}}
<div x-show="userInfo.username === window.chatContext.username && userInfo.id !== undefined"
style="margin-top: 12px; border-radius: 8px; overflow: hidden; border: 1px dashed #c7d2fe;">
<div
style="background: #e0e7ff; padding: 6px 10px; font-size: 11px; font-weight: bold; color: #4338ca; display: flex; align-items: center; justify-content: space-between;">
<span>🤝 我的邀请推广</span>
<span style="font-size: 10px;">累计邀请:<span x-text="userInfo.invitees_count"
style="color: #ef4444; font-size: 12px;"></span> </span>
</div>
<div
style="padding: 8px 10px; background: #f8fafc; font-size: 11px; display: flex; flex-direction: column; gap: 6px;">
<span style="color: #64748b;">复制下方专属链接,邀请好友注册聊天室:</span>
<div style="display: flex; gap: 6px; align-items: center;">
<input type="text" readonly :value="window.location.origin + '/' + userInfo.id"
style="flex: 1; border: 1px solid #cbd5e1; border-radius: 4px; padding: 4px 6px; font-size: 11px; background: #fff; color: #334155;">
<button
x-on:click="navigator.clipboard.writeText(window.location.origin + '/' + userInfo.id); $alert('邀请链接已复制到剪贴板', '复制成功', '#22c55e');"
style="background: #4f46e5; color: white; border: none; border-radius: 4px; padding: 4px 8px; font-size: 11px; cursor: pointer; font-weight: bold;">
复制
</button>
</div>
</div>
</div>
{{-- 管理员可见区域 (IP 归属地) --}}
<div x-show="userInfo.last_ip !== undefined"
style="margin-top: 8px; border-radius: 8px; overflow: hidden;">