Ejemplo n.º 1
0
  public ArrayList<LessonListElement> getLessonList(final Integer dayOfSemestr) {
    ArrayList<LessonListElement> result = new ArrayList<LessonListElement>();

    int weekState = CalendarManager.getWeekState(dayOfSemestr);
    int dayOfWeek = CalendarManager.getDayOfWeek(dayOfSemestr);

    String query =
        TextUtils.concat(
                "SELECT * FROM ",
                LessonTableModel.TABLE_NAME,
                " WHERE ",
                LessonTableModel.GROUP_ID,
                " ='",
                PreferenceManager.getInstance().getGroupId().toString(),
                "' AND ",
                LessonTableModel.DAY,
                "=? AND ",
                "(",
                LessonTableModel.WEEK_STATE,
                "=? OR ",
                LessonTableModel.WEEK_STATE,
                "='2')",
                " GROUP BY ",
                LessonTableModel.NUMBER,
                " ORDER BY ",
                LessonTableModel.NUMBER)
            .toString();

    Cursor c =
        mDb.rawQuery(
            query, new String[] {Integer.toString(dayOfWeek), Integer.toString(weekState)});
    LessonListElement lesson;
    long date = CalendarManager.getDate(dayOfSemestr) / CalendarManager.MILISECONDS_PER_DAY;
    while (c.moveToNext()) {
      lesson = getLessonFromCursor(c);
      lesson.setHasHomeWork(DataManager.getInstance().lessonHasHomeWork(lesson.getId(), date));
      result.add(lesson);
    }

    return result;
  }