from flask import render_template TEMPLATE = 'components/modul_doku.html' def get_formular_html(): return render_template(TEMPLATE) def berechne(form_data): pos = [] laenge = _float(form_data.get('doku_laenge', 0)) breite = _float(form_data.get('doku_breite', 0)) hktr = _float(form_data.get('doku_hktr_m', 0)) vzktr = _float(form_data.get('doku_vzktr_m', 0)) gf_haus = _int(form_data.get('doku_gf_haus_anz', 0)) if laenge > 0 and breite > 0: pos.append(dict(pos_nr='10038000', kurztext=f'MP-Einarbeitung Gelände/Gebäude ({laenge}×{breite}m)', menge=1, einheit='ST')) elif laenge > 0: pos.append(dict(pos_nr='10038000', kurztext='MP-Einarbeitung Gelände/Gebäude', menge=laenge, einheit='M')) if hktr > 0: pos.append(dict(pos_nr='10038001', kurztext=f'Dokumentation HK-Trasse ({hktr}m)', menge=hktr, einheit='M')) if vzktr > 0: pos.append(dict(pos_nr='10038002', kurztext=f'Dokumentation VzK-Trasse ({vzktr}m)', menge=vzktr, einheit='M')) if gf_haus > 0: pos.append(dict(pos_nr='10038003', kurztext=f'Dokumentation GF-Hausanschluss ({gf_haus} Stk)', menge=gf_haus, einheit='ST')) if form_data.get('doku_geh') == 'an': pos.append(dict(pos_nr='10038004', kurztext='Dokumentation von Gehäusen', menge=1, einheit='ST')) return pos def _float(val, default=0): try: return float(str(val).replace(',', '.')) except: return default def _int(val, default=0): try: return int(float(str(val).replace(',', '.'))) except: return default