[ROADMAP] Migration to new data model for timetables #58

Closed
opened 2023-04-02 16:46:13 +02:00 by hansegucker · 59 comments
Owner

This currently consists of work in the following apps:

The following things have to implemented and tested:

  • Import of all kinds of data from Untis
  • Calendar frontend
  • Export of ICS files (AlekSIS/official/AlekSIS-App-Chronos#40)
  • Direct integration of iCal feeds in calendar software (AlekSIS/official/AlekSIS-App-Chronos#40)
  • Display of lessons, substitutions, supervisions, events, and extra lessons in calendar frontend
  • Tracking of timetable changes and sending of notifications

These are the steps:

  • Creation of new models in Cursus (AlekSIS/onboarding/AlekSIS-App-Cursus!105)
  • Creation of new models in Lesrooster (AlekSIS/onboarding/AlekSIS-App-Lesrooster!105)
  • Basic implementation of calendar feeds in Core (AlekSIS/official/AlekSIS-Core!1252)
  • Basic implementation of calendar frontend in Core (AlekSIS/official/AlekSIS-Core!1252)
  • Creation of new Holiday model in Core (AlekSIS/official/AlekSIS-Core!1289)
  • Merge of Holiday model and basic calendar frontend (AlekSIS/official/AlekSIS-Core!1289, AlekSIS/official/AlekSIS-Core!1252)
  • Import of all data from AlekSIS-App-Untis (AlekSIS/official/AlekSIS-App-Untis!270)
    • Subjects
    • Rooms
    • Absence Reasons/Types
    • Person absences
    • Class absences
    • Room absences
    • Teachers
    • Classes
    • Slots and breaks
    • Supervisions
    • Lessons (Lesrooster)
  • Exam model in Cursus
  • Fix not working django-jsonstore
  • Event generation from lessons in Chronos (https://edugit.org/AlekSIS/official/AlekSIS-App-Chronos/-/merge_requests/301)
  • Event generation from supervisions in Chronos (https://edugit.org/AlekSIS/official/AlekSIS-App-Chronos/-/merge_requests/301)
  • Import more data from AlekSIS-App-Untis
    • Substitutions (amending lesson events in Chronos)
    • Extra lessons (free event via Chronos)
    • Supervision substitutions (amending supervision events in Chronos, AlekSIS/official/AlekSIS-App-Chronos#189)
    • Events (free event via Chronos)
    • Exams (free event via Chronos)
    • Change tracking
    • Clean up import
    • Update logging
  • Ensure __str__ methods and name mixins for m2m fields everywhere
  • Ensure all necessary attributes at calendar events and customize displaying of events in AlekSIS' own calendar frontend (all data from old frontend have to be included)
  • Substitutions should be cancelled at the substituted plan
  • Calendar events with current changes should be marked extra
  • Check permissions for calendars
  • Test with teacher and student accounts
  • Fix typing everywhere
  • Implement filtered calendar feeds for e.g. room timetables
  • New Chronos frontend
    • Room timetables, teacher timetables, class/course timetables (AlekSIS/official/AlekSIS-App-Chronos#150)
    • Special views (AlekSIS/official/AlekSIS-App-Chronos#119, AlekSIS/official/AlekSIS-App-Chronos#120)
    • Substitutions as table and as PDF
  • Working notification system (AlekSIS/official/AlekSIS-App-Chronos#201, https://edugit.org/AlekSIS/official/AlekSIS-App-Chronos/-/issues/209)
  • Migration path from old Chronos to new Chronos
  • Dropping of old models in Chronos
  • Frontend for managing holidays in Core (@ZugBahnHof, AlekSIS/official/AlekSIS-Core!1365)
  • Fix versions
  • Document new data model with text and graphic
  • Document usage of calendar system
This currently consists of work in the following apps: - Core (AlekSIS/official/AlekSIS-Core!1408) - Chronos (https://edugit.org/AlekSIS/official/AlekSIS-App-Chronos/-/merge_requests/301) - Cursus (AlekSIS/onboarding/AlekSIS-App-Cursus!106) - Lesrooster (AlekSIS/onboarding/AlekSIS-App-Lesrooster!106) - Untis (AlekSIS/official/AlekSIS-App-Untis!270) - Kolego (master) The following things have to implemented and tested: - [ ] Import of all kinds of data from Untis - [x] Calendar frontend - [x] Export of ICS files (AlekSIS/official/AlekSIS-App-Chronos#40) - [ ] Direct integration of iCal feeds in calendar software (AlekSIS/official/AlekSIS-App-Chronos#40) - [ ] Display of lessons, substitutions, supervisions, events, and extra lessons in calendar frontend - [ ] Tracking of timetable changes and sending of notifications These are the steps: - [x] Creation of new models in Cursus (AlekSIS/onboarding/AlekSIS-App-Cursus!105) - [x] Creation of new models in Lesrooster (AlekSIS/onboarding/AlekSIS-App-Lesrooster!105) - [x] Basic implementation of calendar feeds in Core (AlekSIS/official/AlekSIS-Core!1252) - [x] Basic implementation of calendar frontend in Core (AlekSIS/official/AlekSIS-Core!1252) - [x] Creation of new Holiday model in Core (AlekSIS/official/AlekSIS-Core!1289) - [x] Merge of Holiday model and basic calendar frontend (AlekSIS/official/AlekSIS-Core!1289, AlekSIS/official/AlekSIS-Core!1252) - [ ] Import of all data from AlekSIS-App-Untis (AlekSIS/official/AlekSIS-App-Untis!270) - [x] Subjects - [x] Rooms - [x] Absence Reasons/Types - [x] Person absences - [ ] Class absences - [ ] Room absences - [x] Teachers - [x] Classes - [x] Slots and breaks - [x] Supervisions - [x] Lessons (Lesrooster) - [ ] Exam model in Cursus - [x] Fix not working django-jsonstore - [x] Event generation from lessons in Chronos (https://edugit.org/AlekSIS/official/AlekSIS-App-Chronos/-/merge_requests/301) - [x] Event generation from supervisions in Chronos (https://edugit.org/AlekSIS/official/AlekSIS-App-Chronos/-/merge_requests/301) - [ ] Import more data from AlekSIS-App-Untis - [x] Substitutions (amending lesson events in Chronos) - [x] Extra lessons (free event via Chronos) - [x] Supervision substitutions (amending supervision events in Chronos, AlekSIS/official/AlekSIS-App-Chronos#189) - [x] Events (free event via Chronos) - [ ] Exams (free event via Chronos) - [x] Change tracking - [ ] Clean up import - [ ] Update logging - [x] Ensure `__str__` methods and name mixins for m2m fields everywhere - [x] Ensure all necessary attributes at calendar events and customize displaying of events in AlekSIS' own calendar frontend (all data from old frontend have to be included) - [x] Substitutions should be cancelled at the substituted plan - [x] Calendar events with current changes should be marked extra - [x] Check permissions for calendars - [x] Test with teacher and student accounts - [x] Fix typing everywhere - [x] Implement filtered calendar feeds for e.g. room timetables - [ ] New Chronos frontend - [x] Room timetables, teacher timetables, class/course timetables (AlekSIS/official/AlekSIS-App-Chronos#150) - [ ] Special views (AlekSIS/official/AlekSIS-App-Chronos#119, AlekSIS/official/AlekSIS-App-Chronos#120) - [ ] Substitutions as table and as PDF - [ ] Working notification system (AlekSIS/official/AlekSIS-App-Chronos#201, https://edugit.org/AlekSIS/official/AlekSIS-App-Chronos/-/issues/209) - [ ] Migration path from old Chronos to new Chronos - [ ] Dropping of old models in Chronos - [x] Frontend for managing holidays in Core (@ZugBahnHof, AlekSIS/official/AlekSIS-Core!1365) - [ ] Fix versions - [ ] Document new data model with text and graphic - [ ] Document usage of calendar system
Author
Owner

assigned to @hansegucker

assigned to @hansegucker
Author
Owner

marked the checklist item Creation of new models in Cursus (AlekSIS/onboarding/AlekSIS-App-Cursus!105) as completed

marked the checklist item **Creation of new models in Cursus (AlekSIS/onboarding/AlekSIS-App-Cursus!105)** as completed
Author
Owner

marked the checklist item Creation of new models in Lesrooster (AlekSIS/onboarding/AlekSIS-App-Lesrooster!105) as completed

marked the checklist item **Creation of new models in Lesrooster (AlekSIS/onboarding/AlekSIS-App-Lesrooster!105)** as completed
Author
Owner

marked the checklist item Basic implementation of calendar feeds in Core (AlekSIS/official/AlekSIS-Core!1252) as completed

marked the checklist item **Basic implementation of calendar feeds in Core (AlekSIS/official/AlekSIS-Core!1252)** as completed
Author
Owner

marked the checklist item Creation of new Holiday model in Core (AlekSIS/official/AlekSIS-Core!1289) as completed

marked the checklist item **Creation of new Holiday model in Core (AlekSIS/official/AlekSIS-Core!1289)** as completed
Author
Owner

marked the checklist item Creation of new Holiday model in Core (AlekSIS/official/AlekSIS-Core!1289) as incomplete

marked the checklist item **Creation of new Holiday model in Core (AlekSIS/official/AlekSIS-Core!1289)** as incomplete
Author
Owner

marked the checklist item Subjects as completed

marked the checklist item **Subjects** as completed
Author
Owner

marked the checklist item Rooms as completed

marked the checklist item **Rooms** as completed
Author
Owner

marked the checklist item Teachers as completed

marked the checklist item **Teachers** as completed
Author
Owner

marked the checklist item Classes as completed

marked the checklist item **Classes** as completed
Author
Owner

marked the checklist item Slots and breaks as completed

marked the checklist item **Slots and breaks** as completed
Author
Owner

marked the checklist item Lessons (Lesrooster) as completed

marked the checklist item **Lessons (Lesrooster)** as completed
Author
Owner

marked the checklist item Creation of new Holiday model in Core (AlekSIS/official/AlekSIS-Core!1289) as completed

marked the checklist item **Creation of new Holiday model in Core (AlekSIS/official/AlekSIS-Core!1289)** as completed
Author
Owner

marked the checklist item Fix not working django-jsonstore as completed

marked the checklist item **Fix not working django-jsonstore** as completed
Member

mentioned in issue #59

mentioned in issue #59
Author
Owner

marked the checklist item Event generation from lessons in Chronos as completed

marked the checklist item **Event generation from lessons in Chronos** as completed
Author
Owner

marked the checklist item Event generation from supervisions in Chronos as completed

marked the checklist item **Event generation from supervisions in Chronos** as completed
Author
Owner

marked the checklist item Supervisions as completed

marked the checklist item **Supervisions** as completed
Author
Owner

Where to put room and group absences????

Where to put room and group absences????
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

marked the checklist item Substitutions (amending lesson events in Chronos) as completed

marked the checklist item **Substitutions (amending lesson events in Chronos)** as completed
Author
Owner

marked the checklist item Supervision substitutions (amending supervision events in Untis) as completed

marked the checklist item **Supervision substitutions (amending supervision events in Untis)** as completed
Author
Owner

marked the checklist item Supervision substitutions (amending supervision events in Untis) as incomplete

marked the checklist item **Supervision substitutions (amending supervision events in Untis)** as incomplete
Author
Owner

marked the checklist item Supervision substitutions (amending supervision events in Chronos, AlekSIS/official/AlekSIS-App-Chronos#189) as completed

marked the checklist item **Supervision substitutions (amending supervision events in Chronos, AlekSIS/official/AlekSIS-App-Chronos#189)** as completed
Author
Owner

changed the description

changed the description
Author
Owner

marked the checklist item Absence Reasons/Types as completed

marked the checklist item **Absence Reasons/Types** as completed
Author
Owner

marked the checklist item Person absences as completed

marked the checklist item **Person absences** as completed
Author
Owner

marked the checklist item Basic implementation of calendar frontend in Core (AlekSIS/official/AlekSIS-Core!1252) as completed

marked the checklist item **Basic implementation of calendar frontend in Core (AlekSIS/official/AlekSIS-Core!1252)** as completed
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

marked the checklist item Extra lessons (free event via Chronos) as completed

marked the checklist item **Extra lessons (free event via Chronos)** as completed
Author
Owner

marked the checklist item Events (free event via Chronos) as completed

marked the checklist item **Events (free event via Chronos)** as completed
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

marked the checklist item Ensure __str__ methods and name mixins for m2m fields everywhere as completed

marked the checklist item **Ensure `__str__` methods and name mixins for m2m fields everywhere** as completed
Author
Owner

marked the checklist item Calendar events with current changes should be marked extra as completed

marked the checklist item **Calendar events with current changes should be marked extra** as completed
Author
Owner

marked the checklist item Fix typing everywhere as completed

marked the checklist item **Fix typing everywhere** as completed
Author
Owner

marked the checklist item Change tracking as completed

marked the checklist item **Change tracking** as completed
Author
Owner

changed the description

changed the description
Author
Owner

marked the checklist item Merge of Holiday model and basic calendar frontend (AlekSIS/official/AlekSIS-Core!1289, AlekSIS/official/AlekSIS-Core!1252) as completed

marked the checklist item **Merge of Holiday model and basic calendar frontend (AlekSIS/official/AlekSIS-Core!1289, AlekSIS/official/AlekSIS-Core!1252)** as completed
Author
Owner

marked the checklist item Ensure all necessary attributes at calendar events and customize displaying of events in AlekSIS' own calendar frontend (all data from old frontend have to be included) as completed

marked the checklist item **Ensure all necessary attributes at calendar events and customize displaying of events in AlekSIS' own calendar frontend (all data from old frontend have to be included)** as completed
Author
Owner

marked the checklist item Substitutions should be cancelled at the substituted plan as completed

marked the checklist item **Substitutions should be cancelled at the substituted plan** as completed
Author
Owner

marked the checklist item Check permissions for calendars as completed

marked the checklist item **Check permissions for calendars** as completed
Author
Owner

marked the checklist item Test with teacher and student accounts as completed

marked the checklist item **Test with teacher and student accounts** as completed
Author
Owner

marked the checklist item Frontend for managing holidays in Core (@ZugBahnHof, AlekSIS/official/AlekSIS-Core!1365) as completed

marked the checklist item **Frontend for managing holidays in Core (@ZugBahnHof, AlekSIS/official/AlekSIS-Core!1365)** as completed
Author
Owner

changed the description

changed the description
Author
Owner

changed the description

changed the description
Author
Owner

marked the checklist item Implement filtered calendar feeds for e.g. room timetables as completed

marked the checklist item **Implement filtered calendar feeds for e.g. room timetables** as completed
Author
Owner

marked the checklist item Room timetables, teacher timetables, class/course timetables (AlekSIS/official/AlekSIS-App-Chronos#150) as completed

marked the checklist item **Room timetables, teacher timetables, class/course timetables (AlekSIS/official/AlekSIS-App-Chronos#150)** as completed
Author
Owner

marked the checklist item Calendar frontend as completed

marked the checklist item **Calendar frontend** as completed
Author
Owner

marked the checklist item Export of ICS files (AlekSIS/official/AlekSIS-App-Chronos#40) as completed

marked the checklist item **Export of ICS files (AlekSIS/official/AlekSIS-App-Chronos#40)** as completed
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
aleksis/AlekSIS#58
No description provided.