|
|
//Copyright (c) 2017. 章钦豪. All rights reserved. // 版权声明,标明代码的版权所有者及年份
|
|
|
|
|
|
package com.monke.monkeybook.view;
|
|
|
// 定义该接口所在的包
|
|
|
|
|
|
import android.widget.EditText;
|
|
|
// 导入EditText类,用于获取搜索框的输入内容
|
|
|
|
|
|
import com.monke.basemvplib.IView;
|
|
|
// 导入IView接口,所有视图接口都需要实现它
|
|
|
|
|
|
import com.monke.monkeybook.bean.SearchBookBean;
|
|
|
// 导入SearchBookBean类,表示搜索到的书籍数据模型
|
|
|
|
|
|
import com.monke.monkeybook.bean.SearchHistoryBean;
|
|
|
// 导入SearchHistoryBean类,表示搜索历史记录的数据模型
|
|
|
|
|
|
import com.monke.monkeybook.view.adapter.SearchBookAdapter;
|
|
|
// 导入SearchBookAdapter类,适配器用于显示搜索书籍的列表
|
|
|
|
|
|
import java.util.List;
|
|
|
// 导入List类,用于存储多个SearchBookBean对象或SearchHistoryBean对象
|
|
|
|
|
|
// 定义ISearchView接口,继承自IView接口,表示搜索页面的视图
|
|
|
public interface ISearchView extends IView {
|
|
|
|
|
|
/**
|
|
|
* 成功新增查询记录
|
|
|
* @param searchHistoryBean 新增的搜索历史记录
|
|
|
*/
|
|
|
void insertSearchHistorySuccess(SearchHistoryBean searchHistoryBean);
|
|
|
// 定义方法,表示成功添加一条新的搜索历史记录
|
|
|
|
|
|
/**
|
|
|
* 成功搜索并返回搜索记录
|
|
|
* @param datas 搜索历史记录数据列表
|
|
|
*/
|
|
|
void querySearchHistorySuccess(List<SearchHistoryBean> datas);
|
|
|
// 定义方法,表示成功查询到搜索历史记录
|
|
|
|
|
|
/**
|
|
|
* 首次查询成功,更新UI
|
|
|
* @param books 搜索到的书籍列表
|
|
|
*/
|
|
|
void refreshSearchBook(List<SearchBookBean> books);
|
|
|
// 定义方法,表示首次搜索成功后更新UI,显示搜索到的书籍
|
|
|
|
|
|
/**
|
|
|
* 加载更多书籍成功,更新UI
|
|
|
* @param books 新加载的书籍列表
|
|
|
*/
|
|
|
void loadMoreSearchBook(List<SearchBookBean> books);
|
|
|
// 定义方法,表示成功加载更多书籍,并更新UI显示
|
|
|
|
|
|
/**
|
|
|
* 刷新完成
|
|
|
* @param isAll 是否所有数据都已加载完成
|
|
|
*/
|
|
|
void refreshFinish(Boolean isAll);
|
|
|
// 定义方法,表示刷新操作完成,并传入是否已经加载所有数据的状态
|
|
|
|
|
|
/**
|
|
|
* 加载完成
|
|
|
* @param isAll 是否所有数据都已加载完成
|
|
|
*/
|
|
|
void loadMoreFinish(Boolean isAll);
|
|
|
// 定义方法,表示加载更多操作完成,并传入是否已经加载所有数据的状态
|
|
|
|
|
|
/**
|
|
|
* 搜索失败
|
|
|
* @param isRefresh 是否为刷新操作
|
|
|
*/
|
|
|
void searchBookError(Boolean isRefresh);
|
|
|
// 定义方法,表示搜索失败,传入是否是刷新操作
|
|
|
|
|
|
/**
|
|
|
* 获取搜索内容的EditText组件
|
|
|
* @return EditText 搜索框的组件
|
|
|
*/
|
|
|
EditText getEdtContent();
|
|
|
// 定义方法,返回搜索框的EditText组件,供其他逻辑使用
|
|
|
|
|
|
/**
|
|
|
* 添加书籍失败
|
|
|
* @param code 错误码,表示添加失败的原因
|
|
|
*/
|
|
|
void addBookShelfFailed(int code);
|
|
|
// 定义方法,表示添加书籍到书架失败,传入错误码
|
|
|
|
|
|
/**
|
|
|
* 获取SearchBookAdapter适配器
|
|
|
* @return SearchBookAdapter 返回搜索书籍的适配器
|
|
|
*/
|
|
|
SearchBookAdapter getSearchBookAdapter();
|
|
|
// 定义方法,返回用于显示搜索书籍的适配器
|
|
|
|
|
|
/**
|
|
|
* 更新搜索项
|
|
|
* @param index 搜索项的索引
|
|
|
*/
|
|
|
void updateSearchItem(int index);
|
|
|
// 定义方法,表示更新指定索引的搜索项
|
|
|
|
|
|
/**
|
|
|
* 判断书籍是否已经在书架上
|
|
|
* @param searchBookBean 要检查的书籍
|
|
|
* @return Boolean 如果书籍已经存在返回true,否则返回false
|
|
|
*/
|
|
|
Boolean checkIsExist(SearchBookBean searchBookBean);
|
|
|
// 定义方法,检查给定的书籍是否已经在书架上
|
|
|
}
|