package com.dora.service;

/**
 * 视频权限检查服务接口
 */
public interface VideoPermissionService {

    /**
     * 检查用户是否有权限访问视频
     * @param userId 用户ID
     * @param videoId 视频ID
     * @param courseId 课程ID（如果是课程视频）
     * @param chapterId 章节ID（如果是课程视频）
     * @return 是否有权限
     */
    boolean hasVideoAccessPermission(Long userId, String videoId, Long courseId, Long chapterId);

    /**
     * 检查用户是否有权限访问课程视频
     * @param userId 用户ID
     * @param courseId 课程ID
     * @param chapterId 章节ID
     * @return 是否有权限
     */
    boolean hasCourseVideoPermission(Long userId, Long courseId, Long chapterId);

    /**
     * 检查用户是否有权限访问普通视频
     * @param userId 用户ID
     * @param videoId 视频ID
     * @return 是否有权限
     */
    boolean hasGeneralVideoPermission(Long userId, String videoId);
}
