diff --git a/.gitignore b/.gitignore index ba74660..d581a55 100644 --- a/.gitignore +++ b/.gitignore @@ -55,3 +55,6 @@ docs/_build/ # PyBuilder target/ + + +.idea \ No newline at end of file diff --git a/pyinvoice/__init__.py b/pyinvoice/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pyinvoice/models.py b/pyinvoice/models.py new file mode 100644 index 0000000..14eb11b --- /dev/null +++ b/pyinvoice/models.py @@ -0,0 +1,67 @@ +class InvoiceInfo(object): + """ + Invoice information + """ + def __init__(self, invoice_id, invoice_datetime, due_datetime): + self.invoice_id = invoice_id + self.invoice_datetime = invoice_datetime + self.due_datetime = due_datetime + + +class AddressInfo(object): + def __init__(self, name, street, city, state, country, post_code): + self.name = name + self.street = street + self.city = city + self.state = state + self.country = country + self.post_code = post_code + + +class ServiceProviderInfo(AddressInfo): + """ + Service provider/Merchant information + """ + def __init__(self, name, street, city, state, country, post_code): + super(ServiceProviderInfo, self).__init__(name, street, city, state, country, post_code) + + +class ClientInfo(AddressInfo): + """ + Client/Custom information + """ + def __init__(self, email, client_id, name, street, city, state, country, post_code): + super(ClientInfo, self).__init__(name, street, city, state, country, post_code) + self.email = email + self.client_id = client_id + + +class Item(object): + """ + Product/Item information + """ + def __init__(self, item_id, name, description, units, unit_price): + """ + Item modal init + :param item_id: Order id or Item id + :param name: Item name + :param units: Amount + :param unit_price: Unit price + :return: + """ + self.item_id = item_id + self.name = name + self.description = description + self.units = units + self.unit_price = unit_price + + +class Transaction(object): + """ + Transaction information + """ + def __init__(self, gateway, transaction_id, transaction_datetime, amount): + self.gateway = gateway + self.transaction_id = transaction_id + self.transaction_datetime = transaction_datetime + self.amount = amount \ No newline at end of file