X-Git-Url: https://piware.de/gitweb/?a=blobdiff_plain;f=trechnung;h=5c15c44c2175e56e27d21069ff5837626cde0dd0;hb=9b89b39402aa65d5252164ada05f74ec4ada4dca;hp=bd120e97b74c9fb64424bfd91955b60c1bf8c8ae;hpb=c262576eb63fd1932151d677fbfb8da43cb81ede;p=bin.git diff --git a/trechnung b/trechnung index bd120e9..5c15c44 100755 --- a/trechnung +++ b/trechnung @@ -11,6 +11,7 @@ def search_substr(f, str): return None def get_price(str): + str = str.replace(', ', ',') money_re = re.compile('^-?\d+,\d\d$') fields = str.split() fields.reverse() @@ -53,16 +54,18 @@ common = next_price(f, 'Monatliche Beträge') #other = next_price(f, 'Sonstige Leistungen des Konzerns') #if other: # common = common + other -bill_vat = next_price(f, 'Umsatzsteuer 16 %') +bill_vat = next_price(f, 'Umsatzsteuer 19 %') bill_gross = next_price(f, 'Rechnungsbetrag') -bill_item_re = re.compile('^\s*\d+\.\s*.*16') +bill_item_re = re.compile('^\s*\d+\.\s*.*19') # Telekom assert search_substr(f, 'Summe Monatliche Beträge') -assert search_substr(f, ':::::::::::::') +assert search_substr(f, '...........') +assert search_substr(f, '...........') + for l in f: - if l.find('::::::::::::') >= 0: + if l.find('..........') >= 0: break if bill_item_re.match(l): @@ -73,9 +76,11 @@ for l in f: if l.find('Summe Verbindungen für oben angegebene Rufnummer') >= 0: cur_number = None if l.find('Rufnummer (') >= 0: - cur_number = l.strip() + cur_number = l.strip().split(' ')[0].strip() print l.strip(), ' -> switching to', cur_number +assert search_substr(f, '...........') + # other companies if search_substr(f, 'Beträge anderer Anbieter'): for l in f: @@ -87,7 +92,7 @@ if search_substr(f, 'Beträge anderer Anbieter'): print 'adding %.2f to %s for "%s"' % (p, cur_number, l.strip()) price[cur_number] = price.setdefault(cur_number, 0) + p if l.find('Rufnummer (') >= 0: - cur_number = l.strip() + cur_number = l.strip().split(' ')[0].strip() print l.strip(), ' -> switching to', cur_number print '----------------------------------------' @@ -105,11 +110,11 @@ print '----------------------------------------' print 'Verrechnung allgemeine Gebühren (Aufschlag für jeden: %.2f)' % common print_price(price) -vat = sum * 0.16 +vat = sum * 0.19 gross = sum + vat for k, v in price.iteritems(): - price[k] *= 1.16 + price[k] *= 1.19 print '----------------------------------------' print 'Aufschlag Mehrwertsteuer:'