refactor: 重构项目,为所有的 AI 工具都引入算力,采用算力统一结算各个工具的调用次数和权限

This commit is contained in:
RockYang
2024-03-12 15:40:44 +08:00
parent 316636f83c
commit e746aafa2f
45 changed files with 438 additions and 298 deletions

View File

@@ -438,7 +438,7 @@
<template #default>
<div class="mj-list-item-prompt">
<span>{{ scope.item.prompt }}</span>
<el-icon class="copy-prompt"
<el-icon class="copy-prompt-mj"
:data-clipboard-text="scope.item.prompt">
<DocumentCopy/>
</el-icon>
@@ -485,7 +485,7 @@
</template>
<script setup>
import {nextTick, onMounted, ref} from "vue"
import {nextTick, onMounted, onUnmounted, ref} from "vue"
import {
ChromeFilled,
Delete,
@@ -662,6 +662,7 @@ const connect = () => {
});
}
const clipboard = ref(null)
onMounted(() => {
checkSession().then(user => {
imgCalls.value = user['img_calls']
@@ -675,16 +676,20 @@ onMounted(() => {
router.push('/login')
});
const clipboard = new Clipboard('.copy-prompt');
clipboard.on('success', () => {
clipboard.value = new Clipboard('.copy-prompt-mj');
clipboard.value.on('success', () => {
ElMessage.success("复制成功!");
})
clipboard.on('error', () => {
clipboard.value.on('error', () => {
ElMessage.error('复制失败!');
})
})
onUnmounted(() => {
clipboard.value.destroy()
})
// 获取运行中的任务
const fetchRunningJobs = () => {
httpGet(`/api/mj/jobs?status=0`).then(res => {
@@ -745,10 +750,14 @@ const fetchFinishJobs = (page) => {
jobs[i]['can_opt'] = true
}
}
finishedJobs.value = finishedJobs.value.concat(jobs)
if (jobs.length < pageSize.value) {
isOver.value = true
}
if (page === 1) {
finishedJobs.value = jobs
} else {
finishedJobs.value = finishedJobs.value.concat(jobs)
}
nextTick(() => loading.value = false)
}).catch(e => {
loading.value = false