diff --git a/ui/src/api/tool/tool.ts b/ui/src/api/tool/tool.ts index e9436abe5..97f311f9f 100644 --- a/ui/src/api/tool/tool.ts +++ b/ui/src/api/tool/tool.ts @@ -1,20 +1,19 @@ -import {Result} from '@/request/Result' -import {get, post, del, put} from '@/request/index' -import {type Ref} from 'vue' -import type {pageRequest} from '@/api/type/common' -import type {toolData} from '@/api/type/tool' +import { Result } from '@/request/Result' +import { get, post, del, put, exportFile } from '@/request/index' +import { type Ref } from 'vue' +import type { pageRequest } from '@/api/type/common' +import type { toolData } from '@/api/type/tool' const prefix = '/workspace/' + localStorage.getItem('workspace_id') - /** * 获得工具文件夹列表 * @params 参数 {folder_id: string} */ -const getToolByFolder: ( - data?: any, - loading?: Ref, -) => Promise>> = (data, loading) => { +const getToolByFolder: (data?: any, loading?: Ref) => Promise>> = ( + data, + loading, +) => { return get(`${prefix}/tool`, data, loading) } @@ -32,21 +31,17 @@ const getToolList: ( param?: any, loading?: Ref, ) => Promise> = (page, param, loading) => { - return get( - `${prefix}/tool/${page.current_page}/${page.page_size}`, - param, - loading, - ) + return get(`${prefix}/tool/${page.current_page}/${page.page_size}`, param, loading) } /** * 创建工具 * @param 参数 */ -const postTool: ( - data: toolData, - loading?: Ref, -) => Promise> = (data, loading) => { +const postTool: (data: toolData, loading?: Ref) => Promise> = ( + data, + loading, +) => { return post(`${prefix}/tool`, data, undefined, loading) } @@ -55,11 +50,11 @@ const postTool: ( * @param 参数 */ -const putTool: ( - tool_id: string, - data: toolData, - loading?: Ref, -) => Promise> = (tool_id, data, loading) => { +const putTool: (tool_id: string, data: toolData, loading?: Ref) => Promise> = ( + tool_id, + data, + loading, +) => { return put(`${prefix}/tool/${tool_id}`, data, undefined, loading) } @@ -69,18 +64,34 @@ const putTool: ( * @param loading 加载器 * @returns 函数详情 */ -const getToolById: ( - tool_id: string, - loading?: Ref, -) => Promise> = (tool_id, loading) => { +const getToolById: (tool_id: string, loading?: Ref) => Promise> = ( + tool_id, + loading, +) => { return get(`${prefix}/tool/${tool_id}`, undefined, loading) } -const postPylint: ( - code: string, - loading?: Ref, -) => Promise> = (code, loading) => { - return post(`${prefix}/tool/pylint`, {code}, {}, loading) +/** + * 删除工具 + * @param 参数 tool_id + */ +const delTool: ( + tool_id: String, + loading?: Ref +) => Promise> = (tool_id, loading) => { + return del(`${prefix}/${tool_id}`, undefined, {}, loading) +} + +const putToolIcon: ( + id: string, + data: any, + loading?: Ref +) => Promise> = (id, data, loading) => { + return put(`${prefix}/${id}/edit_icon`, data, undefined, loading) +} + +const exportTool = (id: string, name: string, loading?: Ref) => { + return exportFile(name + '.fx', `${prefix}/${id}/export`, undefined, loading) } /** @@ -88,12 +99,26 @@ const postPylint: ( * @param 参数 */ -// const postToolDebug: (data: any, loading?: Ref) => Promise> = ( -// data: any, -// loading -// ) => { -// return post(`${prefix}/debug`, data, undefined, loading) -// } +const postToolDebug: (data: any, loading?: Ref) => Promise> = ( + data: any, + loading, +) => { + return post(`${prefix}/debug`, data, undefined, loading) +} + +const postImportTool: (data: any, loading?: Ref) => Promise> = ( + data, + loading, +) => { + return post(`${prefix}/import`, data, undefined, loading) +} + +const postPylint: (code: string, loading?: Ref) => Promise> = ( + code, + loading, +) => { + return post(`${prefix}/tool/pylint`, { code }, {}, loading) +} export default { getToolByFolder, @@ -101,5 +126,10 @@ export default { putTool, getToolById, postTool, - postPylint + postToolDebug, + postImportTool, + postPylint, + exportTool, + putToolIcon, + delTool } diff --git a/ui/src/locales/lang/zh-CN/views/tool.ts b/ui/src/locales/lang/zh-CN/views/tool.ts index 7dd251f52..bcfecfd92 100644 --- a/ui/src/locales/lang/zh-CN/views/tool.ts +++ b/ui/src/locales/lang/zh-CN/views/tool.ts @@ -2,14 +2,19 @@ export default { title: '工具', createTool: '创建工具', editTool: '编辑工具', + copyTool: '复制函数', + importTool: '导入函数', disabled: { confirmTitle: '是否禁用工具:', confirmMessage: '禁用后,引用了该工具的应用提问时会报错 ,请谨慎操作。', }, + tip: { + saveMessage: '当前的更改尚未保存,确认退出吗?', + }, form: { title: { copy: '副本', - baseInfo: '基础信息' + baseInfo: '基础信息', }, toolName: { label: '名称', diff --git a/ui/src/views/tool/ToolDebugDrawer.vue b/ui/src/views/tool/ToolDebugDrawer.vue index 0e8e0c0ad..7cd9aa08e 100644 --- a/ui/src/views/tool/ToolDebugDrawer.vue +++ b/ui/src/views/tool/ToolDebugDrawer.vue @@ -148,7 +148,7 @@ watch(debugVisible, (bool) => { const submit = async (formEl: FormInstance | undefined) => { const validate = formEl ? formEl.validate() : Promise.resolve() Promise.all([dynamicsFormRef.value?.validate(), validate]).then(() => { - toolApi.postToolDebug(form.value, loading).then((res) => { + ToolApi.postToolDebug(form.value, loading).then((res) => { if (res.code === 500) { showResult.value = true isSuccess.value = false diff --git a/ui/src/views/tool/ToolFormDrawer.vue b/ui/src/views/tool/ToolFormDrawer.vue index 7d396cd95..9583200d5 100644 --- a/ui/src/views/tool/ToolFormDrawer.vue +++ b/ui/src/views/tool/ToolFormDrawer.vue @@ -398,7 +398,7 @@ function refreshInitFieldList(data: any) { UserFieldFormDialogRef.value.close() } -function refreshtool(data: any) { +function refreshTool(data: any) { form.value.icon = data } diff --git a/ui/src/views/tool/component/EditAvatarDialog.vue b/ui/src/views/tool/component/EditAvatarDialog.vue index 298f08aa8..933bbd97a 100644 --- a/ui/src/views/tool/component/EditAvatarDialog.vue +++ b/ui/src/views/tool/component/EditAvatarDialog.vue @@ -9,14 +9,9 @@

{{ $t('common.EditAvatarDialog.default') }}

- + + +
@@ -122,6 +117,4 @@ function submit() { defineExpose({ open }) - + diff --git a/ui/src/views/tool/index.vue b/ui/src/views/tool/index.vue index ea7a28a07..3a899609a 100644 --- a/ui/src/views/tool/index.vue +++ b/ui/src/views/tool/index.vue @@ -19,9 +19,9 @@ style="width: 120px" @change="search_type_change" > - + - + - + {{ $t('common.create') }} @@ -84,10 +84,10 @@ style="background: none" class="mr-8" > - + - +