admin后台 第一阶段目录优化
This commit is contained in:
Vendored
-5
@@ -12,11 +12,6 @@ export {}
|
||||
declare module 'vue' {
|
||||
export interface GlobalComponents {
|
||||
AdminPageHeader: typeof import('./components/admin/AdminPageHeader.vue')['default']
|
||||
AdminPlatformAgisoSection: typeof import('./components/admin/AdminPlatformAgisoSection.vue')['default']
|
||||
AdminPlatformCloudtentaclesSection: typeof import('./components/admin/AdminPlatformCloudtentaclesSection.vue')['default']
|
||||
AdminPlatformKuaishouEticketSection: typeof import('./components/admin/AdminPlatformKuaishouEticketSection.vue')['default']
|
||||
AdminPlatformNinetyoneSection: typeof import('./components/admin/AdminPlatformNinetyoneSection.vue')['default']
|
||||
AdminPlatformNotificationSection: typeof import('./components/admin/AdminPlatformNotificationSection.vue')['default']
|
||||
AdminResultCard: typeof import('./components/admin/AdminResultCard.vue')['default']
|
||||
AdminStatusTag: typeof import('./components/admin/AdminStatusTag.vue')['default']
|
||||
ElAlert: typeof import('element-plus/es')['ElAlert']
|
||||
|
||||
@@ -26,11 +26,11 @@ const router = createRouter({
|
||||
},
|
||||
{
|
||||
path: '/admin/login',
|
||||
component: () => import('@/views/admin/AdminLoginView.vue'),
|
||||
component: () => import('@/views/admin/auth/AdminLoginView.vue'),
|
||||
},
|
||||
{
|
||||
path: '/admin',
|
||||
component: () => import('@/views/admin/AdminLayout.vue'),
|
||||
component: () => import('@/views/admin/layout/AdminLayout.vue'),
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
@@ -38,32 +38,32 @@ const router = createRouter({
|
||||
},
|
||||
{
|
||||
path: 'dashboard',
|
||||
component: () => import('@/views/admin/AdminDashboardView.vue'),
|
||||
component: () => import('@/views/admin/dashboard/AdminDashboardView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'users',
|
||||
meta: { allowedRoles: ['admin'] },
|
||||
component: () => import('@/views/admin/AdminUsersView.vue'),
|
||||
component: () => import('@/views/admin/users/AdminUsersView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'orders',
|
||||
component: () => import('@/views/admin/AdminOrdersView.vue'),
|
||||
component: () => import('@/views/admin/orders/AdminOrdersView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'orders/:orderId',
|
||||
component: () => import('@/views/admin/AdminOrderDetailView.vue'),
|
||||
component: () => import('@/views/admin/orders/AdminOrderDetailView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'tasks',
|
||||
component: () => import('@/views/admin/AdminTasksView.vue'),
|
||||
component: () => import('@/views/admin/tasks/AdminTasksView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'manual-redeem',
|
||||
component: () => import('@/views/admin/AdminManualRedeemView.vue'),
|
||||
component: () => import('@/views/admin/manual-redeem/AdminManualRedeemView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'tasks/:taskId',
|
||||
component: () => import('@/views/admin/AdminTaskDetailView.vue'),
|
||||
component: () => import('@/views/admin/tasks/AdminTaskDetailView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'cdks',
|
||||
@@ -72,26 +72,26 @@ const router = createRouter({
|
||||
{
|
||||
path: 'inventory',
|
||||
meta: { allowedRoles: ['admin', 'operator'] },
|
||||
component: () => import('@/views/admin/AdminInventoryView.vue'),
|
||||
component: () => import('@/views/admin/inventory/AdminInventoryView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'message-deliveries',
|
||||
component: () => import('@/views/admin/AdminMessageDeliveriesView.vue'),
|
||||
component: () => import('@/views/admin/message-deliveries/AdminMessageDeliveriesView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'webhook-events',
|
||||
meta: { allowedRoles: ['admin', 'operator'] },
|
||||
component: () => import('@/views/admin/AdminWebhookEventsView.vue'),
|
||||
component: () => import('@/views/admin/webhook-events/AdminWebhookEventsView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'platform-shops',
|
||||
meta: { allowedRoles: ['admin'] },
|
||||
component: () => import('@/views/admin/AdminPlatformShopsView.vue'),
|
||||
component: () => import('@/views/admin/platform-shops/AdminPlatformShopsView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'platform-fulfillment',
|
||||
meta: { allowedRoles: ['admin'] },
|
||||
component: () => import('@/views/admin/AdminFulfillmentConfigHubView.vue'),
|
||||
component: () => import('@/views/admin/fulfillment/AdminFulfillmentConfigHubView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'platform-kuaishou-cloud-fulfillment',
|
||||
@@ -101,12 +101,12 @@ const router = createRouter({
|
||||
{
|
||||
path: 'webhook-events/:eventId',
|
||||
meta: { allowedRoles: ['admin', 'operator'] },
|
||||
component: () => import('@/views/admin/AdminWebhookEventDetailView.vue'),
|
||||
component: () => import('@/views/admin/webhook-events/AdminWebhookEventDetailView.vue'),
|
||||
},
|
||||
{
|
||||
path: 'audit-logs',
|
||||
meta: { allowedRoles: ['admin'] },
|
||||
component: () => import('@/views/admin/AdminAuditLogsView.vue'),
|
||||
component: () => import('@/views/admin/audit-logs/AdminAuditLogsView.vue'),
|
||||
},
|
||||
],
|
||||
},
|
||||
|
||||
+1
-1
@@ -170,7 +170,7 @@ onMounted(loadAuditLogs)
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
@import '../../styles/admin-list-pages.css';
|
||||
@import '../../../styles/admin-list-pages.css';
|
||||
|
||||
.total-label {
|
||||
color: var(--text-secondary);
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
@import '../../styles/admin-config-pages.css';
|
||||
@import '../../../styles/admin-config-pages.css';
|
||||
|
||||
/* ============================================================
|
||||
AdminFulfillmentBindings — 绿色主题覆盖 & 页面特有样式
|
||||
+2
-2
@@ -2,8 +2,8 @@
|
||||
import { computed } from 'vue'
|
||||
import { useRoute, useRouter } from 'vue-router'
|
||||
|
||||
import AdminFulfillmentBindingsView from '@/views/admin/AdminFulfillmentBindingsView.vue'
|
||||
import AdminKuaishouCloudFulfillmentView from '@/views/admin/AdminKuaishouCloudFulfillmentView.vue'
|
||||
import AdminFulfillmentBindingsView from './AdminFulfillmentBindingsView.vue'
|
||||
import AdminKuaishouCloudFulfillmentView from './AdminKuaishouCloudFulfillmentView.vue'
|
||||
|
||||
type FulfillmentTabKey = 'legacy' | 'kuaishou-cloud'
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
@import '../../styles/admin-config-pages.css';
|
||||
@import '../../../styles/admin-config-pages.css';
|
||||
|
||||
.admin-panel {
|
||||
--panel-ink: var(--text-primary);
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
@import '../../styles/admin-list-pages.css';
|
||||
@import '../../../styles/admin-list-pages.css';
|
||||
|
||||
.form-grid {
|
||||
display: grid;
|
||||
+1
-1
@@ -195,7 +195,7 @@ onMounted(loadMessageDeliveries)
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
@import '../../styles/admin-list-pages.css';
|
||||
@import '../../../styles/admin-list-pages.css';
|
||||
|
||||
.filter-grid {
|
||||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||
+1
-1
@@ -244,7 +244,7 @@ onMounted(loadOrders)
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
@import '../../styles/admin-list-pages.css';
|
||||
@import '../../../styles/admin-list-pages.css';
|
||||
|
||||
.filter-grid {
|
||||
grid-template-columns: minmax(200px, 1fr) minmax(130px, 0.6fr) minmax(180px, 0.9fr) minmax(320px, 1.4fr) minmax(150px, 0.55fr);
|
||||
+11
-11
@@ -3,17 +3,6 @@ import { onMounted, ref } from 'vue'
|
||||
import { RefreshRight } from '@element-plus/icons-vue'
|
||||
|
||||
import AdminPageHeader from '@/components/admin/AdminPageHeader.vue'
|
||||
import AdminPlatformAgisoSection from '@/components/admin/AdminPlatformAgisoSection.vue'
|
||||
import AdminPlatformCloudtentaclesSection from '@/components/admin/AdminPlatformCloudtentaclesSection.vue'
|
||||
import AdminPlatformNinetyoneSection from '@/components/admin/AdminPlatformNinetyoneSection.vue'
|
||||
import AdminPlatformNotificationSection from '@/components/admin/AdminPlatformNotificationSection.vue'
|
||||
import AdminPlatformKuaishouEticketSection from '@/components/admin/AdminPlatformKuaishouEticketSection.vue'
|
||||
import { useAdminAgisoPlatform } from '@/composables/admin/platform-shops/useAdminAgisoPlatform'
|
||||
import { useAdminCloudtentaclesPlatform } from '@/composables/admin/platform-shops/useAdminCloudtentaclesPlatform'
|
||||
import { useAdminNinetyonePlatform } from '@/composables/admin/platform-shops/useAdminNinetyonePlatform'
|
||||
import { useAdminNotificationPlatform } from '@/composables/admin/platform-shops/useAdminNotificationPlatform'
|
||||
import { useAdminKuaishouEticketPlatform } from '@/composables/admin/platform-shops/useAdminKuaishouEticketPlatform'
|
||||
import type { PlatformTab } from '@/composables/admin/platform-shops/types'
|
||||
import {
|
||||
fetchAdminAgisoShopConfigs,
|
||||
fetchAdminCloudtentaclesSourceConfig,
|
||||
@@ -22,6 +11,17 @@ import {
|
||||
fetchAdminScheduledJobsConfig,
|
||||
} from '@/services/admin'
|
||||
import { hasAdminRole } from '@/utils/admin-auth'
|
||||
import AdminPlatformAgisoSection from './components/AdminPlatformAgisoSection.vue'
|
||||
import AdminPlatformCloudtentaclesSection from './components/AdminPlatformCloudtentaclesSection.vue'
|
||||
import AdminPlatformNinetyoneSection from './components/AdminPlatformNinetyoneSection.vue'
|
||||
import AdminPlatformNotificationSection from './components/AdminPlatformNotificationSection.vue'
|
||||
import AdminPlatformKuaishouEticketSection from './components/AdminPlatformKuaishouEticketSection.vue'
|
||||
import { useAdminAgisoPlatform } from './composables/useAdminAgisoPlatform'
|
||||
import { useAdminCloudtentaclesPlatform } from './composables/useAdminCloudtentaclesPlatform'
|
||||
import { useAdminNinetyonePlatform } from './composables/useAdminNinetyonePlatform'
|
||||
import { useAdminNotificationPlatform } from './composables/useAdminNotificationPlatform'
|
||||
import { useAdminKuaishouEticketPlatform } from './composables/useAdminKuaishouEticketPlatform'
|
||||
import type { PlatformTab } from './composables/types'
|
||||
|
||||
const loading = ref(true)
|
||||
const isDevMode = import.meta.env.DEV
|
||||
+1
-1
@@ -2,7 +2,7 @@
|
||||
import type { AdminAgisoObservedShopItem } from '@/types/admin'
|
||||
import { formatAdminDateTime } from '@/utils/admin-time'
|
||||
|
||||
import type { EditableDefaults, EditableShop } from '@/composables/admin/platform-shops/types'
|
||||
import type { EditableDefaults, EditableShop } from '../composables/types'
|
||||
|
||||
type Props = {
|
||||
agisoFilePath: string
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import type { EditableKuaishouEticketShop } from '@/composables/admin/platform-shops/types'
|
||||
import type { EditableKuaishouEticketShop } from '../composables/types'
|
||||
import type {
|
||||
AdminKuaishouEticketConsumeResult,
|
||||
AdminKuaishouEticketDetailResult,
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
<script setup lang="ts">
|
||||
import { computed } from 'vue'
|
||||
import type { AdminNotificationTestResult, AdminScheduledJobRuntimeState } from '@/types/admin'
|
||||
import type { EditableNotificationRecipient, EditableScheduledJob } from '@/composables/admin/platform-shops/types'
|
||||
import type { EditableNotificationRecipient, EditableScheduledJob } from '../composables/types'
|
||||
import { formatAdminDateTime } from '@/utils/admin-time'
|
||||
|
||||
type Props = {
|
||||
+1
-1
@@ -287,7 +287,7 @@ function resetFilters() {
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
@import '../../styles/admin-list-pages.css';
|
||||
@import '../../../styles/admin-list-pages.css';
|
||||
|
||||
.filter-grid {
|
||||
grid-template-columns: minmax(150px, 0.75fr) minmax(220px, 1fr) minmax(220px, 1fr) minmax(210px, 0.95fr);
|
||||
+1
-1
@@ -206,7 +206,7 @@ onMounted(loadUsers)
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
@import '../../styles/admin-list-pages.css';
|
||||
@import '../../../styles/admin-list-pages.css';
|
||||
|
||||
.users-tools {
|
||||
display: grid;
|
||||
+1
-1
@@ -233,7 +233,7 @@ onMounted(loadEvents)
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
@import '../../styles/admin-list-pages.css';
|
||||
@import '../../../styles/admin-list-pages.css';
|
||||
|
||||
.filter-grid {
|
||||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||
Reference in New Issue
Block a user