import streamlit as st
from docx import Document
import fitz # PyMuPDF
import io
st.set_page_config(page_title="AKP Analyse für GWV", layout="centered")
st.title("AKP Analyse für GWV")
st.markdown("Lade ein Auskundungsprotokoll (PDF) hoch und erhalte den Analysebericht als Word-Datei.")
uploaded_file = st.file_uploader("PDF-Datei hochladen", type=["pdf"])
if uploaded_file:
st.success("Datei erfolgreich hochgeladen. Analyse wird durchgeführt...")
pdf_bytes = uploaded_file.read()
pdf = fitz.open(stream=pdf_bytes, filetype="pdf")
# Einfacher Text-Scan zur Extraktion von KLS-ID und Adresse (Platzhalter)
full_text = ""
for page in pdf:
full_text += page.get_text()
kls_id = "Unbekannt"
adresse = "Nicht erkannt"
for line in full_text.splitlines():
if "KLS-ID" in line:
kls_id = line.split(":")[-1].strip()
if "Adresse" in line:
adresse = line.split(":")[-1].strip()
# Analysebericht generieren
doc = Document()
doc.add_heading(f"AKP Analyse – KLS-ID: {kls_id}", 0)
doc.add_heading("Grunddaten", level=1)
doc.add_paragraph(f"KLS-ID: {kls_id}")
doc.add_paragraph(f"Adresse: {adresse}")
doc.add_paragraph("NE4 Bauweise: FTTH")
doc.add_paragraph("Gebäudeart: Mehrfamilienhaus")
doc.add_paragraph("Gebäudeklasse: GK1-2")
doc.add_heading("Hinweise & Verpflichtungen", level=1)
doc.add_paragraph("Alle in den Wohnungen verlegten Glasfaserkabel müssen bis zum GF-AP weitergeführt werden.")
doc.add_paragraph("GF-TA-Abschlüsse müssen montiert werden.")
doc.add_heading("Gezielte Fragen", level=1)
doc.add_paragraph("1. Wurden die Glasfaserkabel weitergeführt?")
doc.add_paragraph("2. Sind alle GF-TAs vorbereitet?")
doc.add_heading("Allgemeine Fragen", level=1)
doc.add_paragraph("1. Ist die Adresse korrekt?")
doc.add_paragraph("2. Ist der Montageort zugänglich?")
doc.add_paragraph("3. Gibt es Parkmöglichkeiten?")
doc.add_paragraph("4. Gibt es eine Kontaktperson vor Ort?")
output = io.BytesIO()
doc.save(output)
output.seek(0)
st.success("Analyse abgeschlossen. Du kannst den Bericht jetzt herunterladen.")
st.download_button(
label="📄 Bericht herunterladen",
data=output,
file_name=f"AKP_Analyse_KLSID_{kls_id}.docx",
mime="application/vnd.openxmlformats-officedocument.wordprocessingml.document"
)