import api from './index.js'; /** * 首页相关接口 */ export const homeApi = { /** * 获取首页banner */ getBanner() { return api.get('/all_index/getBanner'); }, /** * 获取书城区域列表 */ getBookAreaList() { return api.get('/all_index/getBookAreaList'); }, /** * 根据目录查询章节小说信息明细 * @param {string} id 目录ID */ getBookCatalogDetail(id) { return api.get('/all_index/getBookCatalogDetail', { params: { id } }); }, /** * 根据书本标识获取书本目录列表 * @param {Object} params 查询参数 * @param {string} params.bookId 书本ID * @param {string} params.orderBy 排序方式 * @param {number} params.pageNo 当前页 * @param {number} params.pageSize 显示条数 */ getBookCatalogList(params) { return api.get('/all_index/getBookCatalogList', { params }); }, /** * 根据书本标识获取书本详细信息 * @param {Object} params 查询参数 * @param {string} params.id 书本ID * @param {string} params.token token */ getBookDetail(params) { return api.get('/all_index/getBookDetail', { params }); }, /** * 获取书城分类列表 */ getCategoryList() { return api.get('/all_index/getCategoryList'); }, /** * 获取亲密度排行版 * @param {Object} params 查询参数 * @param {string} params.bookId 书本ID * @param {number} params.pageNo 当前页 * @param {number} params.pageSize 显示条数 */ getIntimacyRankList(params) { return api.get('/all_index/getIntimacyRankList', { params }); }, /** * 获取首页最新小说列表带分页 * @param {Object} params 分页参数 * @param {number} params.pageNo 当前页 * @param {number} params.pageSize 显示条数 */ getNewList(params) { return api.get('/all_index/getNewList', { params }); }, /** * 获取首页公告 */ getNotice() { return api.get('/all_index/getNotice'); }, /** * 获取公告详情 * @param {string} id 公告ID */ getNoticeById(id) { return api.get('/all_index/getNoticeById', { params: { id } }); }, /** * 获取公告列表带分页 * @param {Object} params 分页参数 * @param {number} params.pageNo 当前页 * @param {number} params.pageSize 显示条数 */ getNoticePage(params) { return api.get('/all_index/getNoticePage', { params }); }, /** * 获取首页精品推荐小说列表带分页 */ getRecommendList(params) { return api.get('/all_index/getRecommendList', { params }); }, /** * 根据书本标识进行投票 * @param {Object} params 投票参数 * @param {string} params.bookId 书本ID * @param {string} params.num 投票数 */ vote(params) { return api.get('/all_index/vote', { params }); }, /** * 获取排行榜数据 - 根据不同榜单类型和分类获取书籍列表 * @param {Object} params 查询参数 * @param {string} params.rankType 榜单类型 (1:推荐榜 2:完本榜 3:阅读榜 4:口碑榜 5:新书榜 6:高分榜) * @param {string} params.categoryId 分类ID * @param {number} params.pageNo 当前页 * @param {number} params.pageSize 显示条数 */ getRankingList(params) { const { rankType, categoryId, pageNo = 1, pageSize = 20 } = params; // 根据不同的榜单类型调用不同的接口 switch (rankType) { case '1': // 推荐榜 return api.get('/all_index/getRecommendList', { params: { pageNo, pageSize, categoryId } }); case '5': // 新书榜 return api.get('/all_index/getNewList', { params: { pageNo, pageSize, categoryId } }); case '3': // 阅读榜 (使用亲密度排行榜作为替代) return api.get('/all_index/getIntimacyRankList', { params: { pageNo, pageSize, bookId: categoryId } }); default: // 其他榜单暂时使用推荐列表作为占位 return api.get('/all_index/getRecommendList', { params: { pageNo, pageSize, categoryId } }); } } };