package com.ssj.service.weixin.library.service;

import com.ssj.bean.weixin.libmy.domain.TbLibBookInfo;
import com.ssj.framework.core.common.service.BaseService;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Map;

public interface ILibBookService extends BaseService<TbLibBookInfo, String> {

	TbLibBookInfo findByIsbnAndLibId(String isbn13, String libId);
	
	  public  Page<TbLibBookInfo>  findByPage(Map<String, Object> params, Pageable sp);
	  
	  
	  public List<TbLibBookInfo> findByInfoLibId(String libId);
	  
	  Page<Map<String, Object>> findForPageList(Map<String, Object> searchParams, Pageable pageable);

	  TbLibBookInfo findBookInfoByIsbn(String isbn13);
	  
	  TbLibBookInfo findByIsbn(String isbn13);
	  /**
	   * 查询前三
	  * @param libId
	  * @return
	  * 创建人：ZhangCaibao 
	  * 2018年8月14日 下午6:09:31 
	  * @List<Map<String,Object>>
	   */
	  List<Map<String, Object>> getTopAndLibId(int topSize);
	  /**
	   * 查询所在馆的书
	  * @param libId
	  * @param isbn
	 * @param searchContent 
	  * @return
	  * 创建人：ZhangCaibao 
	  * 2018年8月15日 下午3:27:15 
	  * @List<Map<String,Object>>
	   */
	  List<Map<String, Object>> getdefaultBookAndLibId(String libId,String [] isbn, String searchContent,String vipId,int type);
	  List<Map<String, Object>> getdefaultBookAndLibId(String libId,String bookName);
	  /**
	   * 在基础库中查询书籍
	  * @param isbn
	  * @return
	  * 创建人：ZhangCaibao 
	  * 2018年8月15日 下午3:26:18 
	  * @List<Map<String,Object>>
	   */
	  List<Map<String, Object>> getdefaultBookAndLibId(String [] isbn,String searchContent,String vipId);
	  /**
	   * 已预约的书
	  * @param libId
	  * @param vipId
	  * @return
	  * 创建人：ZhangCaibao 
	  * 2018年8月16日 上午10:18:43 
	  * @List<Map<String,Object>>
	   */
	  List<Map<String, Object>> alreadyBookAndLibId(String libId,String vipId);
	  /**
	   * 我的成长记录
	  * @param params
	  * @param pageable
	  * @return
	  * 创建人：ZhangCaibao 
	  * 2018年8月16日 下午2:14:50 
	  * @Page<Map<String,Object>>
	   */
	  public Page<Map<String, Object>> growthRecordList(Map<String, Object> params, Pageable pageable);

	  Integer findPlCount(String isbn13);

	  Map<String, Object> getIsbnBorrowInfo(String isbn13);

	  void delNodetailInfoData(String libId);
	
}
