X-Git-Url: http://git.pk910.de/?p=DHBWCampusApp.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fde%2Fdhbwloe%2Fcampusapp%2Fdatabase%2FVorlesungsplanDatabaseHelper.java;h=8fc5f9569edc11dc2d67b8e531303c7ff85d4ef0;hp=f4d5c8a99ba5fb717d5099c34f8536af0a80ff2d;hb=5b19adec4e1c709d0166b6a10319ba807d1e4b8b;hpb=cea4ee15ef92f521ae962404bd1b3c25042219fa diff --git a/app/src/main/java/de/dhbwloe/campusapp/database/VorlesungsplanDatabaseHelper.java b/app/src/main/java/de/dhbwloe/campusapp/database/VorlesungsplanDatabaseHelper.java index f4d5c8a..8fc5f95 100644 --- a/app/src/main/java/de/dhbwloe/campusapp/database/VorlesungsplanDatabaseHelper.java +++ b/app/src/main/java/de/dhbwloe/campusapp/database/VorlesungsplanDatabaseHelper.java @@ -420,4 +420,61 @@ public class VorlesungsplanDatabaseHelper { return groupsArr; } + public CourseEvent[] getCourseExamEvents(String coursename, long timeFrom, long timeTo) { + String[] whereArgs = new String[] { + coursename, + Long.toString(timeFrom), + Long.toString(timeTo) + }; + Cursor resultSet = database.rawQuery( + "SELECT " + + "Id, CourseName, UniqueId, SequenceId, CourseCalendarEvent.EventFrom, CourseCalendarEvent.EventTo, EventTitle, EventLocation, EventStatus, RecurRule, ExcludeDates, CourseGroupId, EventType " + + "FROM " + + "CourseCalendarEvent " + + "LEFT JOIN " + + "CourseCalendar ON CourseCalendar.Id = CourseCalendarEvent.EventId "+ + "WHERE " + + "CourseName = ? AND CourseCalendarEvent.EventTo >= ? AND CourseCalendarEvent.EventFrom <= ? AND EventType = 2", + whereArgs); + ArrayList events = new ArrayList(); + if(resultSet.moveToFirst()) { + int[] columnIndexes = { + resultSet.getColumnIndex("Id"), + resultSet.getColumnIndex("CourseName"), + resultSet.getColumnIndex("UniqueId"), + resultSet.getColumnIndex("SequenceId"), + resultSet.getColumnIndex("EventFrom"), + resultSet.getColumnIndex("EventTo"), + resultSet.getColumnIndex("EventTitle"), + resultSet.getColumnIndex("EventLocation"), + resultSet.getColumnIndex("EventStatus"), + resultSet.getColumnIndex("RecurRule"), + resultSet.getColumnIndex("ExcludeDates"), + resultSet.getColumnIndex("CourseGroupId"), + resultSet.getColumnIndex("EventType") + }; + do { + int groupId = resultSet.getInt(columnIndexes[11]); + CourseGroup group; + if(groupId > 0) + group = CourseGroup.GetCourseGroupById(AppContext.getDatabaseManager(), groupId); + else + group = null; + + int eventType = resultSet.getInt(columnIndexes[12]); + + CourseEvent event = new CourseEvent(resultSet.getInt(columnIndexes[0]), resultSet.getString(columnIndexes[1]), resultSet.getString(columnIndexes[2]), resultSet.getInt(columnIndexes[3]), + resultSet.getLong(columnIndexes[4]), resultSet.getLong(columnIndexes[5]), resultSet.getString(columnIndexes[6]), resultSet.getString(columnIndexes[7]), + resultSet.getString(columnIndexes[8]), resultSet.getString(columnIndexes[9]), resultSet.getString(columnIndexes[10]), group, eventType); + + events.add(event); + } while (resultSet.moveToNext()); + } + resultSet.close(); + + CourseEvent[] eventsArr = new CourseEvent[events.size()]; + eventsArr = events.toArray(eventsArr); + return eventsArr; + } + }