package com.reading.platform.service;

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

import java.util.List;

/**
 * 学校套餐购买记录服务接口
 */
public interface TenantProductBundleService extends IService<TenantProductBundle> {

    /**
     * 获取学校套餐购买记录分页
     */
    Page<TenantProductBundle> getTenantBundlePage(int pageNum, int pageSize, String tenantId, String status);

    /**
     * 根据 ID 获取购买记录
     */
    TenantProductBundle getTenantBundleById(String id);

    /**
     * 获取学校的套餐列表
     */
    List<TenantProductBundle> getTenantBundlesByTenantId(String tenantId);

    /**
     * 获取学校当前有效的套餐
     */
    TenantProductBundle getActiveTenantBundle(String tenantId);

    /**
     * 创建购买记录
     */
    TenantProductBundle createTenantBundle(TenantProductBundle record);

    /**
     * 更新购买记录
     */
    TenantProductBundle updateTenantBundle(String id, TenantProductBundle record);

    /**
     * 激活套餐
     */
    void activateBundle(String id);

    /**
     * 过期套餐
     */
    void expireBundle(String id);

    /**
     * 暂停套餐
     */
    void suspendBundle(String id);
}
