package com.fs.course.service;

import java.util.List;
import com.fs.course.domain.FsUserCourseStudy;
import com.fs.course.param.FsUserCourseListUParam;
import com.fs.course.vo.FsUserCourseStudyListUVO;

/**
 * 课程用户关联Service接口
 *
 * @author fs
 * @date 2024-05-15
 */
public interface IFsUserCourseStudyService
{
    /**
     * 查询课程用户关联
     *
     * @param studyId 课程用户关联主键
     * @return 课程用户关联
     */
    public FsUserCourseStudy selectFsUserCourseStudyByStudyId(String studyId);

    /**
     * 查询课程用户关联列表
     *
     * @param fsUserCourseStudy 课程用户关联
     * @return 课程用户关联集合
     */
    public List<FsUserCourseStudy> selectFsUserCourseStudyList(FsUserCourseStudy fsUserCourseStudy);

    /**
     * 新增课程用户关联
     *
     * @param fsUserCourseStudy 课程用户关联
     * @return 结果
     */
    public int insertFsUserCourseStudy(FsUserCourseStudy fsUserCourseStudy);

    /**
     * 修改课程用户关联
     *
     * @param fsUserCourseStudy 课程用户关联
     * @return 结果
     */
    public int updateFsUserCourseStudy(FsUserCourseStudy fsUserCourseStudy);

    /**
     * 批量删除课程用户关联
     *
     * @param studyIds 需要删除的课程用户关联主键集合
     * @return 结果
     */
    public int deleteFsUserCourseStudyByStudyIds(String[] studyIds);

    /**
     * 删除课程用户关联信息
     *
     * @param studyId 课程用户关联主键
     * @return 结果
     */
    public int deleteFsUserCourseStudyByStudyId(String studyId);

    List<FsUserCourseStudyListUVO> selectFsUserCourseStudyListUVO(FsUserCourseListUParam param);
}
