as method

  1. @override
Query<HasResultSet, dynamic> as()
override

This method is overridden by Dart-defined views to declare the right query to run.

Implementation

@override
Query as() =>
    select([
      courseOfferings.id,
      courseOfferings.number,
      courseOfferings.semester,
      nameZh,
      nameEn,
      credits,
      hours,
      schedules.dayOfWeek,
      schedules.period,
      classroomNameZh,
      classroomNameEn,
    ]).from(schedules).join([
      innerJoin(
        courseOfferings,
        courseOfferings.id.equalsExp(schedules.courseOffering),
      ),
      leftOuterJoin(
        courses,
        courses.code.equalsExp(courseOfferings.courseCode),
      ),
      leftOuterJoin(
        classrooms,
        classrooms.id.equalsExp(schedules.classroom),
      ),
    ]);