Spaces:
Sleeping
Sleeping
File size: 5,354 Bytes
07c3cdd | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 | <?php
class Dashboards
{
public function getListDashboards ($start=0, $limit=20, $sort='', $dir='DESC', $search='')
{
$limit_size = isset($limit) ? $limit: 20;
$start = isset($_REQUEST['start']) ? $_REQUEST['start'] : 0;
$limit = isset($_REQUEST['limit']) ? $_REQUEST['limit'] : $limit_size;
$sort = isset($_REQUEST['sort']) ? $_REQUEST['sort'] : '';
$dir = isset($_REQUEST['dir']) ? $_REQUEST['dir'] : 'ASC';
$criteria = new Criteria('workflow');
$criteria->addSelectColumn('COUNT(*) AS CNT');
$criteria->add(DashboardPeer::DAS_STATUS, array('2'), Criteria::NOT_IN);
$dataset = DashboardPeer::DoSelectRs($criteria);
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$dataset->next();
$row = $dataset->getRow();
$totalRows = $row['CNT'];
$criteria->clearSelectColumns();
$criteria->addSelectColumn(DashboardPeer::DAS_UID);
$criteria->addSelectColumn(DashboardPeer::DAS_TITLE);
$criteria->addSelectColumn(DashboardPeer::DAS_DESCRIPTION);
$criteria->addSelectColumn(DashboardPeer::DAS_UPDATE_DATE);
$criteria->addSelectColumn(DashboardPeer::DAS_STATUS);
$criteria->add(DashboardPeer::DAS_STATUS, array('2'), Criteria::NOT_IN);
if ($sort != '') {
if ($dir == 'ASC') {
$criteria->addAscendingOrderByColumn($sort);
} else {
$criteria->addDescendingOrderByColumn($sort);
}
}
$criteria->setOffset($start);
$criteria->setLimit($limit);
$dataset = DashboardPeer::DoSelectRs($criteria);
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$rows = Array();
$user = new Users();
$group = new Groupwf();
$owner = new DashboardDasInd();
while ($dataset->next()) {
$row = $dataset->getRow();
$row['DAS_OWNER'] = '';
try {
$ownerDetail = $owner->loadByDashboards($row['DAS_UID']);
foreach ($ownerDetail as $key => $value) {
$title = '';
$detail = '';
if ($value['OWNER_TYPE'] == 'USER') {
$detail = $user->load($value['OWNER_UID']);
$title = $detail['USR_FIRSTNAME'] . ' '. $detail['USR_LASTNAME'];
} else if ($value['OWNER_TYPE'] == 'GROUP') {
$detail = $group->load($value['OWNER_UID']);
$title = $detail['GRP_TITLE'];
}
$row['DAS_OWNER'] .= ($row['DAS_OWNER'] == '') ? $title : ', ' . $title;
}
} catch (exception $oError) {
//
}
$row['DAS_LABEL_STATUS'] = ($row['DAS_STATUS'] == 1) ? G::loadTranslation('ID_ACTIVE') : G::loadTranslation('ID_INACTIVE');
$rows[] = $row;
}
$response = Array();
$response['totalCount'] = $totalRows;
$response['start'] = $start;
$response['limit'] = $limit;
$response['sort'] = G::toLower($sort);
$response['dir'] = G::toLower($dir);
$response['data'] = $rows;
return $response;
}
public function getOwnerByDasUid ($das_uid='', $start=0, $limit=20, $search='')
{
require_once 'classes/model/Users.php';
require_once 'classes/model/Groupwf.php';
require_once 'classes/model/DashboardDasInd.php';
$das_uid = isset($_REQUEST['das_uid']) ? $_REQUEST['das_uid'] : $das_uid;
$start = isset($_REQUEST['start']) ? $_REQUEST['start'] : $start;
$limit = isset($_REQUEST['limit']) ? $_REQUEST['limit'] : $limit;
$search = isset($_REQUEST['search']) ? $_REQUEST['search'] : $search;
$criteria = new Criteria('workflow');
$criteria->addSelectColumn('COUNT(*) AS TOTAL');
$criteria->add(DashboardDasIndPeer::DAS_UID, $das_uid, Criteria::EQUAL);
$dataset = DashboardDasIndPeer::DoSelectRs($criteria);
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$dataset->next();
$row = $dataset->getRow();
$totalRows = $row['TOTAL'];
$criteria->clearSelectColumns();
$criteria->add(DashboardDasIndPeer::DAS_UID, $das_uid, Criteria::EQUAL);
$criteria->setOffset($start);
$criteria->setLimit($limit);
$dataset = DashboardDasIndPeer::DoSelectRs($criteria);
$dataset->setFetchmode(ResultSet::FETCHMODE_ASSOC);
$rows = Array();
$user = new Users();
$group = new Groupwf();
while ($dataset->next()) {
$row = $dataset->getRow();
$row['OWNER_LABEL'] = '---';
try {
if ($row['OWNER_TYPE'] == 'USER') {
$detail = $user->load($row['OWNER_UID']);
$row['OWNER_LABEL'] = $detail['USR_FIRSTNAME'] . ' '. $detail['USR_LASTNAME'];
} else if ($row['OWNER_TYPE'] == 'GROUP') {
$detail = $group->load($row['OWNER_UID']);
$row['OWNER_LABEL'] = $detail['GRP_TITLE'];
}
} catch (exception $oError) {
//
}
$rows[] = $row;
}
$response = Array();
$response['totalCount'] = $totalRows;
$response['start'] = $start;
$response['limit'] = $limit;
$response['data'] = $rows;
return $response;
}
}
|