billing
This commit is contained in:
22
rechnung/billingPreprocessor.py
Normal file
22
rechnung/billingPreprocessor.py
Normal file
@ -0,0 +1,22 @@
|
||||
from decimal import Decimal
|
||||
|
||||
MwSt_TAX_RATE = Decimal(0.19)
|
||||
|
||||
def perform(inputData):
|
||||
inputData['totalBeforeTaxes'] = Decimal(0)
|
||||
for entry in inputData['entries']:
|
||||
entry['totalprice'] = Decimal(entry['count']) * Decimal(entry['unitprice'])
|
||||
inputData['totalBeforeTaxes'] += entry['totalprice']
|
||||
inputData['totalBeforeTaxes'] = inputData['totalBeforeTaxes']
|
||||
inputData['taxes'] = inputData['totalBeforeTaxes'] * MwSt_TAX_RATE
|
||||
inputData['total'] = inputData['totalBeforeTaxes'] + inputData['taxes']
|
||||
|
||||
for entry in inputData['entries']:
|
||||
entry['totalprice'] = f"{entry['totalprice']:.2f}"
|
||||
entry['unitprice'] = f"{entry['unitprice']:.2f}"
|
||||
inputData['totalBeforeTaxes'] = f"{inputData['totalBeforeTaxes']:.2f}"
|
||||
inputData['taxes'] = f"{inputData['taxes']:.2f}"
|
||||
inputData['total'] = f"{inputData['total']:.2f}"
|
||||
|
||||
return inputData
|
||||
|
Reference in New Issue
Block a user