update:系统管理

This commit is contained in:
xiaozhu
2026-08-07 18:08:16 +08:00
parent 873a464629
commit f90d15bbe9
6 changed files with 561 additions and 207 deletions
+72 -1
View File
@@ -160,7 +160,7 @@ export type WorkspaceUpdatePayload = {
export type WorkspaceMemberAddPayload = {
user_id: string;
role_code: "admin" | "developer";
role_code?: "admin" | "developer";
};
export type WorkspaceMemberUpdatePayload = {
@@ -902,10 +902,57 @@ export async function hideScheduleArtifact(
);
}
// 系统管理级别接口 - 不区分 workspace
export async function listPlatformEmployees(): Promise<Employee[]> {
return apiRequest<Employee[]>("/api/v1/platform/employees");
}
export async function createPlatformEmployee(
input: {
username: string;
display_name: string;
email?: string | undefined;
password: string;
role_code?: "admin" | "developer";
},
): Promise<Employee> {
return apiRequest<Employee>(
"/api/v1/platform/employees",
{ method: "POST", body: JSON.stringify({ ...input, role_code: input.role_code ?? "developer" }) },
);
}
export async function updatePlatformEmployee(
userId: string,
input: {
display_name?: string;
email?: string | null;
role_code?: "admin" | "developer";
status?: "active" | "disabled" | "locked";
},
): Promise<Employee> {
return apiRequest<Employee>(
`/api/v1/platform/employees/${userId}`,
{ method: "PATCH", body: JSON.stringify(input) },
);
}
export async function deletePlatformEmployee(
userId: string,
): Promise<{ user_id: string; deleted: boolean }> {
return apiRequest(
`/api/v1/platform/employees/${userId}`,
{ method: "DELETE" },
);
}
// 兼容旧的 workspace 级别接口(已废弃,建议使用 system-level 接口)
/** @deprecated 使用 listPlatformEmployees 代替 */
export async function listEmployees(workspaceId: string): Promise<Employee[]> {
return apiRequest<Employee[]>("/api/v1/admin/employees", {}, workspaceId);
}
/** @deprecated 使用 createPlatformEmployee 代替 */
export async function createEmployee(
workspaceId: string,
input: {
@@ -923,6 +970,7 @@ export async function createEmployee(
);
}
/** @deprecated 使用 updatePlatformEmployee 代替 */
export async function updateEmployee(
workspaceId: string,
userId: string,
@@ -940,6 +988,7 @@ export async function updateEmployee(
);
}
/** @deprecated 使用 deletePlatformEmployee 代替 */
export async function deleteEmployee(
workspaceId: string,
userId: string,
@@ -1287,16 +1336,38 @@ export type WorkspaceBoundApi = {
artifact_preserved: boolean;
}>;
listEmployees: () => Promise<Employee[]>;
listPlatformEmployees: () => Promise<Employee[]>;
createEmployee: (
input: Parameters<typeof createEmployee>[1],
) => Promise<Employee>;
createPlatformEmployee: (
input: {
username: string;
display_name: string;
email?: string | undefined;
password: string;
role_code?: "admin" | "developer";
},
) => Promise<Employee>;
updateEmployee: (
userId: string,
input: Parameters<typeof updateEmployee>[2],
) => Promise<Employee>;
updatePlatformEmployee: (
userId: string,
input: {
display_name?: string;
email?: string | null;
role_code?: "admin" | "developer";
status?: "active" | "disabled" | "locked";
},
) => Promise<Employee>;
deleteEmployee: (
userId: string,
) => Promise<{ user_id: string; deleted: boolean }>;
deletePlatformEmployee: (
userId: string,
) => Promise<{ user_id: string; deleted: boolean }>;
createScheduleNode: (
scheduleId: string,
input: Parameters<typeof createScheduleNode>[2],