package com.ynfy.buss.course.usercoursecatalog.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ynfy.buss.course.usercoursecatalog.entity.vo.UserCourseStudyVO;
import com.ynfy.buss.course.usercoursecatalog.entity.UserCourseCatalog;
import com.ynfy.buss.course.usercoursecatalog.entity.vo.CatalogTimeVO;
import com.ynfy.buss.practice.userpractice.entity.UserPractice;

import java.util.List;

/**
 * @Description: 用户课程任务学习情况
 * @Author: jeecg-boot
 * @Date: 2023-10-25
 * @Version: V1.0
 */
public interface IUserCourseCatalogService extends IService<UserCourseCatalog> {

    /**
     * 计算任务学习时长
     *
     * @return
     */
    void calcStudyTime(CatalogTimeVO catalogTimeVO);

    UserCourseCatalog findUserCatalog(String userId, String courseCatalogId);


    /**
     * 获取课程任务学习进度
     *
     * @return
     */
    List<UserCourseCatalog> getCourseStudyProcess(String courseId);


    /**
     * 获取用户课程学习情况
     *
     * @param courseIds
     * @param userId
     * @return
     */
    List<UserCourseStudyVO> getUserCourseStudy(List<String> courseIds, String userId);


    IPage<UserCourseCatalog> selectPageList(IPage<UserCourseCatalog> page, UserCourseCatalog userCourseCatalog);

}
