Christopher Neugebauer
|
3f192c2626
|
Zeroed & paid invoices that are voided now release the cart.
Fixes #95.
|
2016-10-13 11:23:41 -07:00 |
|
Christopher Neugebauer
|
232dc9e452
|
Invoices are tested for cart validity before display.
Fixes #99.
|
2016-10-13 09:19:18 -07:00 |
|
Christopher Neugebauer
|
4a50d69936
|
Moves total_payments() to Invoice model; adds balance_due()
|
2016-09-16 09:35:12 +10:00 |
|
Christopher Neugebauer
|
fd9980efc5
|
Makes sure we only apply unclaimed credit notes when auto-applying credit notes.
|
2016-09-15 11:41:50 +10:00 |
|
Christopher Neugebauer
|
04b7a7998c
|
Tests correct behaviour when there are multiple credit notes to be applied
|
2016-09-15 11:28:14 +10:00 |
|
Christopher Neugebauer
|
82254a7bf5
|
Credit note is automatically applied if you have a single invoice
|
2016-09-15 10:22:12 +10:00 |
|
Christopher Neugebauer
|
6469bcd8e7
|
Adds test for manual invoicing
|
2016-09-15 09:08:57 +10:00 |
|
Christopher Neugebauer
|
2e5a8e3668
|
First pass at allowing manual invoices.
|
2016-09-15 09:08:57 +10:00 |
|
Christopher Neugebauer
|
a9bc647570
|
Replaces _generate with _generate_from_cart and _generate
|
2016-09-15 08:38:33 +10:00 |
|
Christopher Neugebauer
|
613667aa30
|
Re-arranges invoice generation code.
- Reduces number of db queries
- Localises the code that interrogates the cart and the code that generates the invoice itself.
|
2016-09-15 08:31:35 +10:00 |
|
Christopher Neugebauer
|
1e6c90163d
|
Fixes #64
|
2016-09-03 11:46:24 +10:00 |
|
Christopher Neugebauer
|
0b7396c40f
|
Discount line items now describe the product that the discount applies to.
|
2016-08-24 11:46:15 +10:00 |
|
Christopher Neugebauer
|
4f16e4b9d0
|
Oops.
|
2016-08-21 18:28:16 +10:00 |
|
Christopher Neugebauer
|
7bf372f92a
|
Invoices now send e-mails when created, paid, or refunded.
|
2016-08-21 17:14:19 +10:00 |
|
Christopher Neugebauer
|
e946af0f04
|
Adds functions for mailing invoices when certain events occur.
|
2016-08-21 16:56:05 +10:00 |
|
Christopher Neugebauer
|
4fb569d935
|
Does more select_related and bulk_create calls
|
2016-04-29 11:10:20 +10:00 |
|
Christopher Neugebauer
|
587e6e20b2
|
Adds an operations_batch context manager that allows batches of modifying operations to be nested. Closes #44.
|
2016-04-29 11:08:45 +10:00 |
|
Christopher Neugebauer
|
63dfd353c1
|
Replaces active/released flags in Cart with a single int flag. Closes #41
|
2016-04-25 15:36:55 +10:00 |
|
Christopher Neugebauer
|
12e04c248f
|
Credit notes are now generated when invoices are overpaid, or invoices are paid into void or refunded invoices. Closes #37.
|
2016-04-25 08:26:54 +10:00 |
|
Christopher Neugebauer
|
ca8f67c2f3
|
Adds for_id, which lets you get an InvoiceController or CreditNoteController by the ID of the invoice/credit note/. Closes #38.
|
2016-04-25 07:20:41 +10:00 |
|
Christopher Neugebauer
|
875f736d67
|
Consolidates models.py into a directory module.
|
2016-04-22 15:06:24 +10:00 |
|
Christopher Neugebauer
|
6b10a0a7e4
|
Adds CreditNote, CreditNoteController, related models, and tests.
|
2016-04-11 13:11:56 +10:00 |
|
Christopher Neugebauer
|
ae8f39381f
|
Flake8 fixes
|
2016-04-08 19:49:18 +10:00 |
|
Christopher Neugebauer
|
ea1d6f52e6
|
Adds payment access codes.
|
2016-04-08 13:20:35 +10:00 |
|
Christopher Neugebauer
|
2fbe789090
|
Adds validate_allowed_to_pay(), which validates whether you’re allowed to pay for an invoice
|
2016-04-07 18:26:31 +10:00 |
|
Christopher Neugebauer
|
0e80e0336c
|
adds invoice_recipient to AttendeeProfileBase
|
2016-04-07 17:17:15 +10:00 |
|
Christopher Neugebauer
|
38cdb8aa63
|
Makes invoice model, controller, and test changes to match issue #15 design doc
|
2016-04-07 17:16:56 +10:00 |
|
Christopher Neugebauer
|
8ad265a65a
|
Fixes tests now that $0 invoices pay themselves
|
2016-04-06 17:19:09 +10:00 |
|
Christopher Neugebauer
|
c9a62db774
|
Resolves #17 - cannot generate invoice if there are no product items
|
2016-04-06 17:02:11 +10:00 |
|
Christopher Neugebauer
|
cf85af7719
|
Adds refund function, adds tests, makes sure that refunds are obeyed elsewhere in the codebase
|
2016-03-27 21:04:10 +11:00 |
|
Christopher Neugebauer
|
3e4e52b165
|
Adds more constraints around payment and voiding of invoices
|
2016-03-27 14:41:43 +11:00 |
|
Christopher Neugebauer
|
8080d7851b
|
Invoices now automatically void themselves if their cart is out of date
|
2016-03-27 14:04:47 +11:00 |
|
Christopher Neugebauer
|
83b11cd722
|
Fixes invoicing payment logic
|
2016-03-24 14:20:29 +11:00 |
|
Christopher Neugebauer
|
a4de15830c
|
Adds checkout view, which generates an invoice, and then redirects to the invoice itself.
|
2016-03-04 18:32:52 -08:00 |
|
Christopher Neugebauer
|
224878a10c
|
Fixes flake8 errors
|
2016-01-22 17:21:29 +11:00 |
|
Christopher Neugebauer
|
c2400c4695
|
Moves the controller modules into their own subpackage. There's going to be a lot of stuff in there.
|
2016-01-22 16:29:41 +11:00 |
|