vat tax
This commit is contained in:
parent
42af588ed9
commit
03b18cec2f
3 changed files with 8 additions and 9 deletions
|
@ -55,7 +55,7 @@ class Item(object):
|
|||
"""
|
||||
Product/Item information
|
||||
"""
|
||||
def __init__(self, item_id, name, description, units, unit_price):
|
||||
def __init__(self, item_id, name, description, units, unit_price, subtotal, vat_tax=None):
|
||||
"""
|
||||
Item modal init
|
||||
:param item_id: Order id or Item id
|
||||
|
@ -70,10 +70,8 @@ class Item(object):
|
|||
self.description = description
|
||||
self.units = units
|
||||
self.unit_price = unit_price
|
||||
|
||||
@property
|
||||
def subtotal(self):
|
||||
return int(self.units) * self.unit_price
|
||||
self.vat_tax = vat_tax
|
||||
self.subtotal = subtotal
|
||||
|
||||
|
||||
class Transaction(object):
|
||||
|
|
|
@ -167,6 +167,7 @@ class SimpleInvoice(SimpleDocTemplate):
|
|||
Paragraph(item.description, self._defined_styles.get('TableParagraph')),
|
||||
item.units,
|
||||
item.unit_price,
|
||||
item.vat_tax if item.vat_tax is not None else '-',
|
||||
item.subtotal
|
||||
) for item in self._items if isinstance(item, Item)
|
||||
]
|
||||
|
@ -175,7 +176,7 @@ class SimpleInvoice(SimpleDocTemplate):
|
|||
self._story.append(
|
||||
Paragraph('Detail', self._defined_styles.get('Heading1'))
|
||||
)
|
||||
item_data.insert(0, ('Item id', 'Name', 'Description', 'Units', 'Unit Price', 'Subtotal'))
|
||||
item_data.insert(0, ('Item id', 'Name', 'Description', 'Units', 'Unit Price', 'Vat/Tax', 'Subtotal'))
|
||||
self._story.append(TableWithHeader(item_data, horizontal_align='LEFT'))
|
||||
|
||||
def __build_transactions(self):
|
||||
|
|
|
@ -32,9 +32,9 @@ doc.client_info = ClientInfo(
|
|||
post_code='222222'
|
||||
)
|
||||
|
||||
doc.add_item(Item('0000', 'Item', 'Item', 1, Decimal('1.1')))
|
||||
doc.add_item(Item('1111', 'Item', 'Item', 2, Decimal('2.2')))
|
||||
doc.add_item(Item('2222', 'Item', 'Item', 3, Decimal('3.3')))
|
||||
doc.add_item(Item('0000', 'Item', 'Item', 1, '1.1', '1.1'))
|
||||
doc.add_item(Item('1111', 'Item', 'Item', 2, '2.2', '4.4'))
|
||||
doc.add_item(Item('2222', 'Item', 'Item', 3, '3.3', '9.9'))
|
||||
|
||||
doc.add_transaction(Transaction('Paypal', 111, datetime.now(), 1))
|
||||
doc.add_transaction(Transaction('Strip', 222, datetime.now(), 2))
|
||||
|
|
Loading…
Reference in a new issue