import request from '@/utils/request' export interface DesignerStats { userId: number userName: string avatar?: string deptName?: string inProgressCount: number queueCount: number totalScore: number delayedCount: number totalTaskCount: number completedCount: number avgRating: number goodReviewCount: number completionRate: number ontimeRate: number onlineStatus: number lastActiveTime: string // 前端扩展字段 showTasks?: boolean loadingTasks?: boolean inProgressTasks?: any[] } /** * 获取所有设计师统计信息 */ export const getAllDesignerStats = () => { return request.get('/designers/stats') } /** * 获取单个设计师统计信息 */ export const getDesignerStats = (userId: number) => { return request.get(`/designers/stats/${userId}`) } /** * 获取排行榜 * @param type 类型:score-积分榜,efficiency-效率榜,quality-好评榜,diligence-勤勉榜 * @param limit 返回数量 * @param month 月份:YYYY-MM格式,可选,不传则查询当月 */ export const getLeaderboard = (type: string = 'score', limit: number = 10, month?: string) => { const params: any = { type, limit } if (month) { params.month = month } return request.get('/designers/leaderboard', { params }) } /** * 获取设计师进行中的任务列表 * @param userId 设计师ID */ export const getDesignerInProgressTasks = (userId: number) => { return request.get(`/designers/${userId}/in-progress-tasks`) }