feat(平台): 补齐服务端持久化和AI拆解契约
This commit is contained in:
27
apps/web/lib/server-data.ts
Normal file
27
apps/web/lib/server-data.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { api } from './api';
|
||||
|
||||
export type ServerDataKey =
|
||||
| 'products-overview'
|
||||
| 'requirements'
|
||||
| 'version-plans'
|
||||
| 'dev-tasks'
|
||||
| 'test-cases'
|
||||
| 'bugs'
|
||||
| 'members'
|
||||
| 'task-categories'
|
||||
| 'task-worklogs'
|
||||
| 'overtime';
|
||||
|
||||
interface ServerDataResponse<T> {
|
||||
key: ServerDataKey;
|
||||
value: T | null;
|
||||
}
|
||||
|
||||
export async function loadServerData<T>(key: ServerDataKey): Promise<T | null> {
|
||||
const res = await api.get<ServerDataResponse<T>>(`/data/${key}`);
|
||||
return res.value;
|
||||
}
|
||||
|
||||
export async function saveServerData<T>(key: ServerDataKey, value: T): Promise<void> {
|
||||
await api.put(`/data/${key}`, { value });
|
||||
}
|
||||
Reference in New Issue
Block a user