Skip to content

Commit 7578f54

Browse files
committed
feat: system application for shelves
1 parent 208ab7c commit 7578f54

5 files changed

Lines changed: 11 additions & 9 deletions

File tree

‎ui/src/api/API_README.md‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -390,10 +390,10 @@ API 对象和工作空间上下文,作为该抽屉的范围选择例外。Syst
390390
- 知识库 Workflow API 记录为 `/<id>/action/<page>/<size>`,筛选 user_name、state;
391391
详情和取消为 GET action/<actionId>、POST action/<actionId>/cancel。
392392
- 智能体复制查询完整 ApplicationDetail,model 映射 model_id 后创建,不使用卡片摘要。
393-
- Workspace 与 System 资源管理的 Application API 提供 `putApplicationPortal(applicationId, isPortal)` 和
394-
`exportApplicationSkills(applicationId, applicationName)` 的本地 mock;前者返回 `{ id, is_portal }`,
395-
后者返回 `{ application_id, name }`,均不发送请求或持久化,也不生成 Skills 文件。真实接口待接入,
396-
不通过智能体配置保存接口模拟上下架。
393+
- Workspace 与 System 资源管理的 Application API 通过 `putApplicationPortal(applicationId, isPortal)`
394+
向各自范围的 `application/<applicationId>` 发送 PUT 请求,仅提交 `{ is_portal }`,返回 `ApplicationDetail`。
395+
`exportApplicationSkills(applicationId, applicationName)` 仍为本地 mock,返回 `{ application_id, name }`,
396+
不发送请求或生成 Skills 文件,真实下载接口待接入。
397397

398398
### 智能体概览
399399

‎ui/src/api/admin/system/resource-management/application/application.ts‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,9 @@ const exportApplication = (applicationId: string, applicationName: string) => {
2626
const exportApplicationSkills = (applicationId: string, applicationName: string) =>
2727
Promise.resolve({ application_id: applicationId, name: applicationName })
2828

29-
/** 模拟 System 资源管理智能体门户上下架;TODO:接入真实接口,当前不持久化。 */
30-
const putApplicationPortal = (applicationId: string, isPortal: boolean) => Promise.resolve({ id: applicationId, is_portal: isPortal })
29+
/** 修改 System 资源管理智能体门户上下架状态。 */
30+
const putApplicationPortal = (applicationId: string, isPortal: boolean) =>
31+
put<{ is_portal: boolean }, ApplicationDetail>(`${prefix}/${applicationId}`, { is_portal: isPortal })
3132

3233
/** 获取 System 资源管理智能体详情。 */
3334
const getApplicationDetail = (applicationId: string) => get<ApplicationDetail>(`${prefix}/${applicationId}`)

‎ui/src/api/admin/workspace/application/application.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ const exportApplication = (applicationId: string, applicationName: string) => {
5151
const exportApplicationSkills = (applicationId: string, applicationName: string) =>
5252
Promise.resolve({ application_id: applicationId, name: applicationName })
5353

54-
/** 模拟工作空间智能体门户上下架。 */
54+
/** 修改工作空间智能体门户上下架状态。 */
5555
const putApplicationPortal = (applicationId: string, isPortal: boolean) => {
5656
return put<{ is_portal: boolean }, ApplicationDetail>(`${getPrefix()}/${applicationId}`, { is_portal: isPortal })
5757
}

‎ui/src/views/VIEW_README.md‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,8 @@
9090
不依赖下拉菜单挂载或维护逐卡片 Action Ref;`EditToolAction` 复用相同表单调度组件。
9191
表单按类型打开,关闭动画后卸载具体表单;编辑、启停成功局部更新。
9292
- 智能体的 Workspace 卡片与 System 资源列表复用门户上下架和导出 Action;门户入口按 `is_portal`
93-
显示“上架到门户/从门户下架”,当前通过 mock 接口更新列表局部状态,刷新后恢复服务端状态。
93+
显示“上架到门户/从门户下架”,通过当前范围 API 保存,成功后按响应更新列表局部状态,失败保留原状态。
94+
未上架时仅 `is_publish` 为 true 才显示并允许上架;已上架时保留下架入口,下架不修改发布状态。
9495
导出使用二级菜单,包含“导出为 Skills”和“导出智能体”;Skills 当前调用 mock 接口并明确提示
9596
尚未生成文件,智能体沿用现有文件导出。
9697
商店列表由页面加载,卡片和版本更新按钮不重复查询。

‎ui/src/views/system/identity/resource-authorization/index.vue‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,6 @@ const loadingPermissions = ref(false)
9797
const resourcePermissions = ref<ResourcePermissionItem[]>([])
9898
9999
function loadResourcePermissions() {
100-
loadingPermissions.value = true
101100
const targetId = targetType.value === 'user-group' ? selectedUserGroupId.value : selectedUserId.value
102101
103102
if (!targetId) {
@@ -106,6 +105,7 @@ function loadResourcePermissions() {
106105
return Promise.resolve()
107106
}
108107
108+
loadingPermissions.value = true
109109
const permissionRequest =
110110
targetType.value === 'user-group'
111111
? ResourceAuthorizationApi.getUserGroupResourcePermissions(selectedWorkspaceId.value, targetId, resourceType.value)

0 commit comments

Comments
 (0)