37 lines
1.5 KiB
Python
37 lines
1.5 KiB
Python
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
|