ruzne exporty resitelu - zatím určitě ne merge xd spíš potřebuji zpětnou vazbu... #89

Merged
zelvuska merged 5 commits from export_resitelskych_dat into master 2025-02-26 21:01:25 +01:00
Owner

Zatím to není moc učesané...
V tvorba.utils si nejsem úplně jistý těmi query sety...
html by chtělo trochu více stylů, ale UX funguje podle mě dobře...
Nějak lépe vymyslet ten enum?

also při exportu organizátorů soustředění, u některých nefunguje správně funkce str(soustředení)... Bud' dělám něco špatně, nebo testdata?

Zatím to není moc učesané... V tvorba.utils si nejsem úplně jistý těmi query sety... html by chtělo trochu více stylů, ale UX funguje podle mě dobře... Nějak lépe vymyslet ten enum? also při exportu organizátorů soustředění, u některých nefunguje správně funkce str(soustředení)... Bud' dělám něco špatně, nebo testdata?
ticvac added 1 commit 2025-01-29 18:21:34 +01:00
ledoian reviewed 2025-02-19 18:45:36 +01:00
ledoian left a comment
Owner

Zatím nemám zkouknuté ty „typované“ views…

Zatím nemám zkouknuté ty „typované“ views…
@ -472,1 +522,4 @@
return response
def dataOsobCsvResponse(queryset, columns=None, with_header=True):
"""Pomocná funkce pro vracení dat osob jako CSV. Musí dostat správný QuerySet, který dává Ososby"""
Owner

Uh, pojďme ten kód neduplikovat. Co když default_columns a field_name_overrides budou slovníky, které jako klíče budou mít typ objektu (personalni.models.Osoba nebo personalni.models.Resitel), podle toho se ta správná věc zvolí a zbytek bude jen jeden?

Uh, pojďme ten kód neduplikovat. Co když `default_columns` a `field_name_overrides` budou slovníky, které jako klíče budou mít typ objektu (`personalni.models.Osoba` nebo `personalni.models.Resitel`), podle toho se ta správná věc zvolí a zbytek bude jen jeden?
Owner

Přičemž klidně seznam pro Řešitele můžeme prostě odvodit ze seznamu pro Osoby kódem, to ničemu asi nevadí…)

Přičemž klidně seznam pro Řešitele můžeme prostě odvodit ze seznamu pro Osoby kódem, to ničemu asi nevadí…)
ticvac marked this conversation as resolved
@ -473,0 +526,4 @@
default_columns = (
'id',
'osoba__jmeno',
Owner

Tohle iirc nefunguje pro Osoby, protože už nemají field osoba

Tohle iirc nefunguje pro Osoby, protože už nemají field `osoba`…
ticvac marked this conversation as resolved
@ -30,0 +35,4 @@
Výstup:
QuerySet objektů typu Resitel
Nejsem si moc jistý, jestli to tak funguje... Vašek """
Owner

@zelvuska už nějak bastlil autogenerovanou dokumentaci, zkuste to asi nějak poladit, ať to dopadne nějak konzistentně (hlavně ať se případně změny stylu dají dělat na jednom místě nad (aspoň trochu) strukturovanými daty a ne všude v kódu…)

(As in: mně to je jedno a je super, že to je zdokumentované, jen to pak možná bude někde dělat bordel…)

@zelvuska už nějak bastlil autogenerovanou dokumentaci, zkuste to asi nějak poladit, ať to dopadne nějak konzistentně (hlavně ať se případně změny stylu dají dělat na jednom místě nad (aspoň trochu) strukturovanými daty a ne všude v kódu…) (As in: mně to je jedno a je super, že to je zdokumentované, jen to pak možná bude někde dělat bordel…)
Owner

Ale jak koukám výš, tak tam je to taky takhle… 🤷

Ale jak koukám výš, tak tam je to taky takhle… 🤷
ticvac marked this conversation as resolved
@ -30,0 +39,4 @@
return personalni.models.Resitel.objects.filter(
reseni__hodnoceni__deadline_body__cislo=cislo
).distinct()
Owner

Tohle asi funguje (pokud to něco vrací…). Samozřejmě to naráží na to, že „kdo řešil co v nějakém čísle“ je strašně špatně definované… (Technicky je tohle dotaz na to, kdo má nějaké body zadané k nějakému deadlinu, může dávat lepší smysl se ptát na řešitele, kteří poslali řešení mezi vydáním nějakého čísla a jeho (nejzazším) deadlinem, což je o trochu přesnější ale naopak je potřeba řešit případný překryv deadlinů čísel a asi to za to nestojí…)

Tohle asi funguje (pokud to něco vrací…). Samozřejmě to naráží na to, že „kdo řešil co v nějakém čísle“ je strašně špatně definované… (Technicky je tohle dotaz na to, kdo má nějaké _body_ zadané k nějakému deadlinu, může dávat lepší smysl se ptát na řešitele, kteří poslali řešení mezi vydáním nějakého čísla a jeho (nejzazším) deadlinem, což je o trochu přesnější ale naopak je potřeba řešit případný překryv deadlinů čísel a asi to za to nestojí…)
ticvac marked this conversation as resolved
tvorba/utils.py Outdated
@ -30,0 +48,4 @@
from datetime import datetime
current_year = datetime.now().year
'''Člověk odmaturuje když je jeho rok maturity menší nebo stejný jako aktuální rok? '''
return personalni.models.Resitel.objects.filter(rok_maturity__gte=current_year)
Owner

No, člověk odmaturuje v květnu/červnu… Takže pokud je jaro, tak pokud je rok_maturity > aktuální, pokud je podzim, tak ≥, a pokud je červen, tak 🤷 je jaro, protože pro velkou část věcí nás stejně asi zajímá předěl o letních prázdninách a ne samotný okamžik maturity…

No, člověk odmaturuje v květnu/červnu… Takže pokud je jaro, tak pokud je `rok_maturity` > aktuální, pokud je podzim, tak ≥, a pokud je červen, tak ~~🤷~~ je jaro, protože pro velkou část věcí nás stejně asi zajímá předěl o letních prázdninách a ne samotný okamžik maturity…
ticvac marked this conversation as resolved
ticvac added 1 commit 2025-02-26 19:11:55 +01:00
ticvac added 1 commit 2025-02-26 19:17:10 +01:00
ticvac added 1 commit 2025-02-26 19:21:07 +01:00
ticvac added 1 commit 2025-02-26 19:35:05 +01:00
zelvuska merged commit ff7d36a965 into master 2025-02-26 21:01:25 +01:00
zelvuska deleted branch export_resitelskych_dat 2025-02-26 21:01:25 +01:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
3 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: mam/mamweb#89
No description provided.