abijah
8491d81496
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@238 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-07 01:29:03 +00:00
abijah
240a16367b
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@233 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-06 22:23:40 +00:00
abijah
cd07f51ff9
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@231 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-06 18:34:44 +00:00
abijah
cba8e16be7
Moved the contact save logic into the model and out of the controller.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@230 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-06 17:25:05 +00:00
abijah
fbeed43e61
Fixed comment block
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@229 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-06 16:59:13 +00:00
abijah
1d82e263ad
Changed the logic a little bit in the customer model saveCustomer function, such that we can provide a default customer name if otherwise unspecified. Changed the page titles to reflect Customer vs Contact, since they can easily have the same names.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@228 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-06 16:57:23 +00:00
abijah
aa12a1efa4
Moved the customer save logic into the model
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@227 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-06 15:45:49 +00:00
abijah
3e60f8d45e
Implemented ability to add a customer, and fixed the problem with flagging of the primary contact.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@220 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-06 03:01:28 +00:00
abijah
09cb297dc7
Implemented edit functionality for customer. Like with contacts, the interface leaves much to be desired, since it's limited in functionality. Namely, you can add a contact, but you can't add contact methods (phone/mail/email). Also, it doesn't use jqGrid to present the selection choices, and so the user is stuck with the fields we've chosen to display, as well as the sort order we've chosen. Enhancement is possible someday, but for now, it gets the job done.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@219 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-06 02:06:23 +00:00
abijah
6def9cbb02
Finished implementation of contact edit. This is now saving everything to the database. I hope to now leverage it for a new contact. This checkin includes a bit of code in the sitelink2pmgr script that sets the customer display name. It should have been checked in several revisions ago.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@217 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-05 23:43:35 +00:00
abijah
b7e0ea8313
Moved the customer edit page to include address and email fields. This is largely all the work on the presentation side, now I just need to take the data and update the database.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@214 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-05 20:01:06 +00:00
abijah
dc850f4e8e
First shot at an actual working form to enter contact information. It only handles phone numbers at the moment, and it does NOT handle existing ones. It's a decent start though, and worth checking in. Next I'll have to handle existing phone numbers, and then addresses and emails. Of course, after that, I'll have to actually save everything to the database.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@209 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-05 15:01:18 +00:00
abijah
27503ac4f9
Got rid of the temporary function to determine unit status enums, and switched over to actually querying the database. Eliminated a legend entry for DELETED since no one should ever see a unit like that given that it should be, well, deleted. Modified the legend algorithm slightly to fix the number of rows instead of columns, since the placement algorithm works through the rows before moving to the next column.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@206 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-04 04:42:11 +00:00
abijah
d77dcfca75
Added ability to move an existing customer into a vacant unit. Changed out all of the 'amount' fields with 'rent', since it's much more self-explanatory. We still need the ability to add customers and contacts. I'll consider doing this by using the insert row ability of jqGrid.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@204 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-03 06:53:41 +00:00
abijah
504f1e7cc0
Finished basic functionality for Move-Out. This still needs some work to handle the security deposit.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@202 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-02 20:00:50 +00:00
abijah
1ae1b6a4f3
Added a closes table to the schema, so that we can keep track of daily closes, deposits, etc. Moved into the model an operation to close a set of ledgers and make a deposit.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@200 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-02 09:19:33 +00:00
abijah
8d87a0698c
Implemented a bank deposit routine, to transfer funds out of the till and into the bank.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@196 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-01 11:10:57 +00:00
abijah
44df78e69f
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@195 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-07-01 08:17:31 +00:00
abijah
707c9a87ef
Merge in the bug fixes made to Linkable, as well as the better logging mechanism.
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@194 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-30 18:11:40 +00:00
abijah
0558c35ebc
Merge in some desired changes from the statements_20090623 branch
...
git-svn-id: file:///svn-source/pmgr/branches/invoice_receipt_20090629@193 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-30 18:09:17 +00:00
abijah
ce4fa4131a
More changes. I just can't seem to come up with a solution that works that I like. The problem now, without invoice/receipt, is that one check cannot cleanly pay for two units.
...
git-svn-id: file:///svn-source/pmgr/branches/single_AR_20090622@182 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-24 00:33:39 +00:00
abijah
80f8bd36d5
Nowhere near done yet, but checking in a snapshot of semi-working code. There is some simultaneous support for both with and without use of the Invoice/Receipt account. I want to do away with them completely, but will need to change how sitelink payments are mapped (right now, they split a payment into multiple parts to match the charge).
...
git-svn-id: file:///svn-source/pmgr/branches/single_AR_20090622@181 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-23 19:04:41 +00:00
abijah
20b8908a00
Experiment to group ledger entries by their transaction ID instead of their entry ID.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@177 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-22 19:03:08 +00:00
abijah
b780ebeb3e
Added stats summary to the top level for lease. For consistency, I want all stats to be summarized at the top.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@175 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-22 17:55:32 +00:00
abijah
dc6e399fea
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@171 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-19 16:21:16 +00:00
abijah
1508f963d3
Fixed a bug that was leaving unreconciled entries in the list of reconciled entries.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@170 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-19 16:19:18 +00:00
abijah
3e5ac64108
Although I'm not too happy with the modifications, I do have a working version that minimizes the columns need to display ledger entries. The logic feels screwy to me, but I've beat my head on it long enough. I'll move on to something else and come back to it when my head clears.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@166 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-18 03:57:43 +00:00
abijah
063aec6c3c
Fixed a confusion over the usage of the 'opposite' function, which was converting, for example, from 'ASSET' to 'credit'. However, it seemed like it could be used to convert from 'debit' to 'credit', but it didn't work that way. So, I modified it to do so, and made things a bit more robust by making the comparisons case insensitive.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@164 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-18 03:43:05 +00:00
abijah
a2ae522b2d
Further progress on payment entries. There is an outstanding charges grid, but it doesn't have amounts due to the way I designed the ledger_entries element. I'll do a bit of rework on that next.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@163 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-18 00:49:40 +00:00
abijah
ba218fbeeb
Changed the unreconciled transaction list to always include 'debit' or 'credit', even if the user specifically requests one or the other. Handling it as a special case everywhere was bothering me.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@162 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-17 19:12:22 +00:00
abijah
2e67695154
Added routines to reconcile a new ledger entry against unreconciled entries. I haven't tested it robustly, but it seems to work on the surface at least.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@161 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-17 18:40:39 +00:00
abijah
1e3774cad6
Removed remnants of the Containable behavior (which we've already put into the application model. Modified the account model to look for all unreconciled transactions, not just those from the current ledger. Added a mechanism to find unreconciled transactions up the chain, including lease and customer.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@159 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-17 09:00:38 +00:00
abijah
518f7836ac
Fairly decent first pass at determining which ledger entries have not yet been reconciled for an account. I'm using the current ledger only, which I'm sure is not what we want. Since it works though, it's worth checking in.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@158 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-17 08:32:53 +00:00
abijah
fae90c3fa9
Added initial support for ledger entry reconciliation (e.g. matching payments to charges).
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@152 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-16 21:40:46 +00:00
abijah
a83edef049
Further tweaking to the linkable behavior, first by fixing the $efields addition from the last checkin of this file, and second by fixing a problem with linking onto a HABTM relationship, since the alias was coming out screwy (although this issue was hacked by using 'table' to determine the class and alias).
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@151 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-16 21:39:27 +00:00
abijah
ce9142ffe2
Working version of the Linkable behavior that allows for a HABTM joining table to have an alias specified (thus allowing more than one instance in a query). I don't like the $efields bit though, and will change that on the next checkin. Don't want to lose a working version though!
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@148 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-16 17:19:07 +00:00
abijah
435b0614b2
Removed another unnecessary field
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@144 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-16 04:47:38 +00:00
abijah
708910870c
Removed what I believe to be unnecessary fields from the contacts model, since they should be determinable by convention.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@143 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-16 02:24:39 +00:00
abijah
ce20a44836
Further work on the linkable behavior, since it wasn't working right with aliases. It doesn't help matters that models are instantiated from the model associations with their own alias. Thus, the priority of a tables alias is 1) 'alias' as defined in the 'link' structure'; 2) alias member of the model instance; 3) class name of the model instance. I may need to revisit this work later, since while typing these comments I managed to enlighten myself on the alias scheme. But it does seem to work for now.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@140 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-15 23:06:27 +00:00
abijah
1495bb3373
Added monetary source into the ledger entry lists. This may be more information than is needed on the listing, but I'll take it out later if so.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@139 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-15 21:52:38 +00:00
abijah
543e2daa43
Moved the ledger_entries controller/view to jqGrid.
...
Changed the app controller jqGrid virtual functions for getting the tables for both count and the full query. The ExtraTables bit was too confusing, and was only intended to allow the user to specify a subset for count and augment it for full query. This is easily accomplished by having DataTables just call DataCountTables first... one line solution ends the confusion.
Modified linkable behavior to support a %{MODEL_ALIAS} tag, which is replaced in the relationship conditions at runtime with the actual model alias. This is experimental at best, and certainly will create a problem for any model that ends up using the conditions in 'contain' instead of 'link'.
Broke the LedgerEntry->findInLedgerContext function out into multiple pieces, so those same pieces could be used in the LedgerEntries controller to populate jqGrid.
Changed the ledger_entries element, as a special case, to also allow listing control from ledger_id and account_type, instead of idlist as a mechanism for populating the grid.
Changed the infobox summary css, which will break several pages until I rework them.
Some next steps include fixing the broken infoboxes, and changing the transactions view to use the ledger_entries element. This also means the ledger_entries element will need to add support for idlist, or if we have any credit/debit issues, perhaps another custom transaction_id instead.
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@134 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-15 19:41:20 +00:00
abijah
55dd94681a
Added a primary contact for each customer, as there must be someone (or some entity) to contact for every customer. This simply makes it explicit, and has the added benefit of being easier to work with when querying.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@104 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-13 04:19:19 +00:00
abijah
c80c66d958
FIrst pass implementation to accept payments. Nowhere near complete, but things are working relatively well, and I have a plethora of different attempts saved in comment blocks. I really want to clean up though, so I'm snapshotting it.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@99 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-12 01:49:24 +00:00
abijah
f8eb45a0b9
Added lease and ledger_entry controllers/views. Minor bugfixes as well.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@85 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-10 08:53:22 +00:00
abijah
55b896a9f0
Primarly a cleanup checkin, although a couple minor bugfixes were included as well.
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@82 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-10 05:14:08 +00:00
abijah
9f8d4fa9b2
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@81 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-10 02:41:23 +00:00
abijah
4988d2717f
Fixed problem with relationships that are defined soley on the 'conditions' part of the association, and not on 'foreignKey' (which is allowed to be 'false').
...
git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605@80 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-10 02:31:49 +00:00
abijah
f3ffa3c079
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@71 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-06 20:18:56 +00:00
abijah
3f6c526718
Removed the named table alias from each of the HABTM joins, since we don't know in advance what name will be used in the actual join
...
git-svn-id: file:///svn-source/pmgr/branches/initial_20090526@51 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-01 04:29:26 +00:00
abijah
903209a47e
Performed cleanup, and started the thought process of figuring out how to use one link table multiple times in the same query. My changes worked actually, but I want to wait on this to see if I can figure out if there is already a core solution (since it seems likely that things behaving like a tree would have one table used multiple times in the same query... although they probably get around that by running 100 different queries come to think of it).
...
git-svn-id: file:///svn-source/pmgr/branches/initial_20090526@50 97e9348a-65ac-dc4b-aefc-98561f571b83
2009-06-01 04:27:34 +00:00