package com.lesingle.edu.mapper.struct;

import com.lesingle.edu.dto.response.*;
import com.lesingle.edu.entity.CoursePackage;
import com.lesingle.edu.entity.Lesson;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 教师统计转换器
 */
@Mapper
public interface TeacherStatsMapperStruct {

    TeacherStatsMapperStruct INSTANCE = Mappers.getMapper(TeacherStatsMapperStruct.class);

    /**
     * Lesson 转 TeacherLessonVO
     */
    TeacherLessonVO toLessonVO(Lesson lesson);

    /**
     * List<Lesson> 转 List<TeacherLessonVO>
     */
    List<TeacherLessonVO> toLessonVOList(List<Lesson> lessons);

    /**
     * CoursePackage 转 CoursePackageVO
     */
    CoursePackageVO toCoursePackageVO(CoursePackage coursePackage);

    /**
     * List<CoursePackage> 转 List<CoursePackageVO>
     */
    List<CoursePackageVO> toCoursePackageVOList(List<CoursePackage> coursePackages);
}
