diff --git a/apps/tools/serializers/tool_version.py b/apps/tools/serializers/tool_version.py index 9eba191375d..e986e6b177d 100644 --- a/apps/tools/serializers/tool_version.py +++ b/apps/tools/serializers/tool_version.py @@ -96,7 +96,7 @@ def edit(self, instance: Dict, with_valid=True): ToolWorkflowVersionEditSerializer(data=instance).is_valid(raise_exception=True) tool_version = QuerySet(ToolWorkflowVersion).filter(tool_id=self.data.get('tool_id'), id=self.data.get( - 'knowledge_version_id')).first() + 'tool_version_id')).first() if tool_version is not None: name = instance.get('name', None) if name is not None and len(name) > 0: diff --git a/ui/src/api/system-resource-management/tool.ts b/ui/src/api/system-resource-management/tool.ts index 91f243b4eb5..cc52dad6501 100644 --- a/ui/src/api/system-resource-management/tool.ts +++ b/ui/src/api/system-resource-management/tool.ts @@ -65,7 +65,6 @@ const getToolById: (tool_id: string, loading?: Ref) => Promise) => Promis return post(`${prefix}/test_connection`, data, undefined, loading) } - /** * 删除工具 * @param 参数 tool_id @@ -129,12 +127,7 @@ const postPylint: (code: string, loading?: Ref) => Promise> return post(`${prefix}/pylint`, { code }, {}, loading) } -const pageToolRecord = ( - tool_id: string, - page: pageRequest, - param: any, - loading?: Ref, -) => { +const pageToolRecord = (tool_id: string, page: pageRequest, param: any, loading?: Ref) => { return get( `${prefix}/${tool_id}/tool_record/${page.current_page}/${page.page_size}`, param, @@ -142,10 +135,7 @@ const pageToolRecord = ( ) } -const getToolRecordDetail = ( - tool_id: string, - record_id: string -) => { +const getToolRecordDetail = (tool_id: string, record_id: string) => { return get(`${prefix}/${tool_id}/tool_record/${record_id}`) } @@ -156,16 +146,71 @@ const uploadSkillFile: (data: toolData, loading?: Ref) => Promise Promise> = ( +const generateCode: (data: any) => Promise> = (data: any) => { + const p = (window.MaxKB?.prefix ? window.MaxKB?.prefix : '/admin') + '/api' + return postStream(`${p}${prefix}/generate_code`, data) +} + +/** + * 获取工具工作流版本列表 + * @param tool_id + * @param loading + * @returns + */ +const listToolWorkflowVersion: (tool_id: string, loading?: Ref) => Promise> = ( + tool_id: string, + loading, +) => { + return get(`${prefix}/${tool_id}/tool_version`, {}, loading) +} +/** + * + * @param tool_id 工具id + * @param tool_version_id 工具版本id + * @param data 数据 + * @param loading + * @returns + */ +const updateToolWorkflowVersion: ( + tool_id: string, + tool_version_id: string, data: any, + loading?: Ref, +) => Promise> = (tool_id: string, tool_version_id, data, loading) => { + return put(`${prefix}/${tool_id}/tool_version/${tool_version_id}`, data, {}, loading) +} +const publish: (tool_id: string, loading?: Ref) => Promise> = ( + tool_id: string, + loading, ) => { + return put(`${prefix}/${tool_id}/publish`, {}, {}, loading) +} + +/** + * 调试工作流 + * @param 参数 + * chat_id: string + * data + */ +const debugToolWorkflow: (tool_id: string, data: any) => Promise = (tool_id, data) => { const p = (window.MaxKB?.prefix ? window.MaxKB?.prefix : '/admin') + '/api' - return postStream( - `${p}${prefix}/generate_code`, - data, - ) + return postStream(`${p}${prefix}/${tool_id}/debug`, data) } +/** + * 保存工具工作流 + * @param tool_id + * @param data + * @param loading + * @returns + */ +const putToolWorkflow: ( + tool_id: string, + data: any, + loading?: Ref, +) => Promise> = (tool_id, data, loading) => { + return put(`${prefix}/${tool_id}/workflow`, data, undefined, loading) +} export default { getToolListPage, @@ -183,4 +228,9 @@ export default { getToolRecordDetail, uploadSkillFile, generateCode, + listToolWorkflowVersion, + updateToolWorkflowVersion, + debugToolWorkflow, + publish, + putToolWorkflow, }