package com.dora.mapper;

import com.dora.entity.CourseChapter;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 课程章节 Mapper
 */
@Mapper
public interface CourseChapterMapper {

    /**
     * 插入章节
     */
    int insert(CourseChapter chapter);

    /**
     * 根据ID查询章节
     */
    CourseChapter selectById(Long id);

    /**
     * 根据课程ID查询章节列表
     */
    List<CourseChapter> selectByCourseId(Long courseId);

    /**
     * 获取下一个排序号
     */
    int selectNextOrderNum(Long courseId);

    /**
     * 根据ID更新章节
     */
    int updateById(CourseChapter chapter);

    /**
     * 软删除章节
     */
    int softDelete(@Param("id") Long id, @Param("courseId") Long courseId);

    /**
     * 根据课程ID软删除所有章节
     */
    int softDeleteByCourseId(Long courseId);
}


