Initial commit – AufmaßCreater v2.35
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
from flask import render_template
|
||||
|
||||
TEMPLATE = 'components/modul_planung.html'
|
||||
|
||||
def get_formular_html():
|
||||
return render_template(TEMPLATE)
|
||||
|
||||
def berechne(form_data):
|
||||
pos = []
|
||||
zul_mtb = _float(form_data.get('zulage_struk_mtb', 0))
|
||||
zul_otb = _float(form_data.get('zulage_struk_otb', 0))
|
||||
mpp_zn = _float(form_data.get('mpp_gfk_zn', 0))
|
||||
mpp_kr = _float(form_data.get('mpp_kr', 0))
|
||||
mpp_snrv = _float(form_data.get('mpp_snrv', 0))
|
||||
gf_minik = _float(form_data.get('gf_minik', 0))
|
||||
ivk = _float(form_data.get('ivk_m', 0))
|
||||
zul_kl = _float(form_data.get('zulage_kl_baum', 0))
|
||||
s_liste = form_data.get('s_liste', '').strip()
|
||||
|
||||
if form_data.get('proj_struk_mtb') == 'an':
|
||||
txt = 'Projektierung n. Strukturplanung mit TB bis 100m'
|
||||
if zul_mtb > 0:
|
||||
txt += f', Zulage {zul_mtb}m ab 101m'
|
||||
pos.append(dict(pos_nr='10037800', kurztext=txt, menge=1, einheit='ST'))
|
||||
if form_data.get('proj_struk_otb') == 'an':
|
||||
txt = 'Projektierung n. Strukturplanung ohne TB bis 100m'
|
||||
if zul_otb > 0:
|
||||
txt += f', Zulage {zul_otb}m ab 101m'
|
||||
pos.append(dict(pos_nr='10037801', kurztext=txt, menge=1, einheit='ST'))
|
||||
if form_data.get('mpp_gfk_nvt_ap') == 'an':
|
||||
txt = 'MP-Proj. FTTH-Gf-Kabel v. NVT → GF-AP'
|
||||
if mpp_zn > 0:
|
||||
txt += f' ({mpp_zn}m im ZN-Netz)'
|
||||
pos.append(dict(pos_nr='10037802', kurztext=txt, menge=1, einheit='ST'))
|
||||
if form_data.get('mpp_gfap') == 'an':
|
||||
pos.append(dict(pos_nr='10037803', kurztext='MP-Proj. GF-AP', menge=1, einheit='ST'))
|
||||
if mpp_kr > 0:
|
||||
pos.append(dict(pos_nr='10037804', kurztext=f'MP-Proj. KR-Anlagen ({mpp_kr}m)', menge=mpp_kr, einheit='M'))
|
||||
if mpp_snrv > 0:
|
||||
pos.append(dict(pos_nr='10037805', kurztext=f'MP-Proj. ({mpp_snrv}m)', menge=mpp_snrv, einheit='M'))
|
||||
if form_data.get('ap_sgs') == 'an':
|
||||
pos.append(dict(pos_nr='10037806', kurztext='GF-AP + Patchfeld', menge=1, einheit='ST'))
|
||||
if gf_minik > 0:
|
||||
pos.append(dict(pos_nr='10037807', kurztext=f'GF-Kabel einbl./verlegen ({gf_minik}m)', menge=gf_minik, einheit='M'))
|
||||
if ivk > 0:
|
||||
pos.append(dict(pos_nr='10037808', kurztext=f'IVK ({ivk}m)', menge=ivk, einheit='M'))
|
||||
if form_data.get('proj_kl_baum') == 'an':
|
||||
txt = 'Proj. kl. Baumaßnahme'
|
||||
if zul_kl > 0:
|
||||
txt += f' ({zul_kl}m)'
|
||||
pos.append(dict(pos_nr='10037809', kurztext=txt, menge=1, einheit='ST'))
|
||||
if form_data.get('s_planung_05') == 'an':
|
||||
pos.append(dict(pos_nr='10037810', kurztext='S-Planung 0,5', menge=1, einheit='ST'))
|
||||
if s_liste:
|
||||
lines = [l.strip() for l in s_liste.split('\n') if l.strip()]
|
||||
for i, line in enumerate(lines):
|
||||
pos.append(dict(pos_nr='10037811', kurztext=f'S-Liste: {line}', 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
|
||||
Reference in New Issue
Block a user