fix Module Test

This commit is contained in:
jxxghp
2024-05-16 14:18:32 +08:00
parent f55efbe1e2
commit 6b7d0a0fe2
2 changed files with 32 additions and 24 deletions

View File

@@ -2,24 +2,34 @@
import api from '@/api'
// 定义所有的模块ID、名称列表
const modules = ref([
{ id: 'FileTransferModule', name: '媒体目录', state: '', errmsg: '', loading: false },
{ id: 'IndexerModule', name: '站点索引', state: '', errmsg: '', loading: false },
{ id: 'DoubanModule', name: '豆瓣', state: '', errmsg: '', loading: false },
{ id: 'TheMovieDbModule', name: 'TheMovieDb', state: '', errmsg: '', loading: false },
{ id: 'TheTvDbModule', name: 'TheTvDb', state: '', errmsg: '', loading: false },
{ id: 'FanartModule', name: 'Fanart', state: '', errmsg: '', loading: false },
{ id: 'EmbyModule', name: 'Emby', state: '', errmsg: '', loading: false },
{ id: 'JellyfinModule', name: 'Jellyfin', state: '', errmsg: '', loading: false },
{ id: 'PlexModule', name: 'Plex', state: '', errmsg: '', loading: false },
{ id: 'WechatModule', name: '微信', state: '', errmsg: '', loading: false },
{ id: 'TelegramModule', name: 'Telegram', state: '', errmsg: '', loading: false },
{ id: 'SlackModule', name: 'Slack', state: '', errmsg: '', loading: false },
{ id: 'SynologyChatModule', name: 'Synology Chat', state: '', errmsg: '', loading: false },
{ id: 'VoceChatModule', name: 'VoceChat', state: '', errmsg: '', loading: false },
{ id: 'QbittorrentModule', name: 'Qbittorrent', state: '', errmsg: '', loading: false },
{ id: 'TransmissionModule', name: 'Transmission', state: '', errmsg: '', loading: false },
])
const modules = ref<
{
id: string
name: string
state: 'success' | 'error' | 'warning' | 'info' | undefined
errmsg: string
loading: boolean
}[]
>([])
// 调用API查询模块列表
async function getModules() {
try {
const result: { [key: string]: any } = await api.get('system/modulelist')
if (result.success) {
const moduleList = result.data?.modules
if (moduleList) {
moduleList.forEach((module: { id: string; name: string }) => {
modules.value.push({ id: module.id, name: module.name, state: undefined, errmsg: '', loading: false })
})
// 逐个检查所有模块
for (let i = 0; i < modules.value.length; i++) await moduleTest(i)
}
}
} catch (error) {
console.error(error)
}
}
// 调用API测试模块
async function moduleTest(index: number) {
@@ -33,7 +43,7 @@ async function moduleTest(index: number) {
target.state = 'success'
target.name = `${target.name} - 正常`
} else if (result.message?.includes('模块未加载')) {
target.state = ''
target.state = undefined
target.name = `${target.name} - 未启用`
} else {
target.state = 'error'
@@ -44,11 +54,9 @@ async function moduleTest(index: number) {
console.error(error)
}
}
// 加载
onMounted(async () => {
// 逐个检查所有模块
for (let i = 0; i < modules.value.length; i++) await moduleTest(i)
})
onMounted(getModules)
</script>
<template>