package shop.alien.second.service;

import com.baomidou.mybatisplus.extension.service.IService;
import shop.alien.entity.result.R;
import shop.alien.entity.second.SecondUserCredit;
import shop.alien.entity.second.SecondUserCreditRecord;
import shop.alien.entity.second.vo.SecondUserCreditRecordListVo;

import java.util.List;

/**
 * 二手平台用户积分记录服务接口
 */
public interface SecondUserCreditRecordService extends IService<SecondUserCreditRecord> {
    
    /**
     * 根据用户ID获取积分记录列表
     * @param userId 用户ID
     * @return 积分记录列表
     */
    java.util.List<SecondUserCreditRecord> getRecordsByUserId(Integer userId);
    
    /**
     * 创建积分记录
     * @param record 积分记录信息
     * @return 是否创建成功
     */
    boolean createRecord(SecondUserCreditRecord record);

    R<SecondUserCreditRecordListVo> getByUserId(Integer userId, Integer timeRange, Integer pointsType);

    /**
     * 用户观看完学习视频后增加积分
     * @param userId 用户ID
     * @param learningId 学习视频ID
     * @return 操作结果
     */
    R<String> addPointsAfterWatchingVideo(Integer userId, Integer learningId);


}