44 lines
1.1 KiB
Python
44 lines
1.1 KiB
Python
from flask import render_template
|
|
|
|
TEMPLATE = 'components/modul_kabelzug.html'
|
|
|
|
def get_formular_html():
|
|
return render_template(TEMPLATE)
|
|
|
|
def berechne(form_data):
|
|
positionen = []
|
|
laenge = _float(form_data.get('laenge', 0))
|
|
typ = form_data.get('kabel_typ', 'dn50')
|
|
|
|
if laenge <= 0:
|
|
return positionen
|
|
|
|
kabel_map = {
|
|
'dn50': ('10040001', 'Kabel DN50 einziehen', laenge),
|
|
'dn110': ('10040002', 'Kabel DN110 einziehen', laenge),
|
|
'cu': ('10040003', 'Cu-Kabel einziehen', laenge),
|
|
}
|
|
if typ in kabel_map:
|
|
pnr, txt, menge = kabel_map[typ]
|
|
positionen.append({
|
|
'pos_nr': pnr, 'kurztext': txt, 'menge': menge, 'einheit': 'M',
|
|
'laenge': laenge,
|
|
})
|
|
|
|
if form_data.get('einblasen') == 'an':
|
|
positionen.append({
|
|
'pos_nr': '10040004',
|
|
'kurztext': 'Einblasen von Kabel',
|
|
'menge': laenge,
|
|
'einheit': 'M',
|
|
'laenge': laenge,
|
|
})
|
|
|
|
return positionen
|
|
|
|
def _float(val, default=0):
|
|
try:
|
|
return float(str(val).replace(',', '.'))
|
|
except (ValueError, TypeError):
|
|
return default
|