import request from './request'; import type { ApiResponse, PaginatedResponse } from './request'; // App用户类型 export interface AppUser { id: number; phone: string; nickname: string; avatar: string; is_active: boolean; spirit_count: number; device_count: number; created_at: string; updated_at: string; } // 管理员用户类型 export interface AdminUser { id: number; username: string; name: string; email: string; phone: string; role: 'super_admin' | 'admin' | 'operator'; is_active: boolean; last_login: string; created_at: string; } // 获取App用户列表 export const getAppUsers = (params?: { page?: number; page_size?: number; phone?: string; nickname?: string; }) => { return request.get>>('/api/admin/users/', { params }); }; // 获取App用户详情 export const getAppUser = (id: number) => { return request.get>(`/api/admin/users/${id}/`); }; // 切换App用户状态 export const toggleAppUserStatus = (id: number) => { return request.post>(`/api/admin/users/${id}/toggle-status/`); }; // 获取管理员列表 export const getAdminUsers = (params?: { page?: number; page_size?: number }) => { return request.get>>('/api/admin/admins/', { params }); }; // 获取管理员详情 export const getAdminUser = (id: number) => { return request.get>(`/api/admin/admins/${id}/`); }; // 创建管理员 export const createAdminUser = (data: { username: string; password: string; name?: string; email?: string; phone?: string; role?: string; }) => { return request.post>('/api/admin/admins/', data); }; // 切换管理员状态 export const toggleAdminStatus = (id: number) => { return request.post>(`/api/admin/admins/${id}/toggle-status/`); }; // 重置管理员密码 export const resetAdminPassword = (id: number, data: { new_password: string }) => { return request.post>(`/api/admin/admins/${id}/reset-password/`, data); };