Migrate contracts
This commit is contained in:
@ -314,7 +314,7 @@ def migrate_members(in_dir: str, out_dir: str) -> None:
|
||||
'country;postal_dest;address;'
|
||||
'email;phone_landline;phone_mobile_1;phone_mobile_2;'
|
||||
'default_kgnr;comment\n')
|
||||
f_mba.write('mgr;name;country;postal_dest;address\n')
|
||||
f_mba.write('mgnr;name;country;postal_dest;address\n')
|
||||
|
||||
for m in members:
|
||||
mgnr: int = m['MGNR']
|
||||
@ -507,20 +507,26 @@ def migrate_members(in_dir: str, out_dir: str) -> None:
|
||||
|
||||
okz = postal_dest % 100000 if postal_dest else None
|
||||
kgnr = lookup_kgnr(okz)
|
||||
active = m['Aktives Mitglied'] or False
|
||||
if kgnr is None:
|
||||
invalid(mgnr, 'KgNr.', ort)
|
||||
active = False
|
||||
|
||||
if postal_dest is None:
|
||||
invalid(mgnr, 'PLZ', None)
|
||||
continue
|
||||
|
||||
f_m.write(csv.format_row(
|
||||
mgnr, m['MGNR-Vorgänger'], prefix, given_name, middle_names, family_name, suffix,
|
||||
m['Geburtsjahr'], m['Eintrittsdatum'], m['Austrittsdatum'], m['Geschäftsanteile1'] or 0,
|
||||
m['BHKontonummer'], zwstid, bnr, ustid,
|
||||
m['Volllieferant'] or False, m['Buchführend'] or False, False, m['Aktives Mitglied'] or False,
|
||||
iban, bic, 'AT', postal_dest, address, email, phone_landline,
|
||||
m['Volllieferant'] or False, m['Buchführend'] or False, False, active,
|
||||
iban, bic, 'AT', postal_dest, address or '-', email, phone_landline,
|
||||
phone_mobile[0] if len(phone_mobile) > 0 else None, phone_mobile[1] if len(phone_mobile) > 1 else None,
|
||||
kgnr, m['Anmerkung']
|
||||
))
|
||||
if billing_name:
|
||||
f_mba.write(csv.format_row(mgnr, billing_name, 'AT', None, None))
|
||||
f_mba.write(csv.format_row(mgnr, billing_name, 'AT', postal_dest, address or '-'))
|
||||
|
||||
|
||||
def migrate_contracts(in_dir: str, out_dir: str) -> None:
|
||||
@ -572,7 +578,7 @@ def migrate_contracts(in_dir: str, out_dir: str) -> None:
|
||||
]
|
||||
|
||||
invalid(mgnr, 'GstNr.', f'{kgnr:05}-{nr_str}')
|
||||
return [nr_str]
|
||||
return []
|
||||
|
||||
with open(f'{out_dir}/contract.csv', 'w+') as f_c, open(f'{out_dir}/area_commitment.csv', 'w+') as f_fb:
|
||||
f_c.write('vnr;mgnr;year_from;year_to\n')
|
||||
@ -596,10 +602,11 @@ def migrate_contracts(in_dir: str, out_dir: str) -> None:
|
||||
|
||||
if parz is None or parz == '0000':
|
||||
invalid(fb['MGNR'], 'GstNr.', f'{kgnr or 0:05}-{parz}')
|
||||
gstnrs = ['99999']
|
||||
elif len(gstnrs) > 1 or (len(gstnrs) == 1 and gstnrs[0] != parz):
|
||||
convert(fb['MGNR'], 'GstNr.', f'{kgnr or 0:05}-{parz or ""}', ', '.join(gstnrs))
|
||||
|
||||
for i, gstnr in enumerate(gstnrs or ['0000']):
|
||||
for i, gstnr in enumerate(gstnrs):
|
||||
a = area - gst_area * (len(gstnrs) - 1) if i == 0 else gst_area
|
||||
rdnr = REED_MAP[fb['RNR']][1] if fb['RNR'] else None
|
||||
f_fb.write(csv.format_row(
|
||||
|
Reference in New Issue
Block a user