feat(M08-D): 补审计日志与系统配置

This commit is contained in:
Codex
2026-08-10 13:28:54 +08:00
parent bd00aa6275
commit 7e170e8743
13 changed files with 794 additions and 3 deletions
+10 -1
View File
@@ -13,6 +13,7 @@
<button class="nav-item" :class="{ active: activeModule === 'platformApps' }" type="button" @click="activeModule = 'platformApps'"><PanelsTopLeft :size="18" /><span>小程序租户</span></button>
<button class="nav-item" :class="{ active: activeModule === 'content' }" type="button" @click="activeModule = 'content'"><Images :size="18" /><span>广告装修</span></button>
<button class="nav-item" :class="{ active: activeModule === 'franchise' }" type="button" @click="activeModule = 'franchise'"><Handshake :size="18" /><span>加盟跟进</span></button>
<button class="nav-item" :class="{ active: activeModule === 'system' }" type="button" @click="activeModule = 'system'"><ScrollText :size="18" /><span>日志配置</span></button>
<button
class="nav-item"
:class="{ active: activeModule === 'overview' }"
@@ -130,6 +131,11 @@
:session="session"
/>
<LogsSystemPanel
v-else-if="activeModule === 'system'"
:session="session"
/>
<StoresRoomsPanel
v-else-if="activeModule === 'stores'"
:session="session"
@@ -329,6 +335,7 @@ import {
PanelsTopLeft,
RadioTower,
RotateCcw,
ScrollText,
Save,
Send,
Sparkles,
@@ -352,6 +359,7 @@ import DevicesPanel from './components/DevicesPanel.vue';
import PlatformAppsPanel from './components/PlatformAppsPanel.vue';
import ContentManagementPanel from './components/ContentManagementPanel.vue';
import FranchisePanel from './components/FranchisePanel.vue';
import LogsSystemPanel from './components/LogsSystemPanel.vue';
import {
ApiError,
assignCleaningTask,
@@ -388,7 +396,7 @@ import { money } from './format';
const savedToken = ref(localStorage.getItem('qipai.admin.token') || '');
const tokenDraft = ref(savedToken.value);
const activeModule = ref<'overview' | 'platformApps' | 'content' | 'franchise' | 'stores' | 'orders' | 'devices' | 'payments' | 'thirdParty' | 'people' | 'cleaning'>('overview');
const activeModule = ref<'overview' | 'platformApps' | 'content' | 'franchise' | 'system' | 'stores' | 'orders' | 'devices' | 'payments' | 'thirdParty' | 'people' | 'cleaning'>('overview');
const activeTab = ref('tasks');
const lastError = ref('');
const lastMessage = ref('');
@@ -402,6 +410,7 @@ const activeModuleMeta = computed(() => ({
platformApps: { stage: 'M08-D', title: '多小程序与租户品牌配置' },
content: { stage: 'M08-D', title: '广告投放与门店装修' },
franchise: { stage: 'M08-D', title: '加盟申请与跟进运营' },
system: { stage: 'M08-D', title: '安全审计与系统配置' },
stores: { stage: 'M08-D', title: '门店与房间管理' },
orders: { stage: 'M08-D', title: '订单筛选与运营处置' },
devices: { stage: 'M08-D', title: '设备资产、拓扑与控制' },