From 855926dd3e6d58fc50cca48f40ae8e15f8362abf Mon Sep 17 00:00:00 2001 From: mediabot-pt <295750538+mediabot-pt@users.noreply.github.com> Date: Wed, 1 Jul 2026 11:43:21 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E7=A7=BB=E9=99=A4=E9=85=8D?= =?UTF-8?q?=E7=BD=AEJSON=20Tab=EF=BC=8C=E5=8F=AA=E4=BF=9D=E7=95=99Groovy?= =?UTF-8?q?=E8=84=9A=E6=9C=AC=E7=BC=96=E8=BE=91=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/views/AccessResultCheck.vue | 95 +++++------------------------ 1 file changed, 15 insertions(+), 80 deletions(-) diff --git a/web/src/views/AccessResultCheck.vue b/web/src/views/AccessResultCheck.vue index 489ea8f..1446516 100644 --- a/web/src/views/AccessResultCheck.vue +++ b/web/src/views/AccessResultCheck.vue @@ -36,54 +36,31 @@ 刷新 重新解析 - + - 编辑脚本 - 查看JSON + 编辑脚本 - - - - -
- 无 JSON 配置,已切换为纯 Groovy 方案 -
- -

-        
- -
加载中...
- -
-
+ + +
加载中...
+
@@ -177,12 +154,8 @@ const loading = ref(false) const parseLoading = ref(false) const selectedConfigId = ref(null) const selectedConfig = ref(null) -const selectedConfigJson = ref('') const configVisible = ref(false) -watch(configVisible, (v) => { if (v) { configTab.value='config'; loadScript() } }) -const configTab = ref('config') -const editing = ref(false) -const editContent = ref('') +watch(configVisible, (v) => { if (v) loadScript() }) const scriptContent = ref('') const scriptLoading = ref(false) const saving = ref(false) @@ -244,16 +217,6 @@ const onConfigChange = async () => { const cfg = allConfigVersions.value.find(v => v.id===selectedConfigId.value) if (!cfg) return selectedConfig.value = cfg - editing.value = false - try { - if (cfg.status==='pending') { - const r = await api.adminConfigs.getContent(cfg.id) - selectedConfigJson.value = r.data?.content||'' - } else { - const r = await api.configs.content(siteId, cfg.version) - selectedConfigJson.value = typeof r.data==='string' ? r.data : JSON.stringify(r.data||{},null,2) - } - } catch { selectedConfigJson.value = '' } await doBatchParse() } @@ -282,8 +245,6 @@ const refresh = async () => { } // 编辑 -const startEdit = () => { editContent.value=selectedConfigJson.value; editing.value=true } -const cancelEdit = () => { editing.value=false } const loadScript = async () => { if (!selectedConfig.value) return scriptLoading.value = true @@ -299,16 +260,6 @@ const saveScript = async () => { } catch(e) { ElMessage.error(e.response?.data?.message||'保存失败') } finally { saving.value = false } } -const saveEdit = async () => { - saving.value = true - try { - await api.adminConfigs.updateContent(selectedConfig.value.id, editContent.value) - selectedConfigJson.value = editContent.value; editing.value = false - ElMessage.success('已保存'); doBatchParse() - } catch(e) { ElMessage.error(e.response?.data?.message||'保存失败') } - finally { saving.value = false } -} - const approveConfig = async () => { try { await ElMessageBox.confirm('确认审批?版本号将自动+1','审批配置',{confirmButtonText:'确认'}) } catch{return} approving.value = true @@ -345,22 +296,6 @@ const statusTag = (code) => { return 'danger' } -const highlightedConfig = computed(() => { - try { return syntaxHighlight(JSON.stringify(JSON.parse(selectedConfigJson.value),null,2)) } - catch { return escapeHtml(selectedConfigJson.value||'') } -}) -const escapeHtml = (s) => { if(!s)return''; return s.replace(/&/g,'&').replace(//g,'>') } -const syntaxHighlight = (json) => escapeHtml(json).replace( - /("(\\u[a-fA-F0-9]{4}|\\[^u]|[^"\\])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, - (m) => { - let cls='number' - if(/^"/.test(m)) cls=/:$/.test(m)?'key':'string' - else if(/true|false/.test(m)) cls='boolean' - else if(/null/.test(m)) cls='null' - return `${m}` - } -) - onMounted(async () => { await refresh() await loadConfigs()