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

import com.ssj.bean.weixin.libmy.domain.LibBookSwitchInfo;
import com.ssj.framework.core.common.service.BaseService;
import com.ssj.service.reading.out.VipBorrowOutDto;
import com.ssj.service.weixin.library.dto.out.BookHisViewOutDto;
import com.ssj.service.weixin.library.dto.out.IndexOutDto;
import com.ssj.service.weixin.library.dto.out.LibRankingOutDto;
import com.ssj.service.weixin.library.dto.out.SuccessOutDto;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

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

public interface IBookSwitchInfoService extends BaseService<LibBookSwitchInfo, String> {

    List<LibBookSwitchInfo> findSwitchList(String searchLibId, int type);

    LibBookSwitchInfo findSwitchInfo(String libId, Integer type,String detailId);

    Page<IndexOutDto> findGoodIndexData(Map<String,String> params, Pageable pageable);

    List<SuccessOutDto> findBorrowedList(List<String> bookDetails);

    Page<Map<String, Object>> growthRecordList(Map<String, Object> params, Pageable pageable);

    Page<BookHisViewOutDto> themeBorrowedList(Map<String, String> params, Pageable pageable);

    Page<LibRankingOutDto> findUserRankingLib(Map<String, Object> params, Pageable pageable);

    Page<LibRankingOutDto> libRankingHis(Map<String, Object> params, Pageable pageable);

    List<VipBorrowOutDto> findInfoListById(String bookInfoId,String libId);
}
