From ccbf6de8635ceea408404a65803cc4089663ccd9 Mon Sep 17 00:00:00 2001 From: 2910410219 <2910410219@qq.com> Date: Tue, 2 Jun 2026 14:52:01 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=8F=90=E7=A4=BA=E8=AF=8D?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../settings/modelConfig/modelModule/index.ts | 78 +++++ src/api/settings/promptManager/index.ts | 110 ++++++ src/views/settings/promptManager/index.vue | 314 ++++++++++++++++++ 3 files changed, 502 insertions(+) create mode 100644 src/api/settings/promptManager/index.ts create mode 100644 src/views/settings/promptManager/index.vue diff --git a/src/api/settings/modelConfig/modelModule/index.ts b/src/api/settings/modelConfig/modelModule/index.ts index 993edb6..0d2f2b3 100644 --- a/src/api/settings/modelConfig/modelModule/index.ts +++ b/src/api/settings/modelConfig/modelModule/index.ts @@ -20,6 +20,41 @@ export interface ModelFormEntry { value: string; } +// 提示词管理接口类型 +export interface PromptItem { + id: number | string; + tenantId?: number; + creator?: string; + createdAt?: string; + updater?: string; + updatedAt?: string; + deletedAt?: string | null; + nodeType: string; + prompt: string; + sourceType: number; // 0-自定义 1-公共 +} + +export interface PromptListResponse { + list: PromptItem[]; + total: number; +} + +export interface PromptListParams { + pageNum?: number; + pageSize?: number; + keyword?: string; +} + +export interface CreatePromptParams { + nodeType: string; + prompt: string; + sourceType: number; +} + +export interface UpdatePromptParams extends CreatePromptParams { + id: number | string; +} + /** 模型类型(listType 接口项,字段名以后端为准,前端做兼容解析) */ export interface ModelTypeListItem { id?: number | string; @@ -251,3 +286,46 @@ export function getOperatorList() { method: 'get', }); } + +/** + * 获取当前用户提示词列表 + */ +export function getMyPromptList(params: PromptListParams) { + return request({ + url: '/node/prompt/listMy', + method: 'get', + params, + }); +} + +/** + * 创建提示词 + */ +export function createPrompt(data: CreatePromptParams) { + return request({ + url: '/node/prompt/create', + method: 'post', + data, + }); +} + +/** + * 修改提示词 + */ +export function updatePrompt(data: UpdatePromptParams) { + return request({ + url: '/node/prompt/update', + method: 'put', + data, + }); +} + +/** + * 删除提示词 + */ +export function deletePrompt(id: number | string) { + return request({ + url: `/node/prompt/delete/${id}`, + method: 'delete', + }); +} diff --git a/src/api/settings/promptManager/index.ts b/src/api/settings/promptManager/index.ts new file mode 100644 index 0000000..c48bd52 --- /dev/null +++ b/src/api/settings/promptManager/index.ts @@ -0,0 +1,110 @@ +import request from '/@/utils/request'; + +// 提示词管理接口类型 +export interface PromptItem { + id: number | string; + tenantId?: number; + creator?: string; + createdAt?: string; + updater?: string; + updatedAt?: string; + deletedAt?: string | null; + nodeType: string; + prompt: string; + sourceType: number; // 0-自定义 1-公共 +} + +export interface PromptListResponse { + list: PromptItem[]; + total: number; +} + +export interface PromptListParams { + pageNum?: number; + pageSize?: number; + keyword?: string; +} + +export interface CreatePromptParams { + nodeType: string; + prompt: string; + sourceType: number; +} + +export interface UpdatePromptParams extends CreatePromptParams { + id: number | string; +} + +// 节点库项接口类型 +export interface NodeLibraryNode { + nodeId: string; + nodeCode: string; + modelType: number; + nodeName: string; + skillOption: boolean; + promptOption: boolean; +} + +export interface NodeLibraryGroup { + group: string; + label: string; + items: NodeLibraryNode[]; +} + +export interface NodeLibraryResponse { + groups: NodeLibraryGroup[]; +} + +/** + * 获取节点类型列表(节点库) + */ +export function getNodeLibraryList() { + return request({ + url: '/ai-agent/node/library/list', + method: 'get', + }); +} + +/** + * 获取当前用户提示词列表 + */ +export function getMyPromptList(params: PromptListParams) { + return request({ + url: '/ai-agent/node/prompt/listMy', + method: 'get', + params, + }); +} + +/** + * 创建提示词 + */ +export function createPrompt(data: CreatePromptParams) { + return request({ + url: '/ai-agent/node/prompt/create', + method: 'post', + data, + }); +} + +/** + * 修改提示词 + */ +export function updatePrompt(data: UpdatePromptParams) { + return request({ + url: '/ai-agent/node/prompt/update', + method: 'put', + data, + }); +} + +/** + * 删除提示词 + */ +export function deletePrompt(id: number | string) { + return request({ + url: '/ai-agent/node/prompt/delete', + method: 'delete', + data: { id }, + }); +} diff --git a/src/views/settings/promptManager/index.vue b/src/views/settings/promptManager/index.vue new file mode 100644 index 0000000..9257f8d --- /dev/null +++ b/src/views/settings/promptManager/index.vue @@ -0,0 +1,314 @@ + + + + +