import axios from 'axios'; import type { KnowInfo } from '../../share/types.ts'; // 首页数据相关类型定义 interface HomeBannersResponse { message: string; data: KnowInfo[]; } interface HomeNewsResponse { message: string; data: KnowInfo[]; pagination: { total: number; current: number; pageSize: number; totalPages: number; }; } interface HomeNoticesResponse { message: string; data: { id: number; title: string; content: string; created_at: string; }[]; pagination: { total: number; current: number; pageSize: number; totalPages: number; }; } // 首页API export const HomeAPI = { // 获取轮播图 getBanners: async (): Promise => { try { const response = await axios.get('/home/banners'); return response.data; } catch (error) { throw error; } }, // 获取新闻列表 getNews: async (params?: { page?: number, pageSize?: number, category?: string }): Promise => { try { const response = await axios.get('/home/news', { params }); return response.data; } catch (error) { throw error; } }, // 获取通知列表 getNotices: async (params?: { page?: number, pageSize?: number }): Promise => { try { const response = await axios.get('/home/notices', { params }); return response.data; } catch (error) { throw error; } } };