Added transaction stats. Added (possibly unwanted) columns.

git-svn-id: file:///svn-source/pmgr/branches/yafr_20090716/site@389 97e9348a-65ac-dc4b-aefc-98561f571b83
This commit is contained in:
abijah
2009-07-25 08:06:50 +00:00
parent 0170dbc310
commit 7a42bee8ef
9 changed files with 192 additions and 20 deletions

View File

@@ -62,9 +62,34 @@ class LedgerEntriesController extends AppController {
// Ensure we don't add it in again as part of filtering.
if ($table == 'Account')
return null;
// Customer needs to be added beneath Transaction
if ($table == 'Customer')
return 'Transaction';
return $table;
}
function gridDataFilterTablesConfig(&$params, &$model, $table) {
$config = parent::gridDataFilterTablesConfig($params, $model, $table);
// Customer is special in that its linked in by Transaction
// Therefore, the actual table used for the join is 'Transaction',
// not 'Customer', and so we need to specify Customer here.
if ($table == 'Customer')
$config = array('Customer' => $config);
return $config;
}
function gridDataFilterConditionsStatement(&$params, &$model, $table, $key, $value) {
pr(compact('table', 'key', 'value'));
if ($table == 'Account' && $value == '-AR-')
$value = $this->LedgerEntry->Ledger->Account->accountReceivableAccountID();
return parent::gridDataFilterConditionsStatement($params, $model, $table, $key, $value);
}
function gridDataOrder(&$params, &$model, $index, $direction) {
/* if ($index === 'balance') */
/* return ($index .' '. $direction); */

View File

@@ -41,6 +41,22 @@ class TransactionsController extends AppController {
* to jqGrid.
*/
function gridDataCountTables(&$params, &$model) {
return parent::gridDataTables($params, $model);
}
function gridDataTables(&$params, &$model) {
$link = $this->gridDataCountTables($params, $model);
$link['link']['StatementEntry'] = array('fields' => array());
return $link;
}
function gridDataFields(&$params, &$model) {
$fields = parent::gridDataFields($params, $model);
$fields[] = 'COUNT(StatementEntry.id) AS entries';
return $fields;
}
function gridDataPostProcessLinks(&$params, &$model, &$records, $links) {
$links['Transaction'] = array('id');
return parent::gridDataPostProcessLinks($params, $model, $records, $links);