Even with all the effort put into getting the counts right on the customers grid, it still didn't work right. The root of the problem is the join to CurrentLease, which can result in multiple rows for the same customer. I can revisit this in the future to put some clever solution back in, but in the meantime, it was easiest just to add fields to the customers table, and simply update it whenever the customer lease situation changes. I don't like it... but it just made life much simpler.

git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716@481 97e9348a-65ac-dc4b-aefc-98561f571b83
This commit is contained in:
abijah
2009-08-04 19:25:39 +00:00
parent 4d4e96fe1c
commit 0ff91bf4d8
6 changed files with 66 additions and 30 deletions

View File

@@ -644,6 +644,17 @@ CREATE TABLE `pmgr_customers` (
-- contacts_customers table?
`primary_contact_id` INT(10) UNSIGNED NOT NULL,
-- Number of different leases for this customer.
-- It's not good to have redundant information,
-- but these fields change infrequently, and make
-- certain queries much easier, most notably for
-- the grid query, in which linking customer to
-- lease results in repeated statement entries
-- when a customer has more than one lease.
`lease_count` SMALLINT UNSIGNED NOT NULL DEFAULT 0,
`current_lease_count` SMALLINT UNSIGNED NOT NULL DEFAULT 0,
`past_lease_count` SMALLINT UNSIGNED NOT NULL DEFAULT 0,
`comment` VARCHAR(255) DEFAULT NULL,
PRIMARY KEY (`id`)