Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Absenzen melden (3PT) #186

Closed
fbufbi opened this issue Jul 29, 2020 · 21 comments
Closed

Absenzen melden (3PT) #186

fbufbi opened this issue Jul 29, 2020 · 21 comments
Assignees
Labels
module-AbsenzenBearbeiten Feature fürs Modul "Absenzen bearbeiten" module-OffeneAbsenzen Feature fürs Modul "Offene Absenzen"

Comments

@fbufbi
Copy link
Collaborator

fbufbi commented Jul 29, 2020

Verlinkt im Modul "Meine Absenzen", siehe #185

Die Lernenden sollen Abwesenheiten selber erfassen können.
image
image

Bemerkungen:

  • Datepicker:
    • Datum von/bis sind obligatorische Felder. Filter wie bei offenen Absenzen in URL abbilden.
    • Keine Datumsauswahl vor heute zulassen => Lernende können für den aktuellen Tag (Gegenwart) und die Zukunft Abwesenheiten erfassen, nicht aber für Lektionen in der Vergangenheit (ab gestern)
    • Wird "Datum von" geändert, übernimmt "Datum bis" automatisch diesen Wert, wenn noch leer
    • Datum von/bis im gleichen Datepicker wenn möglich => technisch sehr schwierig, wird nicht umgesetzt
  • Auf eine Suche nach Fach wird verzichtet, weil die Namenskonvention für Lernende zu kompliziert ist
  • Die Angabe eines Grundes ist obligatorisch. Die Abwesenheit erscheint orange (image) in der Präsenzkontrolle und muss von der Fachlehrkraft bestätigt werden, bevor es eine offene Absenz gibt.
  • Freie Halbtage können genauso beantragt werden (Voraussetzung: Präsenzinformationsart ist aktiv - nur dann wird die Zeile "Freier Halbtag" angezeigt).
  • Es können nur Lektionen mit grünem Präsenzstatus (anwesend) bearbeitet werden.

Technische Umsetzung:

  • Lektionsdaten /Students/{token.payload.id_person}/TimetableEntries?filter.From=>yyyy-mm-dd&filter.To=<yyyy-mm-dd&&fields=Id,From,To,EventNumber,EventDesignation,EventManagerInformation laden
  • Offene Absenzen, entschuldigte und unentschuldigte via > /Students/{token.payload.id_person}/LessonAbsences?filter.LessonRef=;{TimetableEntries.Id} laden
  • Vorfälle via /Students/{token.payload.id_person}/LessonIncidents?filter.LessonRef=;{TimetableEntries.Id} laden
  • Dispensationen /Students/{token.payload.id_person}/LessonDispensations?filter.LessonRef=;{TimetableEntries.Id} laden
  • Absenzgründe via /PresenceTypes mit Filter Active && NeedsConfirmation && IsAbsence
  • Halbtag als Grund anzeigen, wenn PresenceTypes?filter.Active==true
  • Update Endpunkt LessonPresences/Edit mit Body: {"LessonIds":[],"PersonIds":[],"PresenceTypeId":(Id)}
  • Neuer Setting: settings.checkableAbsenceStateId (zu kontrollieren)

Beispiel: GYM Schülerin s1@test.ch

@fbufbi fbufbi added module-OffeneAbsenzen Feature fürs Modul "Offene Absenzen" module-AbsenzenBearbeiten Feature fürs Modul "Absenzen bearbeiten" labels Jul 29, 2020
@hupf
Copy link
Collaborator

hupf commented Aug 12, 2020

Offene Punkte:

  • Status soll angezeigt werden, TimetableEntries enthalten aber kein Status
  • Lektionen welche bereits einen Grund haben sollen nicht mehr bearbeitet werden können? Erscheinen sie hier noch in der Liste, oder nicht? Oder erscheinen sie ohne Checkbox?

@hupf hupf added the konzeption Task für Konzeption (POs & UX) label Aug 12, 2020
@fbufbi
Copy link
Collaborator Author

fbufbi commented Aug 25, 2020

@hupf Es sollen nur Lektionen mit grünem Präsenzstatus (anwesend) bearbeitet werden können, also ausgegraute Checkbox oder keine (was sinnvoller ist).

@lmathys lmathys changed the title Absenzen melden Absenzen melden (3PT) Aug 26, 2020
@pmurkowsky
Copy link

pmurkowsky commented Aug 28, 2020

Absenzen melden-v0-1

@fbufbi Bitte um Rückmeldung.

@pmurkowsky
Copy link

Gemäss der Logik in #185 können einmal gemeldete Absenzen von der Schüler*in nicht mehr geändert werden.

@fbufbi
Copy link
Collaborator Author

fbufbi commented Aug 31, 2020

@pmurkowsky

  1. Wir wollen überall möglichst die gleichen Ansichten. Der Text "Hier können Sie..." wurde von euch von Anfang an unter die Suche gestellt und verschwindet nach Klick auf "Anzeigen". Ich finde das gut, weil ich kein Fan solcher Beschreibungen bin. Sie ist am Anfang zwar da, verschwindet dann aber und überlässt den Platz den relevanten Interaktionen.
  2. Getrenntes Datum von/bis: Ist ok, wenn das mit Bootstrap nicht anders geht.
  3. Icons mit Label statt generische Buttons: Wir haben halt anders angefangen und können jetzt nicht in der Hälfte umstellen. Ich merke, bei meinem Screenshot in der Beschreibung fehlt der Bearbeitungsstift, wird noch angepasst.
  4. Gruppierung der Lektionen nach Datum: In Absenzen bearbeiten: Sortierung Tabelle (1PT) #107 sollte die Tabelle der Lehrkraft ("Absenzen bearbeiten") nach Name und Datum gruppiert werden. Dies war allerdings wegen der Paginierung nicht möglich, Hätten wir hier nicht das gleiche Problem? Ich bin ausserdem hin- und hergerissen zwischen einer möglichen Vereinfachung für die Schüler*innen und der gleichen Ansicht wie bei den Lehrkräften.
  5. Darstellung der Absenzgründe:
  • Wenn wir dies so machen, müssten wir es für die Lehrkräfte auch ändern ("Offene Absenzen" und "Absenzen bearbeiten"). Das wäre dort dann aber schon die dritte Ebene (sehr viele radio buttons...). Und was passiert, wenn die die Liste der Gründe länger wird?
    image
  • Braucht es das Zurück, wenn die Schaltfläche "Abbrechen" genau das gleiche bewirkt? Bei den Lehrkräften haben wir das Zurück nicht.
  • Schaltfläche "Übernehmen" statt "Speichern".

@pmurkowsky
Copy link

Hallo @fbufbi, hier mein 2. Vorschlag:

Absenzen melden-v0-2

Zu Deinen Rückmeldungen oben:

  1. und 2.: OK
  2. Wie bereits angesprochen, sollten wir das überdenken. "Bearbeiten" ist mir als Aktion in diesem Kontext zu wenig verständlich und ein neues Icon würde die Sache kaum besser machen.
  3. Ich habe nun auf die Gruppierung verzichtet.
  4. Dazu habe ich einen neuen Vorschlag:

Präsenzkontrolle-v0-1

@fbufbi
Copy link
Collaborator Author

fbufbi commented Sep 4, 2020

@pmurkowsky: Darstellung wie von dir vorgeschlagen (analog Schüler-Profil) ist viel besser!

  • Aber Darstellung gewünscht wie in Schüler-Profil: Meine Absenzen (2PT) #185
  • Liste mit Gründen: Freier Halbtag fehlt in diesem Beispiel (kann auch beantragt werden) + brauchen wir eine visuelle Abgrenzung Absenzen <> Freier Halbtag?
  • "X Lektion(en) ausgewählt" nicht fett

image

@pmurkowsky
Copy link

@fbufbi Hier die überarbeitete Version.

Absenzen melden-v0-3

@fbufbi fbufbi removed the konzeption Task für Konzeption (POs & UX) label Sep 7, 2020
@hupf hupf self-assigned this Sep 15, 2020
hupf added a commit that referenced this issue Sep 21, 2020
hupf added a commit that referenced this issue Sep 21, 2020
@hupf hupf assigned caebr and unassigned hupf Sep 21, 2020
hupf added a commit that referenced this issue Sep 21, 2020
@hupf hupf assigned fbufbi and unassigned caebr Sep 21, 2020
@schefbi
Copy link
Contributor

schefbi commented Sep 22, 2020

@hupf /TimetableEntries müssen mit folgendem querystring Parameter geladen werden, ansonsten gibt es Verdoppelungen (Eine Lektion kann 1-N Lehrer oder Räume zugewiesen haben). Bei Task #185 muss das auch berücksichtigt werden.

fields=Id,From,To,EventNumber,EventDesignation,EventManagerInformation

image

@fbufbi fbufbi assigned hupf and unassigned fbufbi Sep 22, 2020
@fbufbi
Copy link
Collaborator Author

fbufbi commented Sep 22, 2020

@hupf

  1. Der freie Halbtag muss als Grund erscheinen, wenn er aktiv ist (siehe Mockup/Beschreibung). Dies ist ein Unterscheid zu Schüler-Profil: Meine Absenzen (2PT) #185. Beispiel: Halbtag aktiv auf GYM, inaktiv auf BS.
  • Absenzen melden: Im Voraus Abwesenheit mitteilen -> freier Halbtag erscheint, wenn aktiv.
  • Meine Absenzen: Im Nachhinein Grund erfassen -> freier Halbtag erscheint nicht, weil er im Voraus beantragt werden muss.
  1. Stehen am eingegebenen Datum nur nicht auswählbare Lektionen zur Verfügung, hat die Checkbox "Alle" automatisch ein Häkchen. Das irritiert, bitte entfernen. Beispiel: GYM, s1@test.ch 31.10.2020
    image

@hupf
Copy link
Collaborator

hupf commented Sep 23, 2020

Danke für die Rückmeldungen:

  • Wir schränken nun die Felder ein beim Laden der TimeTableEntries. Ist es hier wichtig für den Workaround, dass die EventId nicht geladen wird? Ich frage dies, weil wir die ganze Geschichte intern auf die LessonPresence Struktur abbilden (damit wir die gleiche Logik/Komponenten verwenden können) und dort ist die EventRef.Id immer vorhanden. Es ist nicht so ein Problem, da wir die EventId im Modul hier nicht verwenden, wäre aber etwas schöner, wenn wir sie trotzdem korrekt setzen könnten.
  • Der Halbtag sollte nun korrekt erscheinen – ich hatte nicht berücksichtigt, dass dieser NeedsConfirmation=false hat. Leider habe ich kein Schüleraccount für BZI, könnt ihr das auf BZI noch testen?
  • Das "Alle" wird nun nicht mehr ausgewählt, wenn es keine auswählbaren Einträge hat.

@hupf hupf assigned fbufbi and unassigned hupf Sep 23, 2020
@schefbi
Copy link
Contributor

schefbi commented Sep 23, 2020

@hupf Die EventId könnt Ihr in die fields= Parameter mitnehmen der führt nicht zu Verdopplungen.

@fbufbi
Copy link
Collaborator Author

fbufbi commented Sep 24, 2020

@hupf Könntest du die Beschränkung der Breite aus #191 doch wieder entfernen? Wir müssen das in einem der nächsten Sprints anders lösen. Jetzt ergeben sich solche unschönen Effekte:
image
@caebr Beispiel: BZI, s3@test.ch, Meine Absenzen > Offene Absenzen für 13.10.2020

@fbufbi fbufbi assigned caebr and unassigned fbufbi Sep 24, 2020
@caebr
Copy link
Collaborator

caebr commented Sep 24, 2020

@fbufbi Die Entfernung der Beschränkung löst das Problem nicht. Es tritt bei mittelgrossen Screens weiterhin auf. Wir haben als Alternative die erste Spalte etwas verkleinert und die letzte etwas vergrössert.
Das sollte gut funktionieren, ausser bei mittleren Screens, wenn es sowohl einen sehr langen Klassen- als auch Lehrernamen hat. Dann wird der Klassenname abgeschnitten.
Ist das in Ordnung für euch?

@fbufbi
Copy link
Collaborator Author

fbufbi commented Sep 24, 2020

@caebr Ich kann, ohne es zu sehen, nicht abschätzen, was "etwas verkleinert/vergrössert" bedeutet. Gehe ich richtig in der Annahme, dass ihr die Beschränkung entfernt habt und dann die Spaltenbreite etwas angepasst? Das klingt sinnvoll und wir würden es mal so versuchen.

@caebr
Copy link
Collaborator

caebr commented Sep 24, 2020

@fbufbi Die Beschränkung habe ich nicht entfernt, nur die Spaltenbreiten angepasst.
Ich werde den aktuellen Stand mal so veröffentlichen und du kannst du das anschauen.

@caebr caebr assigned fbufbi and unassigned caebr Sep 24, 2020
@fbufbi
Copy link
Collaborator Author

fbufbi commented Sep 25, 2020

@caebr BZI, s3@test.ch, Offene Absenzen: Fach "Information / Kommunikation / Administration" kommt bei den Kaufleuten vor. Wäre es doch nicht besser, die Beschränkung zu lösen und das Fach breit genug zu machen?
image

@fbufbi
Copy link
Collaborator Author

fbufbi commented Sep 25, 2020

@caebr GYM s1@test,ch, Absenzen melden: Die Linie zur Abtrennung des Halbtags ist nicht dieselbe wie jene oben unter "X Lektionen ausgewählt".

  1. Linie muss weiter nach links reichen. Es fehlt zudem die Linie unter "Freier Halbtag" gemäss Mockup. Die Linien sollten sein wie in "Schüler-Profil" und "Offene Absenzen" an "Meine Absenzen" anpassen / Absenzgrund übernehmen, wenn vorhanden #197 (wenn nur Entschuldigt / Unentschuldigt aufgeführt wird).
  2. Wenns geht gleiches Grau / gleiche Dicke wie die Linie oben
    image

@caebr
Copy link
Collaborator

caebr commented Sep 25, 2020

@caebr BZI, s3@test.ch, Offene Absenzen: Fach "Information / Kommunikation / Administration" kommt bei den Kaufleuten vor. Wäre es doch nicht besser, die Beschränkung zu lösen und das Fach breit genug zu machen?
image

Ich habe die Beschränkung auf "Offene Absenzen" entfernt und die neue Spaltenbreite beibehalten.

@caebr
Copy link
Collaborator

caebr commented Sep 25, 2020

@caebr GYM s1@test,ch, Absenzen melden: Die Linie zur Abtrennung des Halbtags ist nicht dieselbe wie jene oben unter "X Lektionen ausgewählt".

1. Linie muss weiter nach links reichen. Es fehlt zudem die Linie unter "Freier Halbtag" gemäss Mockup. Die Linien sollten sein wie in #197 (wenn nur Entschuldigt / Unentschuldigt aufgeführt wird).

2. Wenns geht gleiches Grau / gleiche Dicke wie die Linie oben
   ![image](https://user-images.githubusercontent.com/49237948/94234795-a880f180-ff0a-11ea-988c-6332de9aab13.png)

Ich habe unter- und oberhalb des freien Halbtags eine Linie im Stil der obigen Linie hinzugefügt.

@fbufbi
Copy link
Collaborator Author

fbufbi commented Sep 25, 2020

Test ok

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
module-AbsenzenBearbeiten Feature fürs Modul "Absenzen bearbeiten" module-OffeneAbsenzen Feature fürs Modul "Offene Absenzen"
Projects
None yet
Development

No branches or pull requests

5 participants