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 = '创建配置';