diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2026-01-12 16:49:45 +0100 |
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2026-01-12 16:53:16 +0100 |
| commit | 555868ac554938ce90e181b77971286d7170fdc6 (patch) | |
| tree | 782fef66ef0f151d9c6d767dc37cea4df0a2375b /ishtar_common/views_item.py | |
| parent | 64e983d97d0cdb379cdc41845d826d27443229b1 (diff) | |
| download | Ishtar-555868ac554938ce90e181b77971286d7170fdc6.tar.bz2 Ishtar-555868ac554938ce90e181b77971286d7170fdc6.zip | |
🐛 fix statistic evaluation for last modified and top container
Diffstat (limited to 'ishtar_common/views_item.py')
| -rw-r--r-- | ishtar_common/views_item.py | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index b96ab62e9..2f08036ff 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -2067,8 +2067,14 @@ def _get_json_stats_optimized( for stat in (stats_modality_1, stats_modality_2): if not stat: continue - if stat.endswith("__year"): - q = q.annotate(**{stat: ExtractYear(stat[: -len("__year")])}) + if stat.endswith("__FILTERyear"): + q = q.annotate(**{stat: ExtractYear(stat[:-len("__FILTERyear")])}) + elif "__splitpart_" in stat: + st, args = stat.split("__splitpart_") + sep, index = args.split("_") + index = int(index) + stat = f"{st}_modality" + q = q.annotate(**{stat: SplitPart(F(st), Value(sep), index)}) value_keys.append(stat) q = q.values(*value_keys) if stats_sum_variable == "pk": @@ -2110,9 +2116,9 @@ def _get_json_stats( if not stat: value_keys.append(stat) continue - if stat.endswith("__year"): - q = q.annotate(**{stat: ExtractYear(stat[:-len("__year")])}) - if "__splitpart_" in stat: + if stat.endswith("__FILTERyear"): + q = q.annotate(**{stat: ExtractYear(stat[:-len("__FILTERyear")])}) + elif "__splitpart_" in stat: st, args = stat.split("__splitpart_") sep, index = args.split("_") index = int(index) |
