R60 A1-A6:首页工作台优化

这个提交包含在:
2026-04-12 12:30:14 +08:00
父节点 dbab1d7b6e
当前提交 3f8c5144c2
共修改 7 个文件,包含 1514 行新增和 14 行删除
+37
查看文件
@@ -1,5 +1,36 @@
import { apiRequestData } from "./http";
export type PortalRecentActivity = {
id: string;
type:
| "reimbursement.submit"
| "reimbursement.approve"
| "reimbursement.reject"
| "leave.submit"
| "leave.approve"
| "leave.reject"
| "attendance.clock_in"
| "attendance.clock_out"
| "attendance.supplement"
| "asset.assign"
| "asset.return";
actorName: string;
summary: string;
createdAt: string;
href: string;
};
export type PortalTeamStatusItem = {
employeeId: string;
name: string;
avatarUrl: string | null;
presenceStatus: string | null;
attendanceClockIn: string | null;
attendanceClockOut: string | null;
onLeave: boolean;
leaveType: string | null;
};
export type PortalHomePayload = {
workspace: {
id: string | null;
@@ -55,8 +86,14 @@ export type PortalHomePayload = {
hints: string[];
}
| null;
recentActivities: PortalRecentActivity[];
teamStatusBoard: PortalTeamStatusItem[];
};
export async function fetchPortalHome() {
return apiRequestData<PortalHomePayload>("/api/portal/home");
}
export async function fetchPortalTeamStatus() {
return apiRequestData<PortalTeamStatusItem[]>("/api/portal/team-status");
}