from flask import render_template TEMPLATE = 'components/modul_gruben.html' def get_formular_html(): return render_template(TEMPLATE) def berechne(form_data): positionen = [] l = _float(form_data.get('laenge', 0)) b = _float(form_data.get('breite', 0)) t = _float(form_data.get('tiefe', 0)) if l <= 0 or b <= 0 or t <= 0: return positionen oberflaeche = form_data.get('oberflaeche', 'wiese') volumen = l * b * t / 100 oberfl_map = { 'wiese': ('10037463', 'Grube in Wiese herstellen'), 'kies': ('10037464', 'Grube in Kies herstellen'), 'asphalt': ('10037465', 'Grube in Asphalt herstellen'), 'pflaster': ('10037466', 'Grube in Pflaster herstellen'), } if oberflaeche in oberfl_map: pnr, txt = oberfl_map[oberflaeche] positionen.append({ 'pos_nr': pnr, 'kurztext': txt, 'menge': volumen, 'einheit': 'M3', 'laenge': l, 'breite': b, 'tiefe': t, }) return positionen def _float(val, default=0): try: return float(str(val).replace(',', '.')) except (ValueError, TypeError): return default