migrate.py: Change GWK to WKW

This commit is contained in:
2023-09-05 13:55:13 +02:00
parent 13cb86f351
commit b5c274a4b6

View File

@ -228,7 +228,7 @@ def normalize_phone_nr(nr: Optional[str], ort: str = None) -> Optional[str]:
nr = nr.replace('-', '')
if nr[0] == '0':
nr = '+43 ' + nr[1:]
elif WG == 'GWK' and ort:
elif WG == 'WKW' and ort:
ort = ort.upper().strip()
if ort in ('PILLICHSDORF', 'OBERSDORF', 'WOLKERSDORF', 'WOLFPASSING', 'PUTZING', 'GROSSENGERSDORF',
'EIBESBRUNN'):
@ -354,10 +354,10 @@ def lookup_gem_name(name: str) -> List[Tuple[int, int]]:
return [(6027, 30859), (6007, 30859)]
elif name.lower() == 'grub':
name = 'Grub an der March'
elif WG == 'GWK':
elif WG == 'WKW':
hkid = "'WLWV', 'WIEN', 'WLWG'"
if name.endswith('*'):
# TODO GWK do something with * in gemeinde
# TODO WKW do something with * in gemeinde
name = name[:-1].strip()
if name.lower() == 'joching':
return [(12185, 31351)]
@ -455,7 +455,7 @@ def lookup_hkid(kgnr: Optional[int], qualid: str) -> str:
if qualid in ('WEI', 'RSW'):
return 'OEST'
elif kgnr is None:
if WG in ('MATZEN', 'GWK'):
if WG in ('MATZEN', 'WKW'):
hkid = 'WLWV'
else:
cur = DB_CNX.cursor()
@ -525,7 +525,7 @@ def migrate_grosslagen(in_dir: str, out_dir: str) -> None:
f.header('glnr', 'name')
for gl in utils.csv_parse_dict(f'{in_dir}/TGrosslagen.csv'):
glnr += 1
if WG == 'GWK' and gl['GLNR'] == 8:
if WG == 'WKW' and gl['GLNR'] == 8:
GROSSLAGE_MAP[8] = 6
continue
GROSSLAGE_MAP[gl['GLNR']] = glnr
@ -586,8 +586,8 @@ def migrate_attributes(in_dir: str, out_dir: str) -> None:
if WG == 'MATZEN':
f.row('M', 'Matzen', None, False)
f.row('HU', 'Huber', None, False)
elif WG == 'GWK':
# TODO GWK attribute F?
elif WG == 'WKW':
# TODO WKW attribute F?
f.row('F', '?', None, False)
@ -623,7 +623,7 @@ def migrate_area_commitment_types(in_dir: str, out_dir: str) -> None:
if WG == 'MATZEN':
bio = ['GV', 'ZW', 'MT']
f.row('BM', 'BM', None, None, None, None, None, None)
elif WG == 'GWK':
elif WG == 'WKW':
bio = ['GV', 'ZW', 'WR', 'MT', 'RR', 'WB', 'CH', 'MU']
for sortid in bio:
f.row(f'{sortid}B', sortid, 'B', None, None, None, None, None)
@ -636,7 +636,7 @@ def normalize_name(family_name: str, given_name: str) -> Tuple[Optional[str], Op
def is_alpha(s: str) -> bool:
return all(c in letters for c in s) if s.lower() not in double_names else True
if WG == 'GWK':
if WG == 'WKW':
if 'BEZIRKSBAUERNKAMMER' == family_name:
return None, None, None, None, None, 'Bezirksbauernkammer Mistelbach'
elif (given_name, family_name) == ('LANDW.', 'FACHSCHULE'):
@ -764,7 +764,7 @@ def migrate_members(in_dir: str, out_dir: str) -> None:
given_name = given_name or ''
if WG == 'MATZEN' and given_name.startswith(' '):
funktionaer = True
if WG == 'GWK' and ('*' in family_name or '*' in given_name or '(+)' in family_name or '(+)' in given_name):
if WG == 'WKW' and ('*' in family_name or '*' in given_name or '(+)' in family_name or '(+)' in given_name):
deceased = True
family_name = family_name.replace('*', '').replace('(+)', '')
given_name = given_name.replace('*', '').replace('(+)', '')
@ -855,7 +855,7 @@ def migrate_members(in_dir: str, out_dir: str) -> None:
print(address, new_address)
raise RuntimeError()
address = parts[-1]
if WG == 'GWK' and ort == 'JETZELDORF':
if WG == 'WKW' and ort == 'JETZELDORF':
ort = 'JETZELSDORF'
if ort:
ort = ort.upper().strip()
@ -896,7 +896,7 @@ def migrate_members(in_dir: str, out_dir: str) -> None:
email = f'{parts[0]}@{parts[1].lower()}'
zwstid = m['ZNR'] and BRANCH_MAP[m['ZNR']] or len(BRANCH_MAP) == 1 and list(BRANCH_MAP.values())[0]
if WG == 'GWK' and plz == 1228:
if WG == 'WKW' and plz == 1228:
plz = 1020
postal_dest = lookup_plz(plz, ort, address)
@ -939,7 +939,7 @@ def migrate_members(in_dir: str, out_dir: str) -> None:
phone_3: Optional[str] = m['Mobiltelefon']
numbers = []
if WG == 'GWK':
if WG == 'WKW':
# Telefax (phone_2) not used
numbers = {}
@ -1316,7 +1316,7 @@ def migrate_deliveries(in_dir: str, out_dir: str) -> None:
MODIFIER_MAP[name] = mod
if WG == 'MATZEN':
mod['id'] = name[-1] if name.startswith('Klasse') else 'TB' if name == 'Treuebonus' else 'PZS'
elif WG == 'GWK':
elif WG == 'WKW':
mod['id'] = {
1: 'KA', 2: 'LG', 3: 'MG', 4: 'SG',
5: 'VT', 6: 'MV', 7: 'LW', 8: 'VL',
@ -1679,7 +1679,7 @@ def migrate_parameters(in_dir: str, out_dir: str) -> None:
}
tokens = {
'MATZEN': ('WGM', 'WG Matzen'),
'GWK': ('GWK', 'GWK')
'WKW': ('WKW', 'WKW')
}.get(WG, (None, None))
ort = params['MANDANTENORT'].title()
@ -1728,7 +1728,7 @@ def main() -> None:
parser.add_argument('-d', '--database', metavar='DB', required=True,
help='The sqlite database file to look up information')
parser.add_argument('-g', '--genossenschaft', metavar='WG', required=False, type=str,
choices=('MATZEN', 'GWK'))
choices=('MATZEN', 'WKW'))
args = parser.parse_args()
os.makedirs(args.out_dir, exist_ok=True)