import request from '@/utils/request'; export interface WorkerInfo { id: number; workerName: string; phone?: string; idCard?: string; workerTitle?: string; rating?: number | string; certInfo?: string; certVerified?: boolean; completedCount?: number; status?: number; createdAt?: string; updatedAt?: string; } export interface WorkerOption { id: number; workerName: string; workerTitle?: string; rating?: number | string; certInfo?: string; certVerified?: boolean; completedCount?: number; } export interface WorkerRecommend extends WorkerOption { // 匹配度(0-100,保留 1 位小数) matchRate: number; rank: number; // 是否为「首选推荐」 isTop: boolean; } export interface WorkerQuery { page?: number; pageSize?: number; limit?: number; keyword?: string; status?: number; } export interface WorkerListResult { list: WorkerInfo[]; total: number; page: number; pageSize: number; } export interface WorkerRecommendQuery { loopCount?: number; priority?: number; certKeyword?: string; } export const workerApi = { getList: (params?: WorkerQuery) => request.get('/workers', { params }), // 下拉选项(仅在岗电工,按评分倒序) getOptions: () => request.get('/workers/options'), // 智能推荐电工:评分 50% + 资质 30% + 经验 20% 加权排序 getRecommend: (params?: WorkerRecommendQuery) => request.get('/workers/recommend', { params }) };