section_event.dart 1.34 KB
part of 'section_bloc.dart';

@immutable
abstract class SectionEvent {}

class RequestDataEvent extends SectionEvent {
  final int courseUnitId;

  RequestDataEvent(this.courseUnitId);
}

///获取视频课程内容
class RequestVideoLessonEvent extends SectionEvent {
  final String courseLessonId;
  final int courseType;

  RequestVideoLessonEvent(this.courseLessonId, this.courseType);
}

///进入课堂
class RequestEnterClassEvent extends SectionEvent {
  final String courseLessonId;
  final int courseType;

  RequestEnterClassEvent(this.courseLessonId, this.courseType);
}

///结束课堂
class RequestEndClassEvent extends SectionEvent {
  final String courseLessonId;

  ///当前进展(进度类,比如练习、绘本)
  final int? currentStep;

  ///当前时间(进度类,比如音视频)
  final int? currentTime;

  ///课程环节是否完成(决定调结束接口还是退出接口)
  final bool isCompleted;

  ///自动进入下一环节
  final bool autoNextSection;

  RequestEndClassEvent(this.courseLessonId, isCompleted,
      {this.currentStep, this.currentTime, autoNextSection})
      : isCompleted = isCompleted ?? false,
        autoNextSection = autoNextSection ?? false;
}

///页面切换
class CurrentUnitIndexChangeEvent extends SectionEvent {
  final int unitIndex;

  CurrentUnitIndexChangeEvent(this.unitIndex);
}