Matsys og vaktsys

Maktsys er to applikasjoner på innsida. UKA bruker disse applikasjonene for å planlegge vakter og forpleining.

Du finner de i <path_til_innsida>/innsida/app/innsida/{foodmanager, shiftmanager}

Databasediagram

Merk dem at denne fort kan bli utdatert, gjerne generer en ny en hvis du merker den er litt off.

python manage.py graph_models shiftmanager foodmanager -o shiftmanager_db.png

Databasediagram for maktsys

theodor sin opprydning til markus/hvem enn som skal jobbe på maktsys

Allergier

Allergier er ikke fritekst lenger. Hvis folk har andre allergier enn de som har lagt inn på de si ifra til admin(gjerne forpleiningen eller noe sånt), som kan lage allergier og gi dem til folk. (Enten fra brukerens side https://innsida.uka.no/funk/1031855/ eller https://innsida.uka.no/admin/foodmanager/allergies/) Er ikke sikkert dette har funket så godt, snakk med UKA-23. Deres erfaringer er ganske viktig for å finne de største painpoints.

Aggregering

Aggregering som nevnes lenger ned her er mulig, men den er litt fønky. Den skal funke? 🤷 Lag litt testdata (eller bruk gammel) og last ned en rapport fra https://innsida.uka.no/admin/foodmanager/

Powertools

Godkjenning av alle skal være implementert. Snakk med Carl, han som lagde det.

Annet

Fra flere steder lenger ned:

"Ved f.eks nattforestillingen er det ofte X folk fra en kunstnerisk gjeng og noen få fra en teknisk. Det gjør at det må lages to vaktplaner og to skift. (Forslag flere eiergrupper tilknyttet en vaktplan)"

Dette fikk vi ofte epost om. Hadde vært nice å fikse.

Ellers

Prøv dere frem i kodebasen og prøv å rydd opp. Innsida blir mer og mer teknisk gjeld for hvert år som går siden det gjerne er append-only. Slett så mye kode dere klarer! Skriv tester! Kjør testene! Lykke til

Prioritering frem mot midten av juni ref møte 23-03-2021

Fokuset er at forpleining kan bruke mindre tid på Maktsys

1. Allergier

Allergier er litt kaos nå. Fritekst gjør at folk bruker det istedet for selectoren og eksporten blir veldig kaotisk. Løsning Forpleiningen lager en liste med allergier, hvis man har andre allergier må man kontakte forpleiningen. Muligens kan da forpleiningen legge det inn på brukeren. Det er også mulig at eksporten blir feil når folk bytter vakter(ubekreftet)

2. Aggregering

Eksporten er egentlig litt for lite til hjelp. Det skulle gjerne hatt aggregerte tall; antall middager, antall brødmat, antall middager med allergi x, antall brødmat med allergi y etc. Eksporten kunne også gjerne vært listet etter vaktstart.

3. Powertools

I liten skala funker godkjenning/underkjenning godt, men når man må godkjenne 100 stykk tar det alt for lang tid. Matvalg burde defaulte til riktig mattype utifra visse kritier og det hadde vært nice og bare godkjenne alle.

Problemer med Maktsys

I UKA-19 opplevde vi en del problemer med Maktsys. Disse oppsto hovedsakelig for administratorer, vi har ikke opplevd klager fra bruekere enda. Vi opplevde følgende problemer

Ting som burde fikses(hentet fra eldre node)

Input fra velferdssjef 2019 (2020-08-21) (altså kun tilbakemelding, ikke nødvendigvis ting som burde implementeres)

Legge til brukere som skiftledere

En vanlig oppgave som dukker opp like før UKA starter er å legge til brukere som skiftledere. Den enkleste måten er nok å gjøre det gjennom django-shellen til innsida, men du kan også gjøre det rett i mdb2.

Legge til en bruker, typisk en nestleder som skiftleder i alle grupper. På cirkus;

$ cd /var/www/uka.no/innsida/
$ source venv/bin/activate
$ python manage.py shell
$ from innsida.authentication.models import User, Group
$ u = User.objects.get(username="brukernavn")
$ g = Group.objects.all()
$ for i in g:
$ ... i.shiftmanagers.add(u)
$ u.flush_shift_admin_cache()

La brukere godkjenne mat

$ cd /var/www/uka.no/innsida/
$ source venv/bin/activate
$ python manage.py shell
$ from innsida.authentication.models import User
$ u = User.objects.get(username="brukernavn")
$ u.approves_foodrequests = True
$ u.save()

Rapporter

UKA vil gjerne ha rapporter. Pass på at disse genereres før forrige UKEs data blir slettet. Hvis du lager en rapport gjerne gjør det som en ["kommando" | https://docs.djangoproject.com/en/4.1/howto/custom-management-commands/].

Rapportscriptet ligger i innsida/innsida/app/innsida/foodmanager/management/commands som kan kjøres sånn her (husk å gå inni riktig venv, og at det må kjøres fra prod):

$ python manage.py get_maktsys_statistic

evt.

$ python manage.py get_maktsys_statistic > rapport<år>.csv

for eksportering til csv fil. Formatteringen er komma som delimiter, dette kan settes i Excel for å få det inni et nais regneark.

Lenker: Start, innsida todo, til nye itkere, uka-no

Epost: itk@samfundet.no | Telefon: 992 15 925 | Sist endret: 2022-11-15 16:16 | Revisjon: 15 (historie, blame) | Totalt: 1872 kB | Rediger