feat(#106 Folge): Datenquellen-Tabelle auf /methodik um Plenum-Vote-Spalte erweitert
Pro BL zeigt die Tabelle nun: - Doku-System (wie bisher) - Drucksachen: alle aktiv (Adapter laufen) - Plenum-Votes: 'aktiv' wenn Parser registriert (NRW), sonst 'Stub' Plus Erklär-Hinweis: 'Plenum-Votes = fraktions-aggregierte Abstimmungsergebnisse aus den Plenarprotokollen (#106). Stubs sind Tracking-Stellen fuer kuenftige Implementierungen (Issues #148-#163).' main.py reicht supported_bundeslaender() aus protokoll_parsers an die Template-Context durch (plenum_vote_parsers-Set).
This commit is contained in:
parent
62fd25fbcb
commit
30d51da5f7
@ -1743,6 +1743,7 @@ async def methodik_page(request: Request, current_user: Optional[dict] = Depends
|
|||||||
from .bundeslaender import aktive_bundeslaender, BUNDESLAENDER
|
from .bundeslaender import aktive_bundeslaender, BUNDESLAENDER
|
||||||
from .embeddings import get_indexing_status
|
from .embeddings import get_indexing_status
|
||||||
from .analyzer import get_system_prompt, get_user_prompt_template
|
from .analyzer import get_system_prompt, get_user_prompt_template
|
||||||
|
from .protokoll_parsers import supported_bundeslaender as _plenum_supported
|
||||||
|
|
||||||
bl_list = []
|
bl_list = []
|
||||||
for bl in aktive_bundeslaender():
|
for bl in aktive_bundeslaender():
|
||||||
@ -1753,6 +1754,7 @@ async def methodik_page(request: Request, current_user: Optional[dict] = Depends
|
|||||||
})
|
})
|
||||||
|
|
||||||
status = get_indexing_status()
|
status = get_indexing_status()
|
||||||
|
plenum_vote_parsers = set(_plenum_supported()) # z.B. {"NRW"}
|
||||||
|
|
||||||
return templates.TemplateResponse("v2/screens/methodik.html", {
|
return templates.TemplateResponse("v2/screens/methodik.html", {
|
||||||
"request": request,
|
"request": request,
|
||||||
@ -1763,6 +1765,7 @@ async def methodik_page(request: Request, current_user: Optional[dict] = Depends
|
|||||||
"programme_count": status.get("total", 0),
|
"programme_count": status.get("total", 0),
|
||||||
"chunk_count": sum(p.get("chunks", 0) for p in status.get("programmes", [])),
|
"chunk_count": sum(p.get("chunks", 0) for p in status.get("programmes", [])),
|
||||||
"bundeslaender": sorted(bl_list, key=lambda x: x["name"]),
|
"bundeslaender": sorted(bl_list, key=lambda x: x["name"]),
|
||||||
|
"plenum_vote_parsers": plenum_vote_parsers,
|
||||||
"system_prompt": get_system_prompt(),
|
"system_prompt": get_system_prompt(),
|
||||||
"user_prompt_template": get_user_prompt_template(),
|
"user_prompt_template": get_user_prompt_template(),
|
||||||
**_v2_template_context(current_user),
|
**_v2_template_context(current_user),
|
||||||
|
|||||||
@ -470,11 +470,36 @@
|
|||||||
<div class="v2-kasten outline-green">
|
<div class="v2-kasten outline-green">
|
||||||
<p><strong>{{ adapter_count }} Parlamente</strong> angebunden:</p>
|
<p><strong>{{ adapter_count }} Parlamente</strong> angebunden:</p>
|
||||||
<table>
|
<table>
|
||||||
<tr><th>Parlament</th><th>System</th></tr>
|
<tr>
|
||||||
|
<th>Parlament</th>
|
||||||
|
<th>Doku-System</th>
|
||||||
|
<th title="Antraegeund Drucksachen werden ueber den Adapter gesucht und gelistet">Drucksachen</th>
|
||||||
|
<th title="Plenarprotokoll-Parser fuer fraktions-aggregierte Abstimmungsergebnisse">Plenum-Votes</th>
|
||||||
|
</tr>
|
||||||
{% for bl in bundeslaender %}
|
{% for bl in bundeslaender %}
|
||||||
<tr><td>{{ bl.name }} ({{ bl.code }})</td><td>{{ bl.doku_system }}</td></tr>
|
<tr>
|
||||||
|
<td>{{ bl.name }} ({{ bl.code }})</td>
|
||||||
|
<td>{{ bl.doku_system }}</td>
|
||||||
|
<td style="color:var(--ecg-teal);">✓ aktiv</td>
|
||||||
|
<td>
|
||||||
|
{% if bl.code in plenum_vote_parsers %}
|
||||||
|
<span style="color:var(--ecg-teal);">✓ aktiv</span>
|
||||||
|
{% else %}
|
||||||
|
<span style="opacity:0.55;" title="Stub-Modul vorhanden, Parser noch nicht implementiert">○ Stub</span>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</table>
|
</table>
|
||||||
|
<p style="margin-top:0.5rem;font-size:11px;opacity:0.7;">
|
||||||
|
<strong>Plenum-Votes</strong> = fraktions-aggregierte
|
||||||
|
Abstimmungsergebnisse aus den Plenarprotokollen
|
||||||
|
(#106). Dort wo der Parser
|
||||||
|
aktiv ist, zeigt die Antrag-Detail-Seite einen Block
|
||||||
|
„Abstimmungsergebnis" mit Ja/Nein/Enthaltung pro Fraktion.
|
||||||
|
Stubs sind Tracking-Stellen fuer kuenftige Implementierungen
|
||||||
|
(Issues <a href="https://repo.toppyr.de/tobias/gwoe-antragspruefer/issues?q=protokoll-parser" target="_blank">#148–#163</a>).
|
||||||
|
</p>
|
||||||
<p style="margin-top:0.75rem;font-size:11px;">
|
<p style="margin-top:0.75rem;font-size:11px;">
|
||||||
<a href="/quellen">Programme & Quellen</a> ·
|
<a href="/quellen">Programme & Quellen</a> ·
|
||||||
<a href="/api/auswertungen/export.json" download>Open Data (JSON)</a> ·
|
<a href="/api/auswertungen/export.json" download>Open Data (JSON)</a> ·
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user