package cn.iselab.mooctest.user.web.logic;

import cn.iselab.mooctest.rpc.user.data.AddIntegralDTO;
import cn.iselab.mooctest.rpc.user.data.IntegralCaughtDTO;
import cn.iselab.mooctest.rpc.user.data.UserIntegralDTO;
import cn.iselab.mooctest.user.model.Integral;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

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

/**
 * @Author ROKG
 * @Description
 * @Date: Created in 下午11:05 2018/2/13
 * @Modified By:
 */
public interface IntegralLogic {

    IntegralCaughtDTO saveIntegralCaught(IntegralCaughtDTO dto);

    List<IntegralCaughtDTO> getIntegralCaughts(long userId, long startTime, long endTime);

    List<UserIntegralDTO> getUserIntegrals(String keyword);

    UserIntegralDTO getUserIntegral(Long userId);

    boolean addIntegral(AddIntegralDTO dto);

    Map<String,Integral> reloadIntegralMap();

    List<IntegralCaughtDTO> getUserIntegralRecord(long userId, long type, String source);
}
