// 业务状态码 export enum BusinessCode { Success = 0, NoResource = 1001, InvalidParams = 2001, ResourceConflict = 3001, PermissionDenied = 4001, BusinessError = 5001, } // 通用响应格式 export interface ApiResponse { code: BusinessCode; message: string; data: T | null; } // 账户类型 export interface Account { id: number; ownerId: string; platform: string; customId: string; data: string; status: string; notes?: string; lockedAt?: Date | null; createdAt: Date; updatedAt: Date; } // 分页结果 export interface PaginationResult { page: number; pageSize: number; total: number; totalPages: number; } // 脚本获取响应 export type ScriptAcquireResponse = Pick[]; // 脚本上传项 export interface ScriptUploadItem { platform: string; customId: string; data: string; status?: string; } // 账户列表筛选条件 export interface ListAccountsFilters { platform?: string; status?: string[]; ownerId?: string; search?: string; } // 账户列表请求体 export interface ListAccountsBody { filters: ListAccountsFilters; pagination: { page: number; pageSize: number; }; sort: { field: keyof Account; order: 'asc' | 'desc'; }; } // 账户列表响应 export interface ListAccountsResponse { list: Account[]; pagination: PaginationResult; } // 批量删除请求体 export interface BatchDeleteBody { ids: number[]; } // 批量更新请求体 export interface BatchUpdateBody { ids: number[]; payload: Partial>; } // 批量导出请求体 export interface BatchExportBody { ids: number[]; mode: 'text' | 'object'; } // 批量导出响应 export interface BatchExportResponse { exportedCount: number; data: string; } // 统计概览 export interface StatsOverview { totalAccounts: number; platformSummary: Record; ownerSummary: Record; statusSummary: Record; detailedBreakdown: { platform: string; ownerId: string; status: string; count: number; }[]; }