Commit Graph

48 Commits

Author SHA1 Message Date
abijah
c58183c965 More work on refund. I'm going to skip the whole voucher/credit_note bit and simply present a page that lets the user enter a date, an account, and the amount to refund, recording 1 payment transaction.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@491 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-06 02:52:45 +00:00
abijah
adc901b7e7 Several changes in an effort to support charge reversals. I can't imagine this is all working flawlessly, as I'm not quite sure how it even _should_ work.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@490 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-05 07:54:57 +00:00
abijah
6a7a784cb6 Discovered that the use of the term 'Payment' has been a misnomer. A company uses the term payment to indicate the monies it pays to _others_. Changing this leaves us without a good replacement term, but disbursement really seems to fit the bill. As comfortable as the term payment was, it was odd in many respects and disbursement does seem more appropriate. I'm sure there are several lingering bugs from this massive search/replace exercise, but this is a decent baseline for the change.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@488 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-05 01:00:09 +00:00
abijah
e0ea50d142 Fixed bug when marking NSF of a tender that has only been used as a surplus and never applied to any charges. Modified the applyCredits algorithm to try and distinguish between surplus credits of a lease and general customer surplus. I don't know if it works completely, but I do know it creates an issue since a lease surplus can now never be utilized without additional lease charges, a refund (no yet implemented), or moving the surplus to the customer level (not intended to be implemented).
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@483 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-04 21:19:20 +00:00
abijah
e0d15b7396 More work cleaning up and testing the use of charge waivers, as well as security deposit utilizations. Much of this was just around the concept of determining balances, which wasn't / isn't very straightforward. It's not hard to calculate a balance for a particular sitation, but it is difficult to generalize. I think it's reasonable as it now stands, but the StatementEntry::stats algorithm is certainly subject to change. Also, I didn't double check every case which called the stats() function, so I highly suspect we'll find cases where the code is not expecting the new return values, either symantically or logically.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@480 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-04 03:12:09 +00:00
abijah
aa846de284 Continued waiver progress. At the moment, it works ok, but I don't like the way that security deposit balances work. It's probably a general issue, not just security deposits, but it's not clear whether stats from StatementEntry should be subtracting waiver totals from the overall charge reconciliation total. It should in some cases, and not in others. I'll tweak on it in later checkins.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@479 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-03 21:50:21 +00:00
abijah
7fda78f820 Added ability to waive a partial charge.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@472 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-03 04:14:44 +00:00
abijah
a59d93ebee First pass at a charge waiver implementation. It hasn't been tested but for a tiny bit.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@471 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-03 03:46:58 +00:00
abijah
4c8e3b380e Left r466 with syntax error... fixed that
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@469 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-03 02:30:29 +00:00
abijah
6b357fc285 Added a new statement entry type, 'WAIVE', and added the beginnings of a function to add a new waiver transaction. Haven't even started the work yet though...
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@466 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-02 22:44:55 +00:00
abijah
267357a0f7 Combined the addNsf and addTransaction functions, which was always intended. There is more that could be done, but not all bugs are flushed out yet. Its close enough though, that I want to capture it as is to help work through the subtle issues.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@464 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-08-01 01:47:11 +00:00
abijah
8f79f0401f Added a way to associate the meaningful part of NSF with the corresponding tender.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@456 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-31 18:10:48 +00:00
abijah
5dc5f087ba Added an automatic $35 nsf charge when marking an item as nsf. This required removing the lease_id requirement when adding a transaction, since the charge is not associated with a lease, just a customer. The requirement was artificial anyway; imagine selling POS items to folks that don't even lease from us...
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@447 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-31 03:07:34 +00:00
abijah
46744a24d3 Modified to use the logging mechanism
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@446 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-31 02:09:45 +00:00
abijah
48fb7383de Added effective date to each NSF entry, and fixed the account bug with receipts/payments. There is still a bug/question on how to handle nsf credits. It would be nice to simply delete the credit, since the check bounced, but then the original transaction will not add up. Either we decide that it doesn't need to add up, figure out a different type for the credit, or add a void flag to each statement entry and just void out nsf items. Or instead of a void flag, have an nsf_statement_entry_id which will also tie the payment/credit to the nsf payment/credit.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@428 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-30 18:23:37 +00:00
abijah
94c0efa881 This is probably what we really want for NSF... two transactions. One for backing out the bank deposit, and the other for adjusting A/R and all the associated statement entries. This is working reasonably well, even seemingly fine for the collected rents report. I do see that there is another bug though, that is causing statement entries to have the opposite account_id than intended (A/R instead of Cash) when entering new receipts. Not sure when I broke that, but it must have been when working on deposits.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@427 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-30 07:30:50 +00:00
abijah
7450d2a98e Preliminary work on NSF. It's far from working, but we're headed in the right direction.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@426 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-30 06:29:41 +00:00
abijah
347aa20622 Fixed problem when trying to calculate transaction stats. The current solution is a bit dodgy, but by limiting the queries to LedgerEntry and StatementEntry, it works without too much extra effort.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@424 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-30 02:47:43 +00:00
abijah
e4426cde55 Fixed the problem with zero dollar balance forward entries when closing a ledger.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@422 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-30 02:17:49 +00:00
abijah
25e3c87213 Got the ledger closings to work again. This seems to work ok, although I notice closing the ledger after deposit results in a balance forward entry of $0.00 . I'll work on it next
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@421 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-30 01:59:10 +00:00
abijah
ccf7a5fccd This is the remainder of the previous, invalid, partial checkin.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@419 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-29 23:25:03 +00:00
abijah
362226183e Changed the deposit to use a grouped double entry instead of individual ones for each tender deposited
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@414 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-29 10:10:11 +00:00
abijah
438610bdf9 Added customer association to each tender
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@413 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-29 09:33:29 +00:00
abijah
cdf6ce86e3 Re-implemented the deposit functionality. This is mostly working, although I'd like to get customer added to the tenders table, and probably change to a single deposit ledger entry for each tender type. A single entry would require that all tender types have been recorded to the same account, something that isn't mandated at the present, but is likely to be true most of the time. Perhaps they could just be grouped by account id, which should work in all cases and yet align with tender type 99% of the time. I'll have to think about it.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@412 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-29 08:55:09 +00:00
abijah
d8fe7f9264 Suppressed all the debug print statements from transaction insertion.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@398 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-28 02:40:42 +00:00
abijah
24ccb56e50 Further tweaked the code to add new transactions, primarily by creating separate verification and addition functions in each underlying model. There are logic changes as well, such as adding in the other half of the missing double entry (as well as the double entry itself). This checkin also introduces the creation of CREDIT statement entries, when the customer has overpayed. It's working fairly well, although undoubtedly will need more tweaking.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@394 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-28 01:16:42 +00:00
abijah
2cc58255c3 Playing with different means for determining stats. Nothing decided yet.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@391 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-26 23:23:19 +00:00
abijah
7a42bee8ef Added transaction stats. Added (possibly unwanted) columns.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@389 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-25 08:06:50 +00:00
abijah
b820929ddc Made progress adapting the receipt code onto the latest db changes.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@387 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-24 07:43:42 +00:00
abijah
5cf40147d9 First pass implementation at generating an invoice, which seems to be working. Largely untested, but worth checking in. Next is to get receipts using the same algorithm, and after that will be to work on a reconciling mechanism, creating payments, and matching them to charges. This checkin includes an additional customer_id fields as part of the transactions table. I think it was an oversight not to be there, as we need some way to keep track of monies which have been paid by a customer, yet not applied. If there is a different way to do it (short of actually having each ledger entry hold customer_id), it escapes me at the moment.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@372 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-23 21:24:49 +00:00
abijah
f52fba96c1 Making progress. Much still to do, but there are hints of functionality finally returning so I'm snapshotting.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@360 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-21 10:23:52 +00:00
abijah
3d262fd4db This rework is nowhere near complete, but there are certain things that are falling in place, and worth capturing. I started a branch for just this purpose of being able to check in intermediate work.
git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@352 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-19 23:35:25 +00:00
abijah
d683895413 Eliminated the need for the Invoice Account. I'm having a bit of a hard time believing that it works, since it sure seems like we needed the Invoice account for some reason. However, it's entirely possible that we really just had it for symmetry with Receipt (another account which we'd love to delete). It needs more testing, but it works good enough to check in.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@308 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-11 08:23:55 +00:00
abijah
f7b81ec615 Not terribly happy with the solution to the extra transactions problem noted on the last checkin (however, it does seem to be working). I simply keep a record of the split transaction id, pass it back to the caller, and expect it to be passed back in. Works for now, even if it isn't terribly elegant.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@307 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-11 08:10:23 +00:00
abijah
aa36213698 Moved invoice/receipt code into Account. It appears to be broken in that the receipt ledger_entries are all getting a uniqe transaction. I'll have to look at this tomorrow.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@306 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-11 07:26:17 +00:00
abijah
99904f22bb Stripped security deposits out of the Receipt page (and bad debt too). Added a dedicated security deposit utilization page. Works, I think, but my eyes are closing and it really needs fresh eyes again in the morning.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@293 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-10 09:28:29 +00:00
abijah
e15f053c5c Changed the list of payment types to be dynamically generated. This works OK, but the list is longer than is probably useful, and more importantly, some of these types need to be associated with a lease, such as a security deposit. Not sure how I'll handle that.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@289 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-09 09:20:04 +00:00
abijah
0c8035b402 Removed monetary_source_type. It was redundant, and it's entirely unclear what purpose it ultimately would or could serve. Our use of different accounts for Check, Cash, etc likely obsoleted any intention we might have had for monetary_source_type
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@288 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-09 08:28:34 +00:00
abijah
fb29380ac5 Added ACH and Concession entry. Like everything else, I haven't tested too robustly, but it does seem to work. I might want to change the monetary source id for Concession. Right now each concession gets its own monetary source, but we could probably use a common one without issue.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@284 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-09 06:10:00 +00:00
abijah
019b97fe53 Modified to dynamically determine eligible charge accounts, instead of the two that were hardcoded.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@244 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-07 07:14:18 +00:00
abijah
65e3c99ae9 Fixed invoice reconciliation. This was original modified from the receipt code, but we know that receipts and invoices are not mirror images in our current implementation. So, no surprise then that this was broken.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@242 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-07 04:34:18 +00:00
abijah
c1b402bd72 Moved the Invoice/Receipt logic into the transactions model. Adding an invoice will likely need to be tweaked to expect customer credits, and apply either automatically, or with user discretion.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@238 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-07 01:29:03 +00:00
abijah
81e415e5bd Moved date formatting fully into the AppModel, automatically determining the necessary fields from the schema.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@233 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-06 22:23:40 +00:00
abijah
58d3cbf66b First pass at entering charges for a lease. This works, but does not have the ability to add multiple charges, and does not mirror the payment method, which is ajax based.
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@231 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-06 18:34:44 +00:00
abijah
dfe20e7ef9 Finally, finally... a working version for payment entry. The current schema is working well, and seems to handle our technical needs. However, it does seem to be very confusing with the extra accounts. Nonetheless, it does work and so I'll keep going down this path. This checkin also includes a mechanism to close the books on an account (by closing the underlying ledger) and start a new ledger. One of the decisions worth revisiting is separating out ledger entries that are really part of the same transaction. Without this change, inspecting a transaction results in the transaction total being off by a factor of two, since all money movement is in their twice (once for the expected reason, and again to hit the invoice/receipt ledger).
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629/site@195 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-01 08:17:31 +00:00
abijah
f6d6659d2a Got rid of the custom paging functions, since it's no longer used, and added a function to convert dates into SQL format. Added a beforeSave callout to Transaction to convert the date before saving.
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605/site@171 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-19 16:21:16 +00:00
abijah
ffd1b64580 Significant changes to work with the new account/ledger structure. Removed much of the auto-generated model association code. Added helper functions into the models to perform model related work, such as model 'stats' (a bad name for a function to return a summary of pertinent financial information from a given model instance). There is a ton of cleanup to do, but first I want to get it all captured.
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605/site@81 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-10 02:41:23 +00:00
abijah
677458e942 I'm still in the middle of moving onto a ledger based system. However, I'm am now changing how transactions and entries relate back to the customer. I'll be using a ledger for each lease (for rent, late charges, security deposits, etc), and a ledger for each customer (for POS, non-specific deposits such as reservations or covering mulitple units, bad debt writeoff, and possibly customer credits, when not obviously lease specific). This coming change might not be in the right direction, so I want to capture the work as is right now. This change set is not fully functional. Many operations do work, but there are obviously transaction problems with units and customers.
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605/site@71 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-06 20:18:56 +00:00