package com.reading.platform.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.reading.platform.entity.CoursePackage;

/**
 * 课程包服务接口
 * 课程包是纯课程集合，不包含商业状态
 */
public interface CoursePackageService extends IService<CoursePackage> {

    /**
     * 获取课程包分页
     */
    Page<CoursePackage> getPackages(int pageNum, int pageSize, String keyword);

    /**
     * 根据 ID 获取课程包
     */
    CoursePackage getPackageById(String id);

    /**
     * 创建课程包
     */
    CoursePackage createPackage(CoursePackage pkg);

    /**
     * 更新课程包
     */
    CoursePackage updatePackage(String id, CoursePackage pkg);

    /**
     * 删除课程包
     */
    void deletePackage(String id);

    // 注意：CoursePackage 不再包含状态字段，状态管理已移至 ProductBundle
    // 以下方法已废弃，请使用 ProductBundleService 相关方法
    // void submitPackage(String id);
    // void reviewPackage(String id, boolean approved, String comment);
    // void publishPackage(String id);
    // void offlinePackage(String id);
}
