feat: Complete admin panel implementation

- Add user management system with all CRUD operations
- Add promotion statistics dashboard with export
- Simplify Trading & Market settings UI
- Fix promotion schema (dates now optional)
- Add missing API endpoints and PATCH support
- Add comprehensive documentation
- Fix critical bugs (deletePromotion, duplicate endpoints)

All features tested and production-ready.
This commit is contained in:
2026-01-10 21:57:55 +00:00
parent b90cdd59df
commit 63c578b0ae
52 changed files with 21810 additions and 61 deletions

View File

@@ -37,6 +37,21 @@
</button>
</div>
<!-- Users Tab -->
<div v-if="activeTab === 'users'">
<AdminUsersPanel />
</div>
<!-- Config Tab -->
<div v-if="activeTab === 'config'">
<AdminConfigPanel />
</div>
<!-- Debug Tab -->
<div v-if="activeTab === 'debug'">
<AdminDebugPanel />
</div>
<!-- Dashboard Tab -->
<div v-if="activeTab === 'dashboard'" class="space-y-6">
<!-- Quick Stats -->
@@ -735,6 +750,9 @@ import { useRouter } from "vue-router";
import { useAuthStore } from "../stores/auth";
import { useToast } from "vue-toastification";
import axios from "../utils/axios";
import AdminUsersPanel from "../components/AdminUsersPanel.vue";
import AdminConfigPanel from "../components/AdminConfigPanel.vue";
import AdminDebugPanel from "../components/AdminDebugPanel.vue";
import {
Shield,
RefreshCw,
@@ -819,9 +837,12 @@ const isSavingPrice = ref(false);
// Tabs
const tabs = [
{ id: "dashboard", label: "Dashboard", icon: BarChart3 },
{ id: "users", label: "Users", icon: Users },
{ id: "config", label: "Config", icon: Shield },
{ id: "financial", label: "Financial", icon: DollarSign },
{ id: "transactions", label: "Transactions", icon: Activity },
{ id: "items", label: "Items", icon: Box },
{ id: "debug", label: "Debug", icon: Shield },
];
// Games