Пример #1
0
 private function getGridShowContent($searchFieldConfig, $showFieldArr, $infoType, $productId, $filterColumn, $whereStr, $isAllBasicField = false)
 {
     $pageSize = CommonService::getPageSize();
     $viewColumnArr = SearchService::getViewColumnArr($searchFieldConfig, $showFieldArr, $infoType, $productId, $filterColumn);
     $totalNum = SqlService::getTotalFoundNum($infoType, $productId, $whereStr, $isAllBasicField);
     $sql = SqlService::getRawDataSql($searchFieldConfig, $infoType, $productId, $this->getSqlSelectFieldArr($infoType, $showFieldArr), $whereStr, $isAllBasicField);
     $dataProvider = new CSqlDataProvider($sql, array('totalItemCount' => $totalNum, 'sort' => array('defaultOrder' => array('id' => true), 'multiSort' => true, 'attributes' => array_merge($showFieldArr, array(Info::MARK))), 'pagination' => array('pageSize' => $pageSize)));
     $sortArr = $dataProvider->getSort()->getDirections();
     Yii::app()->user->setState($productId . '_' . $infoType . '_sortArr', $sortArr);
     $preNextSessionSql = SqlService::getPreNextSql($searchFieldConfig, $infoType, $productId, $whereStr, Yii::app()->user->getState($productId . '_' . $infoType . '_sortArr', $isAllBasicField));
     Yii::app()->user->setState($productId . '_' . $infoType . '_prenextsql', $preNextSessionSql);
     return array('viewColumnArr' => $viewColumnArr, 'dataProvider' => $dataProvider, 'totalNum' => $totalNum);
 }