diff --git a/static/css/app.css b/static/css/app.css index 877633d..5ab20bd 100644 --- a/static/css/app.css +++ b/static/css/app.css @@ -1,3 +1,6 @@ +/* ================================ + 全局变量和基础样式 + ================================ */ :root { --primary-color: #4f46e5; --primary-hover: #4338ca; @@ -22,7 +25,9 @@ margin: 0; } - /* 侧边栏样式 */ + /* ================================ + 通用布局 - 侧边栏和导航 + ================================ */ .sidebar { position: fixed; top: 0; @@ -190,6 +195,9 @@ margin-bottom: 2rem; } + /* ================================ + 【仪表盘菜单】相关样式 + ================================ */ .stat-card { background: white; border-radius: 12px; @@ -252,7 +260,9 @@ display: block; } - /* 日志管理样式 */ + /* ================================ + 【日志管理菜单】相关样式 + ================================ */ .log-container { height: 70vh; overflow-y: auto; @@ -429,6 +439,9 @@ transform: translateY(0); } + /* ================================ + 【自动回复菜单】相关样式 + ================================ */ .keywords-list { padding: 1.5rem 2rem 2rem; max-height: 500px; @@ -629,7 +642,9 @@ box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1); } - /* 账号状态样式 */ + /* ================================ + 【账号管理菜单】相关样式 + ================================ */ .status-toggle { position: relative; display: inline-block; @@ -768,6 +783,9 @@ transform: translateX(20px); } } + /* ================================ + 通用卡片样式 - 适用于所有菜单的卡片 + ================================ */ .card { background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(10px); @@ -867,6 +885,9 @@ color: white; } + /* ================================ + 通用表格样式 - 适用于所有菜单的表格 + ================================ */ .table { margin-bottom: 0; background: transparent; @@ -976,6 +997,9 @@ margin-bottom: 0.5rem; } + /* ================================ + 通用模态框样式 - 适用于所有菜单的模态框 + ================================ */ .modal-content { border: none; border-radius: 16px; @@ -1052,7 +1076,9 @@ } } - /* 商品管理表格优化 */ + /* ================================ + 【商品管理菜单】表格样式 + ================================ */ #itemsTableBody .btn-group { white-space: nowrap; } @@ -1191,7 +1217,9 @@ } } - /* 通知渠道卡片样式 */ + /* ================================ + 【通知渠道菜单】卡片样式 + ================================ */ .channel-type-card { cursor: pointer; transition: all 0.3s ease; @@ -1288,7 +1316,9 @@ } } - /* 图片关键词相关样式 */ + /* ================================ + 【自动回复菜单】图片关键词样式 + ================================ */ .btn-image { background: linear-gradient(135deg, #28a745, #20c997) !important; border: none !important; diff --git a/static/js/app.js b/static/js/app.js index b5e9dda..6c2828a 100644 --- a/static/js/app.js +++ b/static/js/app.js @@ -1,5 +1,7 @@ -// 全局变量 +// ================================ +// 全局变量和配置 +// ================================ const apiBase = location.origin; let keywordsData = {}; let currentCookieId = ''; @@ -15,7 +17,9 @@ let accountKeywordCache = {}; let cacheTimestamp = 0; const CACHE_DURATION = 30000; // 30秒缓存 -// 菜单切换功能 +// ================================ +// 通用功能 - 菜单切换和导航 +// ================================ function showSection(sectionName) { console.log('切换到页面:', sectionName); // 调试信息 @@ -48,31 +52,31 @@ function showSection(sectionName) { // 根据不同section加载对应数据 switch(sectionName) { - case 'dashboard': + case 'dashboard': // 【仪表盘菜单】 loadDashboard(); break; - case 'accounts': + case 'accounts': // 【账号管理菜单】 loadCookies(); break; - case 'items': + case 'items': // 【商品管理菜单】 loadItems(); break; - case 'auto-reply': + case 'auto-reply': // 【自动回复菜单】 refreshAccountList(); break; - case 'cards': + case 'cards': // 【卡券管理菜单】 loadCards(); break; - case 'auto-delivery': + case 'auto-delivery': // 【自动发货菜单】 loadDeliveryRules(); break; - case 'notification-channels': + case 'notification-channels': // 【通知渠道菜单】 loadNotificationChannels(); break; - case 'message-notifications': + case 'message-notifications': // 【消息通知菜单】 loadMessageNotifications(); break; - case 'logs': + case 'logs': // 【日志管理菜单】 // 如果没有日志数据,则加载 setTimeout(() => { if (!window.allLogs || window.allLogs.length === 0) { @@ -100,6 +104,10 @@ function toggleSidebar() { document.getElementById('sidebar').classList.toggle('show'); } +// ================================ +// 【仪表盘菜单】相关功能 +// ================================ + // 加载仪表盘数据 async function loadDashboard() { try { @@ -281,6 +289,10 @@ function clearKeywordCache() { cacheTimestamp = 0; } +// ================================ +// 【自动回复菜单】相关功能 +// ================================ + // 刷新账号列表(用于自动回复页面) async function refreshAccountList() { try { @@ -902,6 +914,10 @@ function toggleLoading(show) { document.getElementById('loading').classList.toggle('d-none', !show); } +// ================================ +// 通用工具函数 +// ================================ + // 显示提示消息 function showToast(message, type = 'success') { const toastContainer = document.querySelector('.toast-container'); @@ -981,6 +997,10 @@ async function fetchJSON(url, opts = {}) { } } +// ================================ +// 【账号管理菜单】相关功能 +// ================================ + // 加载Cookie列表 async function loadCookies() { try { @@ -2109,7 +2129,9 @@ document.addEventListener('DOMContentLoaded', function() { } }); -// ==================== 通知渠道管理功能 ==================== +// ================================ +// 【通知渠道菜单】相关功能 +// ================================ // 通知渠道类型配置 const channelTypeConfigs = { @@ -2691,7 +2713,9 @@ async function updateNotificationChannel() { } } -// ==================== 消息通知配置功能 ==================== +// ================================ +// 【消息通知菜单】相关功能 +// ================================ // 加载消息通知配置 async function loadMessageNotifications() { @@ -2920,7 +2944,9 @@ async function saveAccountNotification() { } } -// ==================== 卡券管理功能 ==================== +// ================================ +// 【卡券管理菜单】相关功能 +// ================================ // 加载卡券列表 async function loadCards() { @@ -3505,7 +3531,9 @@ async function saveCard() { showToast(`网络错误: ${error.message}`, 'danger'); } } -// ==================== 自动发货功能 ==================== +// ================================ +// 【自动发货菜单】相关功能 +// ================================ // 加载发货规则列表 async function loadDeliveryRules() { @@ -4631,7 +4659,9 @@ async function reloadSystemCache() { } } -// ==================== 商品管理功能 ==================== +// ================================ +// 【商品管理菜单】相关功能 +// ================================ // 切换商品多规格状态 async function toggleItemMultiSpec(cookieId, itemId, isMultiSpec) { @@ -5238,7 +5268,9 @@ function escapeHtml(text) { return div.innerHTML; } -// ==================== 日志管理功能 ==================== +// ================================ +// 【日志管理菜单】相关功能 +// ================================ window.autoRefreshInterval = null; window.allLogs = [];