diff --git a/assets/image_20260713155902656.png b/assets/image_20260713155902656.png new file mode 100644 index 0000000..f232b89 Binary files /dev/null and b/assets/image_20260713155902656.png differ diff --git a/public/static/js/common.js b/public/static/js/common.js index 9e8c230..9f59d4b 100644 --- a/public/static/js/common.js +++ b/public/static/js/common.js @@ -1,31 +1,68 @@ -// 全局错误处理,防止JavaScript错误中断执行 -window.onerror = function(msg, url, line, col, error) { - console.error('JavaScript错误:', msg, 'at', url, 'line:', line); - return true; // 阻止错误传播 -}; - -let editingConfigId = null; -let allFields = []; -let currentPage = 1; -const pageSize = 20; - -// 切换标签页 -function switchTab(tabName, event) { - document.querySelectorAll('.tab').forEach(t => t.classList.remove('active')); - document.querySelectorAll('.tab-content').forEach(t => t.classList.remove('active')); - - if (event && event.target) { - event.target.classList.add('active'); - } - document.getElementById(`${tabName}-tab`).classList.add('active'); - - if (tabName === 'config') { - loadConfigs(); - } else if (tabName === 'generate') { - loadGenerateConfigs(); - } else if (tabName === 'history') { - loadHistory(); +async function loadConfigs() { + try { + const response = await fetch('/api/config'); + const result = await response.json(); + + if (result.success) { + renderConfigList(result.data); + } else { + alert('加载配置失败: ' + result.message); + } + } catch (error) { + alert('加载配置失败: ' + error.message); } } -// 加载配置列表 +// 渲染配置列表 +function renderConfigList(configs) { + const tbody = document.getElementById('config-list'); + + if (configs.length === 0) { + tbody.innerHTML = '暂无配置,请点击"创建配置"按钮'; + return; + } + + tbody.innerHTML = configs.map(config => ` + + ${config.config_name} + ${config.split_type === 'company_id' ? '按企业ID' : '按用户ID'} + ${config.split_name || config.split_value} + ${config.selected_fields.length} + + + ${config.is_active ? '已启用' : '已禁用'} + + + +
+ + + + + + +
+ + + `).join(''); +} + +// 显示创建模态框 +function showCreateModal() { + editingConfigId = null; + document.getElementById('modal-title').textContent = '创建配置'; + document.getElementById('config-name').value = ''; + document.getElementById('split-type').value = ''; + document.getElementById('split-value').innerHTML = ''; + + // 重置字段自定义名头 + fieldCustomNames = {}; + + // 重置合并特来电配置 + const mergeTelecomCheckbox = document.getElementById('merge-telecom'); + const telecomVehicleNoInput = document.getElementById('telecom-vehicle-no'); + const mergeTelecomGroup = document.getElementById('merge-telecom-group'); + if (mergeTelecomCheckbox) mergeTelecomCheckbox.checked = false; + if (telecomVehicleNoInput) telecomVehicleNoInput.value = ''; diff --git a/public/static/js/config.js b/public/static/js/config.js index fc9e57a..c092833 100644 --- a/public/static/js/config.js +++ b/public/static/js/config.js @@ -1,55 +1,3 @@ -async function loadConfigs() { - try { - const response = await fetch('/api/config'); - const result = await response.json(); - - if (result.success) { - renderConfigList(result.data); - } else { - alert('加载配置失败: ' + result.message); - } - } catch (error) { - alert('加载配置失败: ' + error.message); - } -} - -// 渲染配置列表 -function renderConfigList(configs) { - const tbody = document.getElementById('config-list'); - - if (configs.length === 0) { - tbody.innerHTML = '暂无配置,请点击"创建配置"按钮'; - return; - } - - tbody.innerHTML = configs.map(config => ` - - ${config.config_name} - ${config.split_type === 'company_id' ? '按企业ID' : '按用户ID'} - ${config.split_name || config.split_value} - ${config.selected_fields.length} - - - ${config.is_active ? '已启用' : '已禁用'} - - - -
- - - - - - -
- - - `).join(''); -} - -// 显示创建模态框 function showCreateModal() { editingConfigId = null; document.getElementById('modal-title').textContent = '创建配置';