123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 |
- <?php
- /**
- * Created by PhpStorm.
- * User: LYY
- * Date: 2020.10.22
- */
- namespace common\models;
- //use yii\db\ActiveRecord;
- class ListNav extends Common
- {
- public function rules()
- {
- return [
- ['list_id', 'in', 'range' => [1, 2, 3, 4]],
- [['sort', 'state', 'information', 'title', 'city', 'news','brand','knowledgelabel', 'url'], 'safe']
- ];
- /**
- * list_id:[
- * 1:pc端首页区域推送位
- * 2:pc端首页资讯栏目推送
- * 3:首页房产资讯下热搜楼盘词
- * 4:首页房产资讯下团购优惠看房团
- * ]
- */
- }
- //+++++++++++++++++++++++++++++++++++++++++++++区域类型推送=============================================================
- //获取推送区域数据列表
- public function getListCity($input)
- {
- $select = [
- 'pfg_list_nav.*',
- 'pfg_category_city.city_name'
- ];
- $query = self::find();
- $query->select($select);
- $query->where(['pfg_list_nav.list_id' => $input['list_id']]);
- $query->leftJoin('pfg_category_city', 'pfg_category_city.id = pfg_list_nav.city');
- $count = $query->count();
- if (!empty($input['page'])) {
- $query->offset(--$input['page'] * $input['limit']);
- }
- if (!empty($input['limit'])) {
- $query->limit($input['limit']);
- }
- $data = $query->orderBy(['pfg_list_nav.state' => SORT_ASC, 'pfg_list_nav.sort' => SORT_DESC])->asArray()->all();
- foreach ($data as &$val) {
- $val['create_at'] = date('Y-m-d H:i:s');
- }
- return ['msg' => '成功', 'count' => $count, 'data' => $data];
- }
- //获取前端区域推送数据
- public function getPcPushCityList($list_id, $limit = null)
- {
- $select = [
- 'pfg_list_nav.*',
- 'pfg_category_city.city_name'
- ];
- $query = self::find();
- $query->select($select);
- $query->where(['pfg_list_nav.list_id' => $list_id, 'pfg_list_nav.state' => 1]);
- $query->leftJoin('pfg_category_city', 'pfg_category_city.id = pfg_list_nav.city');
- if (!empty($limit)) {
- $query->limit($limit);
- }
- $data = $query->orderBy(['pfg_list_nav.sort' => SORT_DESC])->asArray()->all();
- return $data;
- }
- //++++++++++++++++++++++++++++++栏目类型推送========================================================================
- // 获取推送栏目数据列表
- public function getListNews($input)
- {
- $select = [
- 'pfg_list_nav.*',
- 'pfg_category_news.news_name'
- ];
- $query = self::find();
- $query->select($select);
- $query->where(['pfg_list_nav.list_id' => $input['list_id']]);
- $query->leftJoin('pfg_category_news', 'pfg_category_news.id = pfg_list_nav.news');
- $count = $query->count();
- if (!empty($input['page'])) {
- $query->offset(--$input['page'] * $input['limit']);
- }
- if (!empty($input['limit'])) {
- $query->limit($input['limit']);
- }
- $data = $query->orderBy(['pfg_list_nav.state' => SORT_ASC, 'pfg_list_nav.sort' => SORT_DESC])->asArray()->all();
- foreach ($data as &$val) {
- $val['create_at'] = date('Y-m-d H:i:s');
- }
- return ['msg' => '成功', 'count' => $count, 'data' => $data];
- }
- public function getPcListNews($list_id, $limit = null)
- {
- $select = [
- 'pfg_category_news.id',
- 'pfg_category_news.news_name'
- ];
- $query = self::find();
- $query->select($select);
- $query->where(['pfg_list_nav.list_id' => $list_id, 'pfg_list_nav.state' => 1]);
- $query->leftJoin('pfg_category_news', 'pfg_category_news.id = pfg_list_nav.news');
- if (!empty($limit)) {
- $query->limit($limit);
- }
- return $query->orderBy(['pfg_list_nav.sort' => SORT_DESC])->asArray()->all();
- }
- //++++++++++++++++++++++++++++++自定义导航推送信息==================================================================
- public function getListTitle($input)
- {
- $select = [
- '*',
- ];
- $query = self::find();
- $query->select($select);
- $query->where(['list_id' => $input['list_id']]);
- $count = $query->count();
- if (!empty($input['page'])) {
- $query->offset(--$input['page'] * $input['limit']);
- }
- if (!empty($input['limit'])) {
- $query->limit($input['limit']);
- }
- $data = $query->orderBy(['state' => SORT_ASC, 'sort' => SORT_DESC])->asArray()->all();
- foreach ($data as &$val) {
- $val['create_at'] = date('Y-m-d H:i:s');
- }
- return ['msg' => '成功', 'count' => $count, 'data' => $data];
- }
- public function getPcPushTitle($list_id,$limit=null)
- {
- $select = [
- 'title',
- 'url'
- ];
- $query = self::find();
- $query->select($select);
- $query->where(['list_id' => $list_id, 'state' => 1]);
- if (!empty($limit)) {
- $query->limit($limit);
- }
- return $query->orderBy(['sort' => SORT_DESC])->asArray()->all();
- }
- }
|