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
This commit is contained in:
abijah
2009-08-04 21:19:20 +00:00
parent 81b5bfed26
commit e0ea50d142
5 changed files with 152 additions and 77 deletions

View File

@@ -178,17 +178,33 @@ class CustomersController extends AppController {
$this->redirect(array('action'=>'index'));
}
/* //$result = $this->Customer->securityDeposits($id); */
/* $result = $this->Customer->excessPayments($id); */
/* //$result = $this->Customer->unreconciledCharges($id); */
/* echo('<HR>'); */
/* pr($result); */
/* $this->autoRender = false; */
/* return; */
// Get details on this customer, its contacts and leases
$customer = $this->Customer->find
('first', array
('contain' => array
(// Models
'Contact' =>
array('order' => array('Contact.display_name'),
// Models
'ContactPhone',
'ContactEmail',
'ContactAddress',
),
'Lease' =>
array('Unit' =>
array('order' => array('sort_order'),
'fields' => array('id', 'name'),
),
),
),
$customer = $this->Customer->details($id);
'conditions' => array('Customer.id' => $id),
));
//pr($customer);
$outstanding_balance = $customer['stats']['balance'];
// Figure out the outstanding balances for this customer
$stats = $this->Customer->stats($id);
$outstanding_balance = $stats['balance'];
$outstanding_deposit = $this->Customer->securityDepositBalance($id);
// Figure out if this customer has any non-closed leases
@@ -229,6 +245,11 @@ class CustomersController extends AppController {
$id));
}
if ($outstanding_balance < 0)
$this->sidemenu_links[] =
array('name' => 'Issue Refund',
'url' => array('action' => 'refund', $id));
// Prepare to render.
$title = 'Customer: ' . $customer['Customer']['name'];
$this->set(compact('customer', 'title',