Ejemplo n.º 1
0
 def test_create_client(self):
     c = Client("Name", "1231231212", self.address)
     self.assertEqual("Name", c.name)
     self.assertEqual("1231231212", c.tax_id)
     self.assertEqual(self.address, c.address)
     self.assertIsNone(c.email)
     self.assertIsNone(c.phone_number)
Ejemplo n.º 2
0
 def test_create_client_with_email(self):
     c = Client("Name",
                "1231231212",
                self.address,
                email="*****@*****.**")
     self.assertEqual("Name", c.name)
     self.assertEqual("1231231212", c.tax_id)
     self.assertEqual(self.address, c.address)
     self.assertEqual("*****@*****.**", c.email)
     self.assertIsNone(c.phone_number)
Ejemplo n.º 3
0
 def test_create_client_with_email_and_phone_number(self):
     c = Client("Name",
                "1231231212",
                self.address,
                email="*****@*****.**",
                phone_number="111-222-333")
     self.assertEqual("Name", c.name)
     self.assertEqual("1231231212", c.tax_id)
     self.assertEqual(self.address, c.address)
     self.assertEqual("*****@*****.**", c.email)
     self.assertEqual("111-222-333", c.phone_number)
Ejemplo n.º 4
0
    def setUp(self):
        self.ifirma_client = iFirmaAPI(TEST_IFIRMA_USER,
                                       TEST_IFIRMA_INVOICE_KEY,
                                       TEST_IFIRMA_USER_KEY)

        self.client = Client(
            "Dariusz",
            "1231231212",
            Address("Warszawa", "03-185"),
            email="*****@*****.**",
        )

        self.position = Position(VAT.VAT_23, 1, 1000, "nazwa", "szt")
Ejemplo n.º 5
0
def main():
    ifirma_client = iFirmaAPI(IFIRMA_USER, IFIRMA_INVOICE_KEY, IFIRMA_USER_KEY)

    client = Client(
        CLIENT_NAME,  # company name
        CLIENT_TAX_ID,  # Tax ID
        Address(
            CLIENT_CITY,
            CLIENT_POSTALCODE,
            CLIENT_STREET,  # Street
            CLIENT_COUNTRY  # Country
        ))

    position = Position(
        VAT.VAT_23,  # VAT rate
        1,  # Quantity
        NET,  # Unit total price
        POSITION_NAME,  # Position name
        "szt"  # Position unit
    )
    # create folders to generate the file.
    path_altalog_documents = create_folders(folder='/altalog_documents',
                                            month=INVOICE_MONTH)
    print(path_altalog_documents)
    issue_year_month = strftime(
        "%Y-%m",
        datetime.date.today().timetuple(
        ))  # issue date can't be earlier than last invoice date
    issue_date = issue_year_month + '-' + str(DAY_OF_INVOICE)

    invoice = NewInvoiceParams(client, [position], issue_date, PAYMENT_DAYS)
    print(invoice)

    invoice_id, invoice_number = ifirma_client.generate_invoice(invoice)

    pdf_file_obj = ifirma_client.get_invoice_pdf(invoice_id)

    with open(
            path_altalog_documents + '/' + FILE_NAME + ' - ' +
            issue_year_month + ' - ' + 'faktura.pdf', 'wb') as f:
        f.write(pdf_file_obj.getvalue())
    pdf_file_obj.close()