Commit Graph

  • 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. abijah 2009-07-23 21:24:49 +00:00
  • 04bc284a76 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. abijah 2009-07-23 21:24:49 +00:00
  • 4a94fc3798 More tweaking to all of the grid displays. This was mostly visual, but includes some bug fixes as well (such as a manual filter override in the ledger_entries controller). abijah 2009-07-23 16:53:33 +00:00
  • 708759765f More tweaking to all of the grid displays. This was mostly visual, but includes some bug fixes as well (such as a manual filter override in the ledger_entries controller). abijah 2009-07-23 16:53:33 +00:00
  • 3c22378498 Modified Filtering to have a separate virtual function for Tables and Conditions. This was prompted because a derived controller could override the function to return null to prevent adding a filtering table (such as if the table was already added as a non top-level table), and although the app controller would correctly prevent adding the filter table to the set, it would also prevent adding the filter condition as well. So, making two virtual functions, one for table name when defining filter tables, and one for table name when defining filter conditions, allows the derived controller to stop a table from being added to the set, yet still let the condition through (without having to override the entire filter condition logic). abijah 2009-07-23 16:51:32 +00:00
  • 9dccbfeda8 Modified Filtering to have a separate virtual function for Tables and Conditions. This was prompted because a derived controller could override the function to return null to prevent adding a filtering table (such as if the table was already added as a non top-level table), and although the app controller would correctly prevent adding the filter table to the set, it would also prevent adding the filter condition as well. So, making two virtual functions, one for table name when defining filter tables, and one for table name when defining filter conditions, allows the derived controller to stop a table from being added to the set, yet still let the condition through (without having to override the entire filter condition logic). abijah 2009-07-23 16:51:32 +00:00
  • 43b4ef8890 Yet another tweak to Linkable for merging fields and conditions of the options and associations variables. abijah 2009-07-23 16:35:53 +00:00
  • f8c60ec265 Yet another tweak to Linkable for merging fields and conditions of the options and associations variables. abijah 2009-07-23 16:35:53 +00:00
  • 25bc1607cc Many, many changes, and yet still much to do. Many things are working, but certainly nothing beyond simply data retrieval (no editing or adding of any data). Also, some work is still required to ensure the grids have the right columns; we can strip out certain columns for some views (such as removing customer from the leases grid of the customer view... completely redundant). And of course, there are still many bugs and lots to clean up. abijah 2009-07-23 01:49:46 +00:00
  • 234999b4d2 Many, many changes, and yet still much to do. Many things are working, but certainly nothing beyond simply data retrieval (no editing or adding of any data). Also, some work is still required to ensure the grids have the right columns; we can strip out certain columns for some views (such as removing customer from the leases grid of the customer view... completely redundant). And of course, there are still many bugs and lots to clean up. abijah 2009-07-23 01:49:46 +00:00
  • 85edb1c658 Changed the default table configuration to be link instead of contain. contain was never really desired, it just got thrown in there since it wasn't clear how link would behave, and we needed the essential effect of recursive=-1. abijah 2009-07-23 01:11:30 +00:00
  • 0ba5007438 Changed the default table configuration to be link instead of contain. contain was never really desired, it just got thrown in there since it wasn't clear how link would behave, and we needed the essential effect of recursive=-1. abijah 2009-07-23 01:11:30 +00:00
  • 8cf8f65474 Changed 'payment' to 'tender', since the payment term has been heavily overloaded. Tender represents legal tender, and replaces what used to be monetary source. I'm not terribly fond of the name, especially the plural form. However, for now at least, it can be distinct from other types of 'payment' and we can change it later if we come up with a better name. Also, added a name to ledger, since one was being manually created at runtime in several spots. This should allow us to consolidate the naming convention to a single spot. abijah 2009-07-22 23:35:41 +00:00
  • 368b730744 Added automagic filtering capability to the app controller. Also, lumped all items needing serialization into a single 'post' item, instead of continuing to piecemeal each added post item. There will be some changes required to some controllers, since custom post data has changed location, but it should be minor. To make use of the new filtering methods, each view will have to set the 'filter' parameter at the time of grid setup. abijah 2009-07-22 23:31:41 +00:00
  • c596dfa5f0 Added automagic filtering capability to the app controller. Also, lumped all items needing serialization into a single 'post' item, instead of continuing to piecemeal each added post item. There will be some changes required to some controllers, since custom post data has changed location, but it should be minor. To make use of the new filtering methods, each view will have to set the 'filter' parameter at the time of grid setup. abijah 2009-07-22 23:31:41 +00:00
  • 8db607ffc5 Of course, the last fix didn't work... I don't know why it looked like it was working. This fix should resolve the issue. abijah 2009-07-22 23:12:04 +00:00
  • 8331be454c Of course, the last fix didn't work... I don't know why it looked like it was working. This fix should resolve the issue. abijah 2009-07-22 23:12:04 +00:00
  • 030617713d Attempted fix for a missing conditions/fields bug. The fix would probably have just been to use empty instead of isset, since apparently the defaults for these items are an empty string instead of null (yuck). However, I already had done a bit of minor logic change and prefer the new form, so that's why more than just the isset call was modified. abijah 2009-07-22 22:54:02 +00:00
  • 8b65bc5159 Attempted fix for a missing conditions/fields bug. The fix would probably have just been to use empty instead of isset, since apparently the defaults for these items are an empty string instead of null (yuck). However, I already had done a bit of minor logic change and prefer the new form, so that's why more than just the isset call was modified. abijah 2009-07-22 22:54:02 +00:00
  • 1e359f816c Fixed the Linkable behavior from polluting the query fields when performing a count query. abijah 2009-07-22 22:27:55 +00:00
  • 634f0f5423 Fixed the Linkable behavior from polluting the query fields when performing a count query. abijah 2009-07-22 22:27:55 +00:00
  • b641dc98ec Renamed jqGridData functions to be just gridData. Restructured the virtual function calls with an anticipated need for gridDataCount to be overridden as a whole, instead of just overriding the individual pieces. abijah 2009-07-22 17:06:44 +00:00
  • 7aa026f4e0 Renamed jqGridData functions to be just gridData. Restructured the virtual function calls with an anticipated need for gridDataCount to be overridden as a whole, instead of just overriding the individual pieces. abijah 2009-07-22 17:06:44 +00:00
  • f52fba96c1 Making progress. Much still to do, but there are hints of functionality finally returning so I'm snapshotting. abijah 2009-07-21 10:23:52 +00:00
  • 93ebc450fe Making progress. Much still to do, but there are hints of functionality finally returning so I'm snapshotting. abijah 2009-07-21 10:23:52 +00:00
  • 5a16e497ad Customers is working somewhat. I want to see if the grid query logic can be simplified, so I'm checking in first abijah 2009-07-21 09:40:51 +00:00
  • fd856323a5 Customers is working somewhat. I want to see if the grid query logic can be simplified, so I'm checking in first abijah 2009-07-21 09:40:51 +00:00
  • 59e6379977 Definitely not perfect, but the database changes seem to be OK, along with the sitelink script. Certainly workable if not yet complete. abijah 2009-07-21 04:16:54 +00:00
  • ae5d4763f9 Adjusted formatting only abijah 2009-07-21 02:55:43 +00:00
  • d5bcd9a496 Another snapshot abijah 2009-07-20 23:35:11 +00:00
  • c002f3f3ba Another snapshot abijah 2009-07-20 23:35:11 +00:00
  • bfbf119aca Modified Linkable to be recursive, which is needed to support certain queries that have models joined based on prior joined models. The old way went breadth first, which prevented such a join from working abijah 2009-07-20 20:22:06 +00:00
  • f8d4dcef94 Modified Linkable to be recursive, which is needed to support certain queries that have models joined based on prior joined models. The old way went breadth first, which prevented such a join from working abijah 2009-07-20 20:22:06 +00:00
  • 7181bc7f9b Minor logic and formatting changes. Considering making Linkable operate recursively. abijah 2009-07-20 19:00:54 +00:00
  • a7671e76fe Minor logic and formatting changes. Considering making Linkable operate recursively. abijah 2009-07-20 19:00:54 +00:00
  • 7304a0e889 Another snapshot. I think I'll be taking the CREDIT/DEBIT reconcile functionality out. abijah 2009-07-20 02:17:54 +00:00
  • fc30dfa2e8 Another snapshot. I think I'll be taking the CREDIT/DEBIT reconcile functionality out. abijah 2009-07-20 02:17:54 +00:00
  • 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. abijah 2009-07-19 23:35:25 +00:00
  • 6ac0204baf 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. abijah 2009-07-19 23:35:25 +00:00
  • af0c10f6a6 D:\bin\svnbranch.pl: Branch from /branches/invoice_receipt_20090629 to /branches/yafr_20090716 abijah 2009-07-16 18:52:28 +00:00
  • e303898a95 D:\bin\svnbranch.pl: Branch from /branches/invoice_receipt_20090629 to /branches/yafr_20090716 abijah 2009-07-16 18:52:28 +00:00
  • 115c82cd21 Still trying to figure out what issuing a refund should look like. I switched the entry to be negative, which may (should) make reporting easier. v0.3_php5.3_support@350 abijah 2009-07-16 07:27:18 +00:00
  • 3313a18407 Still trying to figure out what issuing a refund should look like. I switched the entry to be negative, which may (should) make reporting easier. invoice_receipt_20090629 abijah 2009-07-16 07:27:18 +00:00
  • 331e235e77 Added debugging to the serialize function. I don't really want to keep it, but I don't want to lose it either. At least one check in before I clean it up again (if I do). abijah 2009-07-16 07:12:18 +00:00
  • b2ab134996 Added debugging to the serialize function. I don't really want to keep it, but I don't want to lose it either. At least one check in before I clean it up again (if I do). abijah 2009-07-16 07:12:18 +00:00
  • d0dfd8657c Added some starter code to figure out how we handle refunds. This is NOT working, just a snapshot of progress. abijah 2009-07-15 18:37:51 +00:00
  • fbb751d054 Added some starter code to figure out how we handle refunds. This is NOT working, just a snapshot of progress. abijah 2009-07-15 18:37:51 +00:00
  • 4d4bebc3d3 Added a couple helper functions to Ledger. abijah 2009-07-15 18:33:30 +00:00
  • fff6eaeeca Added a couple helper functions to Ledger. abijah 2009-07-15 18:33:30 +00:00
  • ae04aafaca Eliminated the LedgerEntry::nsf code, which was replaced with MonetarySource::nsf. abijah 2009-07-15 18:32:14 +00:00
  • 1408a3dcb3 Eliminated the LedgerEntry::nsf code, which was replaced with MonetarySource::nsf. abijah 2009-07-15 18:32:14 +00:00
  • 9507bfddc8 We're now able to determine when a lease is paid through. abijah 2009-07-15 09:24:53 +00:00
  • fcb23d12a5 minor cleanup of the paid through function abijah 2009-07-15 09:22:19 +00:00
  • aa682c9bb2 minor cleanup of the paid through function abijah 2009-07-15 09:22:19 +00:00
  • dd7da1489d Added a paid-through field for leases. Now I just need to add it to the grid query, although it's a change that can wait. abijah 2009-07-15 09:18:56 +00:00
  • 0c8649d1c5 Added a paid-through field for leases. Now I just need to add it to the grid query, although it's a change that can wait. abijah 2009-07-15 09:18:56 +00:00
  • 85cc6d7c6a Changed the default collected results to be those collected into any account, not just payable ones. abijah 2009-07-15 08:01:56 +00:00
  • 405e20f37f Changed the default collected results to be those collected into any account, not just payable ones. abijah 2009-07-15 08:01:56 +00:00
  • e457f87c42 Fixed bug preventing customer links from working abijah 2009-07-15 07:55:40 +00:00
  • 75ff8a2a40 Fixed bug preventing customer links from working abijah 2009-07-15 07:55:40 +00:00
  • e8d12882cc Fixed the total amount collected to reflect the _actual_ total, not just the page total. Now the grid no longer needs to be 500 rows long. abijah 2009-07-15 07:47:13 +00:00
  • 20c1284788 Fixed the total amount collected to reflect the _actual_ total, not just the page total. Now the grid no longer needs to be 500 rows long. abijah 2009-07-15 07:47:13 +00:00
  • 8f2b43239d Added a 'Calculating...' message before the grid has rendered. abijah 2009-07-15 07:45:23 +00:00
  • 116b014332 Added a 'Calculating...' message before the grid has rendered. abijah 2009-07-15 07:45:23 +00:00
  • 51d786ab8b Added generic mechanism to add userdata to the grid results. A 'userdata' callout function would be nice, but in practice, userdata may get added anywhere along the line, which is much easier than trying to figure out when to call such a callout and what parameters it would need to be passed. abijah 2009-07-15 07:44:51 +00:00
  • 8fcecb7092 Added generic mechanism to add userdata to the grid results. A 'userdata' callout function would be nice, but in practice, userdata may get added anywhere along the line, which is much easier than trying to figure out when to call such a callout and what parameters it would need to be passed. abijah 2009-07-15 07:44:51 +00:00
  • 6f4519fe56 Layout manipulation to the collected page. abijah 2009-07-15 07:13:41 +00:00
  • 8a36b441de Layout manipulation to the collected page. abijah 2009-07-15 07:13:41 +00:00
  • 69adfd900c Standardized the grid events interface, to ease the burden on the views and ensure that the load functions could be used by the application without wiping out the debug functionality that was built into jqGrid.ctp abijah 2009-07-15 06:21:55 +00:00
  • b1914f7cca Standardized the grid events interface, to ease the burden on the views and ensure that the load functions could be used by the application without wiping out the debug functionality that was built into jqGrid.ctp abijah 2009-07-15 06:21:55 +00:00
  • 33ba912a7e Fixed the balance summary of the collected report, and marked off NSF and collected report requirements. abijah 2009-07-15 05:42:10 +00:00
  • 0649329dde Fixed the balance summary of the collected report, and marked off NSF and collected report requirements. abijah 2009-07-15 05:42:10 +00:00
  • c4942b922b Finally, a working NSF implementation. Ledger Entry tracking stops at the Bank account, since we switch from positive to negative ledger entries. However, we're not going to reconcile debits to credits in the bank account anyway, so I just disabled tracking on the account. abijah 2009-07-15 03:06:59 +00:00
  • 50c4ee225f Finally, a working NSF implementation. Ledger Entry tracking stops at the Bank account, since we switch from positive to negative ledger entries. However, we're not going to reconcile debits to credits in the bank account anyway, so I just disabled tracking on the account. abijah 2009-07-15 03:06:59 +00:00
  • 2588fd6a91 A final attempt to reconcile the cash in the bank account. It just wasn't designed this way, so I'll strip it out on the next checkin. abijah 2009-07-15 01:33:06 +00:00
  • d1075a2ea2 A final attempt to reconcile the cash in the bank account. It just wasn't designed this way, so I'll strip it out on the next checkin. abijah 2009-07-15 01:33:06 +00:00
  • 3baa199fda Multiple e6 entries now ensure that NSF reconciles appropriately to e1 such that the lease is correctly taken into account. abijah 2009-07-15 01:05:44 +00:00
  • 6210838b22 Multiple e6 entries now ensure that NSF reconciles appropriately to e1 such that the lease is correctly taken into account. abijah 2009-07-15 01:05:44 +00:00
  • 68a10e783b getting closer to a workable NSF solution. I don't like it, but it might allow us to move forward in the short term. This solution required a stupid kludge to get CakePHP to work with the necessary query, which sucks but is not too cumbersome. What isn't working at the moment, is for the NSF to show up on the lease account, which is what I'll try to work out next. Also, the monies deposited are not trackable, since I'm not reconciling them (due to the sign flip). Not sure if there is an easily workable solution. Also, to get the collected rent report to show this negative income, it requires the bank account be part of the query, which I accomplish in the short term by setting the 'payable' flag. I may need to fix/kludge this by running the NSF through the receipt account and adding the NSF account to the list on the collected page. abijah 2009-07-15 00:21:23 +00:00
  • f5b87fa6b0 getting closer to a workable NSF solution. I don't like it, but it might allow us to move forward in the short term. This solution required a stupid kludge to get CakePHP to work with the necessary query, which sucks but is not too cumbersome. What isn't working at the moment, is for the NSF to show up on the lease account, which is what I'll try to work out next. Also, the monies deposited are not trackable, since I'm not reconciling them (due to the sign flip). Not sure if there is an easily workable solution. Also, to get the collected rent report to show this negative income, it requires the bank account be part of the query, which I accomplish in the short term by setting the 'payable' flag. I may need to fix/kludge this by running the NSF through the receipt account and adding the NSF account to the list on the collected page. abijah 2009-07-15 00:21:23 +00:00
  • 34e3251240 Just updated the comments, and added e2a and e1 into the query. No functional change yet. abijah 2009-07-14 21:44:19 +00:00
  • 1d8ef76efa Just updated the comments, and added e2a and e1 into the query. No functional change yet. abijah 2009-07-14 21:44:19 +00:00
  • 01aa2d1697 The NSF functionality is working good from a strictly general ledger point of view. However, as it's implemented, it's leaving us unable to observe that we've actually experienced negative collected rent. This is a big problem, but I've put a couple notes in place on how I might try to proceed on this next, and am checking in this semi-working version. abijah 2009-07-14 20:48:16 +00:00
  • 60f43efdb7 The NSF functionality is working good from a strictly general ledger point of view. However, as it's implemented, it's leaving us unable to observe that we've actually experienced negative collected rent. This is a big problem, but I've put a couple notes in place on how I might try to proceed on this next, and am checking in this semi-working version. abijah 2009-07-14 20:48:16 +00:00
  • 69b3cf3ed3 Implementing NSF in MonetarySourcesController. It's nowhere near done, but it seems we're headed in the right direction. abijah 2009-07-13 10:14:38 +00:00
  • abc5f1feff Implementing NSF in MonetarySourcesController. It's nowhere near done, but it seems we're headed in the right direction. abijah 2009-07-13 10:14:38 +00:00
  • 3551ad0603 Added a ledger entry listing on the monetary source view page. abijah 2009-07-13 09:54:49 +00:00
  • 8b7c27b5db Added a ledger entry listing on the monetary source view page. abijah 2009-07-13 09:54:49 +00:00
  • f960349e0f Definitely not yet what we need for reversing charges, but at least the recursive nature seems to be in the right direction. abijah 2009-07-13 04:41:18 +00:00
  • 865d9ee617 Definitely not yet what we need for reversing charges, but at least the recursive nature seems to be in the right direction. abijah 2009-07-13 04:41:18 +00:00
  • 4ad4033e4f Fix to the sub-total column, which wasn't working for ledgers that have both debits and credits (and thus need a sub-total of balance, not amount abijah 2009-07-13 04:40:21 +00:00
  • 059dbd3190 Fix to the sub-total column, which wasn't working for ledgers that have both debits and credits (and thus need a sub-total of balance, not amount abijah 2009-07-13 04:40:21 +00:00
  • 00cff7bb3a A working version of the collected report for accounts. There is still some error checking to do, since we don't want this report for just any account. Also, we may wish to do away with the form to prevent accidental submittal. Finally, it would be nice to do away with the button, and automatically update on date changes. abijah 2009-07-13 02:24:31 +00:00
  • 8a3c6ae21b A working version of the collected report for accounts. There is still some error checking to do, since we don't want this report for just any account. Also, we may wish to do away with the form to prevent accidental submittal. Finally, it would be nice to do away with the button, and automatically update on date changes. abijah 2009-07-13 02:24:31 +00:00
  • 3ffa3c81bb Fixed the last bug... I had just forgotten to use ReceiptTransaction for the dates in question. Also, I elminated the collected element, and just added a minor tweak to ledger_entries to make it work. I'll work on added user entered dates & accounts soon (perhaps next). abijah 2009-07-12 21:00:38 +00:00
  • 03af4e731f Fixed the last bug... I had just forgotten to use ReceiptTransaction for the dates in question. Also, I elminated the collected element, and just added a minor tweak to ledger_entries to make it work. I'll work on added user entered dates & accounts soon (perhaps next). abijah 2009-07-12 21:00:38 +00:00
  • 886a63773e Experiment with converting the 'collected' grid results to be a query of the rent ledger entries that resolve out to payments, instead of payment entries that resolve rent entries. It's a subtle difference, but gives a couple benefits. First, rent looks like rent, meaning that if someone paid $30 in rent over 6 days at $5 per day, the collected rent entry shows $30, not 6 entries of $5. Depending on your perspective, that can be a good or bad thing. Since we're looking at collected entries of an account, I think each account entry should only get one line, so this seems like it's a logical fit. The second thing is that I might be able to do away with a collected page altogether, and simply add a 'collected' column to each account/ledger. Not sure on that, especially since we'll be wanting a date range, and probably a selection of which accounts consititute payment (such that the user could simply see rent collected in cash or similar). In any event, this is NOT working at the moment, I seem to be getting invalid data. To figure this out, I'm going to check in now, revert back, and print the results for reference, since it was working before this change, back at r320 abijah 2009-07-12 20:23:46 +00:00
  • 2cd73ed9e8 Experiment with converting the 'collected' grid results to be a query of the rent ledger entries that resolve out to payments, instead of payment entries that resolve rent entries. It's a subtle difference, but gives a couple benefits. First, rent looks like rent, meaning that if someone paid $30 in rent over 6 days at $5 per day, the collected rent entry shows $30, not 6 entries of $5. Depending on your perspective, that can be a good or bad thing. Since we're looking at collected entries of an account, I think each account entry should only get one line, so this seems like it's a logical fit. The second thing is that I might be able to do away with a collected page altogether, and simply add a 'collected' column to each account/ledger. Not sure on that, especially since we'll be wanting a date range, and probably a selection of which accounts consititute payment (such that the user could simply see rent collected in cash or similar). In any event, this is NOT working at the moment, I seem to be getting invalid data. To figure this out, I'm going to check in now, revert back, and print the results for reference, since it was working before this change, back at r320 abijah 2009-07-12 20:23:46 +00:00
  • dc79667dca New generic mechanism for subtotaling columns. This is NOT an ideal solution, as it only subtotals for the current grid page. Hopefully we can get something better into the app controller at some point abijah 2009-07-12 20:15:56 +00:00
  • b97d071bb4 New generic mechanism for subtotaling columns. This is NOT an ideal solution, as it only subtotals for the current grid page. Hopefully we can get something better into the app controller at some point abijah 2009-07-12 20:15:56 +00:00