1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- <?php
- /**
- * Created by PhpStorm.
- * User: Administrator
- * Date: 2019-06-15
- * Time: 11:16
- */
- namespace App\Repositories;
- use App\Models\Category;
- use App\Models\CategoryTopic;
- class CategoryRepository {
- public function __construct(Category $category,CategoryTopic $categoryTopic) {
- $this->category = $category;
- $this->categoryTopic = $categoryTopic;
- }
- //列表
- public function lists($request)
- {
- $where = [];
- if(isset($request['is_suggest']) && $request['is_suggest'] == 1){
- $where [] = ['is_suggest', 1];
- $data = [];
- }else{
- $where [] = ['is_open', 1];
- $data = [
- [
- 'id' => -2,
- 'name' => '热门',
- 'img' => config('customer.category_hot_img')
- ],
- [
- 'id' => -1,
- 'name' => '我的话题',
- 'img' => config('customer.category_my_img')
- ]
- ];
- }
- $categories = $this->category->select('id', 'name', 'img')->where($where)->orderBy('sort', 'asc')->limit(50)->get()->toArray();
- return array_merge($data, $categories);
- }
- //获取多个话题
- public function getTopics($ids){
- $ids = explode(',',$ids);
- return $this->categoryTopic
- ->leftJoin('topic', 'category_topic.topic_id', '=', 'topic.id')
- ->where('topic.is_suggest',1)
- ->whereIn('category_topic.category_id',$ids)
- ->select('topic.id','topic.name','topic.is_suggest')
- ->groupBy('topic.id')
- ->get();
- }
- }
|