/** * * Enter description here ... * @param unknown_type $params */ public static function Pages($params = array()) { //设置默认参数 $_defaults_params = array('allow_cache' => true, 'page' => isset($_GET['page']) ? intval($_GET['page']) : 1, 'pagesize' => 30); $params = array_merge($_defaults_params, $params); $cmd = Yii::app()->db->createCommand(); $cmd->select('COUNT(u.collect_log_id) AS COUNT')->from('{{collect_log}} u'); if (intval($params['collect_log_insert_time'])) { $__addons = array('AND', 'u.collect_log_insert_time=:collect_log_insert_time'); $__params = array(':collect_log_insert_time' => $params['collect_log_insert_time']); } if ($params['collect_log_msg']) { $__addons[] = array('AND', array('OR LIKE', 'u.collect_log_msg', "%{$params[collect_log_msg]}%")); } if (is_array($__addons) && is_array($__params)) { $cmd->where($__addons, $__params); } //统计数量 $count = $cmd->queryScalar(); //分页处理 $pages = new CPagination($count); //设置分页大小 $pages->pageSize = $params['pagesize']; //清空前面执行过的SQL $cmd->setText(''); if (isset($params['orderby']) && $params['orderby']) { $cmd->order($params['orderby']); } else { $cmd->order(array('u.collect_log_id DESC')); } $cmd->select('u.*')->limit($pages->getLimit())->offset($pages->getOffset()); $_r['pages'] = $pages; $_r['rows'] = $cmd->queryAll(); return $_r; }
public function fetchAllByPage($conditions = "", $pageSize = null) { $pages = new CPagination($this->countByCondition($conditions)); $pageSize = is_null($pageSize) ? Yii::app()->params["basePerPage"] : $pageSize; $pages->setPageSize(intval($pageSize)); $criteria = new CDbCriteria(array("limit" => $pages->getLimit(), "offset" => $pages->getOffset())); $pages->applyLimit($criteria); $fields = "r.resumeid,rd.detailid,rd.realname,rd.positionid,rd.gender,rd.birthday,rd.education,rd.workyears,r.flag,r.status"; $sql = "SELECT {$fields} FROM {{resume}} r LEFT JOIN {{resume_detail}} rd ON r.resumeid=rd.resumeid "; if (!empty($conditions)) { $sql .= " WHERE " . $conditions; } $offset = $pages->getOffset(); $limit = $pages->getLimit(); $sql .= " ORDER BY r.entrytime DESC LIMIT {$offset},{$limit}"; $records = $this->getDbConnection()->createCommand($sql)->queryAll(); return array("pages" => $pages, "datas" => $records); }
public function search($begin, $end) { $condition = 'time>=:begin AND time<=:end'; $params = ['begin' => $begin, 'end' => $end]; $model = Logging::model(); $pager = new CPagination($model->count($condition, $params)); $pager->setPageSize(100); $logging = $model->findAll(['condition' => $condition, 'params' => $params, 'offset' => $pager->getOffset(), 'limit' => $pager->getLimit(), 'order' => 'time desc']); $this->render('index', ['logging' => new RedArrayDataProvider($logging), 'pager' => $pager]); }
/** * Displays a particular model. * * @param integer $id * the ID of the model to be displayed */ public function actionView($id) { $count = CopyrightInputContentModel::model()->getCountSong($id); $page = new CPagination($count); $page->pageSize = 100; $songs = CopyrightInputContentModel::model()->getListSong($id, $page->getLimit(), $page->getOffset()); /* $inputModel = new CopyrightSongInputModel("search"); $inputModel->unsetAttributes (); $inputModel->setAttribute("input_file", $id); */ $this->render('view', array('model' => $this->loadModel($id), 'songs' => $songs, 'page' => $page)); }
private function view() { $query = $this->request->getPost('Setting', []); $model = Setting::model(); $model->attributes = $query; $condition = $this->createSearchCriteria($query); $pager = new CPagination($model->count($condition)); $pager->setPageSize(20); $condition['offset'] = $pager->getOffset(); $condition['limit'] = $pager->getLimit(); $data = $model->findAll($condition); $this->render('setting', ['data' => new RedArrayDataProvider($data), 'pager' => $pager, 'model' => $model]); }
public function run() { $query = $this->request->getQuery('Service', []); $model = Service::model(); $model->attributes = $query; $condition = $this->createSearchCriteria($query); $pager = new CPagination($model->count($condition)); $pager->setPageSize(20); $condition['offset'] = $pager->getOffset(); $condition['limit'] = $pager->getLimit(); $condition['order'] = 'status asc, uid asc'; $data = $model->findAll($condition); $this->render('pac', ['data' => new RedArrayDataProvider($data), 'pager' => $pager, 'model' => $model]); }
public function actionIndex() { $c = array('conditions' => array('status' => array('==' => 1))); $total = WebArticlesModel::model()->count($c); $pager = new CPagination($total); $itemOnPaging = 5; $pager->pageSize = 10; $curr_page = $pager->getCurrentPage(); $limit = $pager->getLimit(); $offset = $pager->getOffset(); $c = array('conditions' => array('status' => array('==' => 1)), 'sort' => array('_id' => EMongoCriteria::SORT_DESC), 'limit' => $limit, 'offset' => $offset); $data = FeedModel::model()->findAll($c); $this->render('index', compact('data', 'pager', 'itemOnPaging')); }
public function actionBilling() { $query = ['uid' => $this->user->getId()]; $model = Traffic::model(); $model->attributes = $query; $condition = ['condition' => 'uid=:uid', 'params' => ['uid' => $query['uid']]]; $pager = new CPagination($model->count($condition)); $pager->setPageSize(20); $condition['offset'] = $pager->getOffset(); $condition['limit'] = $pager->getLimit(); $condition['order'] = 'date desc'; $data = $model->findAll($condition); $this->render('billing', ['data' => new RedArrayDataProvider($data), 'pager' => $pager]); }
public function actionSearch() { $keyword = Yii::app()->request->getParam('q'); if ($keyword == '') { $this->redirect(Yii::app()->homeUrl); } $keyword = Common::RemoveXSS($keyword); $order = Yii::app()->request->getParam('order', 1); $channel = strtolower(Yii::app()->request->getParam('channel', 'web')); $pagesize = 12; $count = ProductModel::model()->countsearchProduct($channel, $keyword); $page = new CPagination($count); $page->pageSize = $pagesize; $product_web = ProductModel::model()->searchProduct($channel, $keyword, $order, $page->getLimit(), $page->getOffset()); $this->render('search', compact('product_web', 'page', 'keyword', 'order', 'channel', 'count')); }
public function actionList() { $limit = Yii::app()->params['numberPerPage']; $c = CHtml::encode(Yii::app()->request->getParam('id', '0')); $c = (int) (!empty($c)) ? $c : '0'; $s = CHtml::encode(Yii::app()->request->getParam('type')); $s = !empty($s) ? $s : Yii::t('wap', 'Hot'); $s = strtoupper($s); $cTitle = $c == 0 ? Yii::t('wap', 'All genres') : WapGenreModel::model()->findByPk($c)->name; $sTitle = $s == 'NEW' ? Yii::t('wap', 'New') : $s; $page = (int) Yii::app()->request->getParam('page', 1); $callBack = (int) Yii::app()->request->getParam('call_back', 0); $callBackLink = Yii::app()->createUrl("album/list", array('type' => $c, 's' => $s, 'c' => $c)); $options = array(); if ($c == 0) { if ($s == 'NEW') { $count = WapAlbumModel::countListByCollection('ALBUM_NEW'); $albums = WapAlbumModel::getListNew($page, $limit); $options = array('col' => 'ALBUM_NEW', 'headerText' => "ALBUM MỚI"); } else { $options = array('col' => 'ALBUM_HOT', 'headerText' => "ALBUM HOT"); $albums = WapAlbumModel::getListHot($page, $limit); $count = WapAlbumModel::countListByCollection('ALBUM_HOT'); } $pager = new CPagination($count); $pager->setPageSize($limit); } else { if ($s == 'NEW') { $count = WapAlbumModel::model()->countAlbumsByGenre($c); $pager = new CPagination($count); $pager->setPageSize($limit); $albums = WapAlbumModel::model()->getAlbumsByGenre($c, $pager->getOffset(), $pager->getLimit()); } else { $count = WapGenreModel::getCountAlbumsByGenreCollection($c); $pager = new CPagination($count); $pager->setPageSize($limit); $id_album_hot = 6; $albums = WapGenreModel::getAlbumsByGenreCollection($c, $id_album_hot, $page, $limit); } } if ($callBack) { $this->layout = false; $this->render("_ajaxList", compact('albums', 'pager', 'callBackLink', 'options')); } else { $this->render('list', array('albums' => $albums, 's' => $s, 'c' => $c, 'cTitle' => $cTitle, 'sTitle' => $sTitle, 'pager' => $pager, 'callBackLink' => $callBackLink, 'options' => $options)); } }
public function fetchAllAndPage($conditions = "", $pageSize = null) { $pages = new CPagination($this->countByCondition($conditions)); $pageSize = is_null($pageSize) ? Yii::app()->params["basePerPage"] : $pageSize; $pages->setPageSize(intval($pageSize)); $offset = $pages->getOffset(); $limit = $pages->getLimit(); $criteria = new CDbCriteria(array("limit" => $limit, "offset" => $offset)); $pages->applyLimit($criteria); $fields = "*"; $sql = "SELECT {$fields} FROM {{tasks}}"; if (!empty($conditions)) { $sql .= " WHERE " . $conditions; } $sql .= " ORDER BY sort DESC LIMIT {$offset},{$limit}"; $records = $this->getDbConnection()->createCommand($sql)->queryAll(); return array("pages" => $pages, "datas" => $records); }
public function fetchAllByPage($condition = "", $pageSize = 0) { $count = empty($condition) ? $this->count() : $this->countBySearchCondition($condition); $pagination = new CPagination($count); $pageSize = empty($pageSize) ? Yii::app()->params["basePerPage"] : $pageSize; $pagination->setPageSize($pageSize); $offset = $pagination->getOffset(); $limit = $pagination->getLimit(); $criteria = new CDbCriteria(array("limit" => $limit, "offset" => $offset)); $pagination->applyLimit($criteria); $fields = "rd.realname,rb.checkid,rb.resumeid,rb.company,rb.position,rb.entrytime,rb.quittime"; $sql = "SELECT {$fields} FROM {{resume_bgchecks}} rb LEFT JOIN {{resume_detail}} rd ON rb.resumeid=rd.resumeid "; if (!empty($condition)) { $sql .= " WHERE " . $condition; } $sql .= " LIMIT {$offset},{$limit}"; $records = $this->getDbConnection()->createCommand($sql)->queryAll(); return array("pagination" => $pagination, "data" => $records); }
public function actionIndex() { $keyword = Yii::app()->request->getParam('keyword', ''); $page = Yii::app()->request->getParam('page', 1); // Find all records witch have first name starring on a, b and c, case insensitive search $keyRegexPattern = self::formatKeywordsPatternSearch($keyword); if (empty($keyRegexPattern)) { $data = null; } else { $regexObj = new MongoRegex($keyRegexPattern); $c = array('conditions' => array('status' => array('==' => 1), 'title' => array('==' => $regexObj))); $total = WebArticlesModel::model()->count($c); $pager = new CPagination($total); $itemOnPaging = 5; $pager->pageSize = 10; $curr_page = $pager->getCurrentPage(); $limit = $pager->getLimit(); $offset = $pager->getOffset(); $c = array('conditions' => array('status' => array('==' => 1), 'title' => array('==' => $regexObj)), 'limit' => $limit, 'offset' => $offset); $data = WebArticlesModel::model()->findAll($c); } $this->render('index', compact('data', 'pager', 'itemOnPaging', 'keyword', 'limit')); }
/** * function actionView * call to render detail VideoPlaylist page */ public function actionView() { $id = (int) Yii::app()->request->getParam('id'); $video_id = Yii::app()->request->getParam('video_id', null); $videoPlaylist = WapVideoPlaylistModel::model()->published()->with('video_playlist_artist')->findByPk($id); $playPrice = $videoPlaylist->price; if (!$videoPlaylist) { $this->forward("/site/error", true); } $list_video_playlist = WapVideoModel::model()->getVideosOfVideoPlaylist($id); //check noi dung doc quyen $userType = "GUEST"; $phone = Yii::app()->user->getState('phone'); if ($phone) { $userType = "MEMBER"; } $userSub = Yii::app()->user->getState('userSub'); $packageCode = Yii::app()->user->getState('packageCode'); if ($userSub) { $userType = "SUB_" . $packageCode; } $content_limit = ContentLimitModel::model()->getIdByType('video', 'WAP', $userType); $list_video = array(); for ($i = 0; $i < count($list_video_playlist); $i++) { if (!in_array($list_video_playlist[$i]->id, $content_limit)) { $list_video[] = $list_video_playlist[$i]; } } $phone = Yii::app()->user->getState('msisdn'); $like = null; if ($phone) { $like = FavouriteVideoPlaylistModel::model()->findByAttributes(array('video_playlist_id' => $id, 'msisdn' => $phone)); } $video = WapVideoModel::model()->with("video_extra")->findByPk($video_id); $video = isset($video) ? $video : $list_video[0]; $artist_id = $videoPlaylist->video_playlist_artist[0]->artist_id; $count = VideoPlaylistArtistModel::model()->countVideoPlaylistByArtist($artist_id); $pager = new CPagination($count); $pager->setPageSize(Yii::app()->params['numberPerPage']); $videoPlaylistSameArtist = WapVideoPlaylistModel::model()->getVideoPlaylistsSameArtists($artist_id, $pager->getOffset(), $pager->getLimit()); $callBackLink = Yii::app()->createUrl("videoPlaylist/loadAjax", array('s' => 'artist', 'artist_id' => $artist_id)); $this->render('view', compact('video', 'list_video', 'videoPlaylist', 'pager', 'videoPlaylistSameArtist', 'callBackLink', 'like', 'artist_id')); }
/** * * Enter description here ... * @param unknown_type $params */ public static function Pages($params = array()) { //设置默认参数 $_defaults_params = array('allow_cache' => true, 'page' => isset($_GET['page']) ? intval($_GET['page']) : 1, 'pagesize' => 15); $params = array_merge($_defaults_params, $params); //有开启缓存功能,则从缓存中取数据, 如果有数据,则直接返回结果 if ($params['allow_cache'] && isset(Yii::app()->cache)) { $_cache_key = md5('content.archive.pages.' . serialize($params)); $_r = json_decode(Yii::app()->cache->get($_cache_key), true); if ($_r && is_array($_r)) { return $_r; } } $cmd = Yii::app()->db->createCommand(); $cmd->select('COUNT(DISTINCT a.content_archives_id) AS COUNT')->from('{{content_archives}} a')->join('{{content_archives_classes_relating}} acr', 'acr.content_archives_id=a.content_archives_id')->join('{{content_archives_classes}} ac', 'ac.class_id=acr.class_id')->join('{{content_model}} m', 'm.content_model_id=ac.content_model_id'); //添加条件 if (isset($params['content_archives_status']) && !empty($params['content_archives_status'])) { $__addons = array('AND', 'a.content_archives_status=:content_archives_status'); $__params = array(':content_archives_status' => $params['content_archives_status']); } else { $__addons = array('AND', 'a.content_archives_status>:content_archives_status'); $__params = array(':content_archives_status' => 0); } // if (isset($params['content_archives_id']) && !empty($params['content_archives_id'])) { $__addons[] = array('AND', 'a.content_archives_id=:content_archives_id'); $__params[':content_archives_id'] = $params['content_archives_id']; } // if (isset($params['content_model_id']) && !empty($params['content_model_id'])) { $__addons[] = array('AND', 'ac.content_model_id=:content_model_id'); $__params[':content_model_id'] = $params['content_model_id']; } // if (isset($params['class_id']) && !empty($params['class_id'])) { $_classes = ContentArchivesClass::get_classes_children($params['class_id']); $_s = ''; foreach ($_classes as $_k => $_v) { $_s .= ",:class_id{$_k}"; $__params[":class_id{$_k}"] = $_v; } $_s = trim($_s, ','); $__addons[] = array('AND', "acr.class_id IN({$_s})"); unset($_classes, $_s); } // if (isset($params['content_archives_subject']) && !empty($params['content_archives_subject'])) { $__addons[] = array('OR', array('OR LIKE', 'a.content_archives_subject', "%{$params['content_archives_subject']}%")); //$__addons[] = array('LIKE', 'a.content_archives_name', '%:content_archives_name%'); //$__params = array_merge($__params, array(':content_archives_name'=>$params['content_archives_name'])); } // if (isset($params['search_key']) && $params['search_key']) { if (is_numeric($params['search_key'])) { $__addons[] = array('AND', 'a.content_archives_id=:content_archives_id'); $__params[':content_archives_id'] = $params['search_key']; } else { $__addons[] = array('OR', array('OR LIKE', 'a.content_archives_subject', "%{$params['search_key']}%")); } //$__params = array_merge($__params, array(':search_key'=>$params['search_key'])); } $cmd->where($__addons, $__params); //统计数量 $count = $cmd->queryScalar(); //分页处理 $pages = new CPagination($count); //设置分页大小 $pages->pageSize = $params['pagesize']; //清空前面执行过的SQL $cmd->setText(''); if (isset($params['orderby']) && $params['orderby']) { $cmd->order($params['orderby']); } else { $cmd->order(array('a.content_archives_rank ASC', 'a.content_archives_dateline DESC')); } $cmd->select('a.content_archives_id, ac.content_model_id, m.content_model_name, ac.class_id, ac.class_name, a.content_archives_subject, a.content_archives_color, a.content_archives_short_subject, a.content_archives_flag, a.content_archives_jump_url, a.content_archives_source, a.content_archives_author, a.content_archives_thumb, a.content_archives_keywords, a.content_archives_summary, a.content_archives_status, a.content_archives_rank, a.content_archives_pubtime, a.content_archives_is_build, a.content_archives_lasttime, a.content_archives_dateline')->group('a.content_archives_id')->limit($pages->getLimit())->offset($pages->getOffset()); $_r['pages'] = $pages; $_r['rows'] = $cmd->queryAll(); //有开启缓存,则把结果添加到缓存中 if ($params['allow_cache'] && isset(Yii::app()->cache)) { $_cache_cache_time = Setting::getSettingCache('CONTENT_ARCHIVES_PAGES_CACHE_TIME'); Yii::app()->cache->set($_cache_key, json_encode($_r), $_cache_cache_time); unset($_cache_cache_time, $_cache_key); } return $_r; }
public function fetchLoopsAndPage($conditions = "", $pageSize = null) { $pages = new CPagination($this->countByCondition($conditions)); $pageSize = is_null($pageSize) ? Yii::app()->params["basePerPage"] : $pageSize; $pages->setPageSize(intval($pageSize)); $offset = $pages->getOffset(); $limit = $pages->getLimit(); $criteria = new CDbCriteria(array("limit" => $limit, "offset" => $offset)); $pages->applyLimit($criteria); $fields = "`calendarid`, `subject`, `starttime`, `endtime`, `mastertime`, `masterid`, `isalldayevent`, `category`, `instancetype`, `recurringtime`, `recurringtype`, `status`, `recurringbegin`, `recurringend`, `uptime`, `upuid`, `uid`, `lock` "; $sql = "SELECT {$fields} FROM {{calendars}}"; if (!empty($conditions)) { $sql .= " WHERE " . $conditions; } $sql .= " ORDER BY uptime DESC LIMIT {$offset},{$limit}"; $records = $this->getDbConnection()->createCommand($sql)->queryAll(); return array("pages" => $pages, "datas" => $records); }
/** * * Enter description here ... * @param unknown_type $params */ public static function Pages($params = array()) { //设置默认参数 $_defaults_params = array('allow_cache' => true, 'page' => isset($_GET['page']) ? intval($_GET['page']) : 1, 'pagesize' => 10); $params = array_merge($_defaults_params, $params); //有开启缓存功能,则从缓存中取数据, 如果有数据,则直接返回结果 if ($params['allow_cache'] && isset(Yii::app()->cache)) { $_cache_key = md5('ad.position.pages.' . serialize($params)); $_r = Yii::app()->cache->get($_cache_key); if ($_r && is_array($_r)) { return $_r; } } $cmd = Yii::app()->db->createCommand(); $cmd->select('COUNT(gad.ad_data_id) AS COUNT')->from('{{ad_data}} gad'); //添加条件 //$__addons = array('AND', 'u.union_status=:GState'); //$__params = array('GState'=>1); // if (isset($params['ad_data_status']) && !empty($params['ad_data_status'])) { $__addons = array('AND', 'gad.ad_data_status=:ad_data_status'); $__params = array(':ad_data_status' => $params['ad_data_status']); } else { $__addons = array('AND', 'gad.ad_data_status>:ad_data_status'); $__params = array(':ad_data_status' => 0); } if (isset($params['ad_position_id']) && !empty($params['ad_position_id'])) { $__addons[] = array('AND', 'gad.ad_position_id=:ad_position_id'); $__params = array_merge($__params, array(':ad_position_id' => $params['ad_position_id'])); } if (isset($params['search_key']) && !empty($params['search_key'])) { $__addons[] = array('AND', 'gad.ad_data_subject LIKE :search_key'); $__params = array_merge($__params, array(':search_key' => "%{$params['search_key']}%")); } if (is_array($__addons) && is_array($__params)) { $cmd->where($__addons, $__params); } //统计数量 $count = $cmd->queryScalar(); //分页处理 $pages = new CPagination($count); //设置分页大小 $pages->pageSize = $params['pagesize']; //清空前面执行过的SQL $cmd->setText(''); if (isset($params['orderby']) && $params['orderby']) { $cmd->order($params['orderby']); } else { $cmd->order(array('gad.ad_data_rank ASC', 'gad.ad_data_id DESC')); } $cmd->select('gad.ad_data_id, gad.ad_data_subject, gad.ad_data_type, gad.ad_data_link, gap.ad_position_name, gad.ad_data_rank, gad.ad_data_is_show,gad.ad_data_relative_id,gad.ad_position_id')->join("{{ad_position}} gap", "gad.ad_position_id=gap.ad_position_id")->limit($pages->getLimit())->offset($pages->getOffset()); $_r['pages'] = $pages; $_r['rows'] = $cmd->queryAll(); //有开启缓存,则把结果添加到缓存中 if ($params['allow_cache'] && isset(Yii::app()->cache)) { $_cache_cache_time = Setting::get_setting_value('AD_DATA_PAGES_CACHE_TIME'); Yii::app()->cache->add($_cache_key, json_encode($_r), $_cache_cache_time); unset($_cache_cache_time, $_cache_key); } return $_r; }
public function actionLoadAjax() { $callBack = (int) Yii::app()->request->getParam('call_back', 0); $s = CHtml::encode(Yii::app()->request->getParam('s')); $id = (int) Yii::app()->request->getParam('id', 0); $artist_id = (int) Yii::app()->request->getParam('artist_id', 0); $genre_id = (int) Yii::app()->request->getParam('genre_id', 0); if ($s == 'genre') { $callBackLink = Yii::app()->createUrl("song/loadAjax", array('s' => 'genre', 'genre_id' => $genre_id)); $count = WapSongModel::model()->countSongsByGenre($genre_id); $pager = new CPagination($count); $pageSize = Yii::app()->params['pageSize']; $pager->setPageSize($pageSize); $currentPage = $pager->getCurrentPage(); $songs = WapSongModel::model()->getSongsByGenre($genre_id, $pager->getOffset(), $pager->getLimit()); } else { $callBackLink = Yii::app()->createUrl("song/loadAjax", array('s' => 'artist', 'artist_id' => $artist_id)); $count = WapSongModel::model()->countSongsSameSinger($id, $artist_id); $pager = new CPagination($count); $pageSize = Yii::app()->params['pageSize']; $pager->setPageSize($pageSize); $currentPage = $pager->getCurrentPage(); $songs = WapSongModel::model()->getSongsSameSinger($id, $artist_id, $pager->getOffset(), $pager->getLimit()); } if ($callBack) { $this->renderPartial("_ajaxList", compact('songs', 'pager'), false, true); } else { $this->renderPartial("_same", compact('songs', 'pager', 'callBackLink'), false, true); } }
/** * * Enter description here ... * @param unknown_type $params */ public static function Pages($params = array()) { //设置默认参数 $_defaults_params = array('allow_cache' => true, 'page' => isset($_GET['page']) ? intval($_GET['page']) : 1, 'pagesize' => 10); $params = array_merge($_defaults_params, $params); $cmd = Yii::app()->db->createCommand(); $cmd->select('COUNT(u.collect_list_id) AS COUNT')->from('{{collect_list}} u')->join('{{collect_task}} ct', 'u.collect_task_id=ct.collect_task_id'); if (intval($params['collect_task_id'])) { $__addons = array('AND', 'u.collect_task_id=:collect_task_id'); $__params = array(':collect_task_id' => $params['collect_task_id']); } else { $__addons = array('AND', 'u.collect_task_id!=:collect_task_id'); $__params = array(':collect_task_id' => 0); } if ($params['collect_list_check'] !== "") { $__addons[] = array('AND', 'u.collect_list_check=:collect_list_check'); $__params = array_merge($__params, array(':collect_list_check' => $params['collect_list_check'])); } if ($params['collect_list_day'] && is_array($params['collect_list_day'])) { $__addons[] = array('AND', 'u.collect_list_day BETWEEN "' . $params['collect_list_day'][0] . '" AND "' . $params['collect_list_day'][1] . '"'); } elseif ($params['collect_list_day']) { $__addons[] = array('AND', 'u.collect_list_day=:collect_list_day'); $__params = array_merge($__params, array(':collect_list_day' => $params['collect_list_day'])); } if ($params['collect_list_title']) { $__addons[] = array('AND', array('OR LIKE', 'u.collect_list_title', "%{$params[collect_list_title]}%")); } if (is_array($__addons) && is_array($__params)) { $cmd->where($__addons, $__params); } //统计数量 $count = $cmd->queryScalar(); //分页处理 $pages = new CPagination($count); //设置分页大小 $pages->pageSize = $params['pagesize']; //清空前面执行过的SQL $cmd->setText(''); if (isset($params['orderby']) && $params['orderby']) { $cmd->order($params['orderby']); } else { $cmd->order(array('u.collect_list_day DESC')); } $cmd->select('u.*,ct.collect_task_name')->limit($pages->getLimit())->offset($pages->getOffset()); $_r['pages'] = $pages; $_r['rows'] = $cmd->queryAll(); //有开启缓存,则把结果添加到缓存中 if ($params['allow_cache'] && isset(Yii::app()->cache)) { $_cache_cache_time = Setting::get_setting_value('COLLECT_MODEL_PAGES_CACHE_TIME'); Yii::app()->cache->add($_cache_key, json_encode($_r), $_cache_cache_time); unset($_cache_cache_time, $_cache_key); } return $_r; }
/** * Displays a particular model. * * @param integer $id * the ID of the model to be displayed */ public function actionView($id) { $content_type = Yii::app()->request->getParam('content_type', 'subscribe'); $count = ImportUserContentModel::model()->getCount($id); $page = new CPagination($count); $page->pageSize = 100; $songs = ImportUserContentModel::model()->getList($id, $page->getLimit(), $page->getOffset()); $this->render('view', array('model' => $this->loadModel($id), 'songs' => $songs, 'page' => $page, 'content_type' => $content_type)); }
/** * Lists all models. */ public function actionIndex() { if (isset($_GET['adminUserEvent'])) { if (isset($_GET['songreport']['date']) && $_GET['songreport']['date'] != "") { $createdTime = $_GET['songreport']['date']; if (strrpos($createdTime, "-")) { $createdTime = explode("-", $createdTime); $fromDate = explode("/", trim($createdTime[0])); $fromDate = $fromDate[2] . "-" . str_pad($fromDate[0], 2, '0', STR_PAD_LEFT) . "-" . str_pad($fromDate[1], 2, '0', STR_PAD_LEFT); $toDate = explode("/", trim($createdTime[1])); $toDate = $toDate[2] . "-" . str_pad($toDate[0], 2, '0', STR_PAD_LEFT) . "-" . str_pad($toDate[1], 2, '0', STR_PAD_LEFT); $this->time = array('from' => $fromDate, 'to' => $toDate); } else { $time = explode("/", trim($_GET['songreport']['date'])); $time = $time[2] . "-" . str_pad($time[0], 2, '0', STR_PAD_LEFT) . "-" . str_pad($time[1], 2, '0', STR_PAD_LEFT); $this->time = array('from' => $time, 'to' => $time); } } else { $fromDate = '2015-10-05'; $toDate = date("Y-m-d"); $this->time = array('from' => $fromDate, 'to' => $toDate); } $userPhone = Formatter::formatPhone($_GET['adminUserEvent']['user_phone']); $first_date = $this->time['from'] . ' 00:00:00'; $end_date = $this->time['to'] . ' 23:59:59'; $count = UserEventModel::model()->countbyUserByTime($userPhone, $first_date, $end_date); $page = new CPagination($count); $page->pageSize = 30; $dataProvider = UserEventModel::model()->getbyUserByTime($userPhone, $page->getLimit(), $page->getOffset(), $first_date, $end_date); $point = $this->getPointByTime($userPhone, $first_date, $end_date); $point = isset($point["result"][0]["total"]) ? $point["result"][0]["total"] : 0; //export if (isset($_GET['Export']) && $_GET['Export'] == 'Export') { $this->layout = false; header('Content-type: application/vnd.ms-excel'); header("Content-Disposition: attachment; filename=diem_thue_bao_" . $userPhone . "_" . $this->time['from'] . "_den_" . $this->time['to'] . ".xls"); header("Pragma: no-cache"); header("Expires: 0"); $dataProvider = $this->getbyUserByTime($userPhone, $first_date, $end_date); $this->render('_export_user_event', array('point' => $point, 'dataProvider' => $dataProvider, 'first_date' => $first_date, 'end_date' => $end_date)); exit; } } $this->render('index', array('dataProvider' => $dataProvider, 'point' => $point, 'page' => $page)); }