package com.reading.platform.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.reading.platform.dto.request.ClassCreateRequest;
import com.reading.platform.dto.request.ClassUpdateRequest;
import com.reading.platform.entity.Clazz;

import java.util.List;

/**
 * Class Service Interface
 */
public interface ClassService {

    Clazz createClass(Long tenantId, ClassCreateRequest request);

    Clazz updateClass(Long id, ClassUpdateRequest request);

    Clazz getClassById(Long id);

    Page<Clazz> getClassPage(Long tenantId, Integer pageNum, Integer pageSize, String keyword, String grade, String status);

    void deleteClass(Long id);

    void assignTeachers(Long classId, List<Long> teacherIds);

    void assignStudents(Long classId, List<Long> studentIds);

    List<Long> getTeacherIdsByClassId(Long classId);

}
