articleService = $articleService; $this->articleCategoryService = $articleCategoryService; $this->adService = $adService; $this->navigationService = $navigationService; $this->hotWordService = $hotWordService; } public function index(Request $request, $id = '57', $num = '8', $focus = '3', $recommend = '4', $other_num = '5') { $key = $request->input('key'); $categorys = $this->articleCategoryService->getChildCategorys($id, $num); if (!$categorys->isEmpty()) { $search_id = $categorys[0]->id; $search_where = []; $search_where['id'] = $search_id; if ($id != '1') { $search_where['parent_id'] = $id; } if ($num != '8') { $search_where['num'] = $num; } if ($focus != '3') { $search_where['focus'] = $focus; } if ($recommend != '4') { $search_where['recommend'] = $recommend; } if ($other_num != '5') { $search_where['other_num'] = $other_num; } return redirect()->route('news.list', $search_where); } else { $rst = $this->articleService->list($key, '', 10); } $focus_articles = $this->articleService->getPropertyArticles($focus, $other_num); //热门资讯 $recommend_articles = $this->articleService->getPropertyArticles($recommend, $other_num); //推荐资讯 //顶部广告位 $ad_data = [ 'theme' => 'default', 'org' => 'Home', 'alias' => 'AIX_news_index_top', 'num' => '1', ]; $top_ads = $this->adService->getAds($ad_data); $return_data = [ 'articles' => $rst, 'categorys' => $categorys, 'focus_articles' => $focus_articles, 'recommend_articles' => $recommend_articles, 'key' => $key, 'top_ads' => $top_ads, ]; return view('app.content.article.index', $return_data); } public function list(Request $request, $id, $parent_id = '1', $num = '8', $focus = '3', $recommend = '4', $other_num = '5') { $key = $request->input('key'); $info = $this->articleCategoryService->getInfo($id); $lists = $this->articleService->list($key, $id, '10'); $categorys = $this->articleCategoryService->getChildCategorys($info['parent_id'], $num); $categorys_child = $this->articleCategoryService->getChildCategorys($id, 10); $focus_articles = $this->articleService->getPropertyArticles($focus, $other_num); //热门资讯 $recommend_articles = $this->articleService->getPropertyArticles($recommend, $other_num); //推荐资讯 $bread = $this->articleCategoryService->getBread($info['id']); //搜索关键字 if ($key) { $this->hotWordService->searchHostWords($key, 4); } //获取后台职场资讯名称 $where = [ 'alias' => 'AIX_top', 'pagealias' => 'AIX_news', 'display' => '1', ]; $topNav = $this->navigationService->getTopNav($where); $now_cate = ''; $article_cate = []; foreach ($categorys as $k => $v) { if ($v->id == $id) { $now_cate = $v->category_name; $article_cate = $v; } } $this->putSeoData('article_cate', $article_cate); //热词 $hotWords = $this->hotWordService->getHotWords(['type' => 4], 'list_order desc,w_hot desc', 10); //热门关键词 $return_data = [ 'articles' => $lists, 'categorys' => $categorys, 'focus_articles' => $focus_articles, 'recommend_articles' => $recommend_articles, 'key' => $key, 'type_id' => $id, 'top_nav' => $topNav, 'now_cate' => $now_cate, 'categorys_child' => $categorys_child, 'bread' => $bread, 'hotwords' => $hotWords, ]; return view('app.content.article.list', $return_data); } public function show($id, $parent_id = '1', $num = '8', $focus = '3', $recommend = '4', $other_num = '5') { $categorys = $this->articleCategoryService->getChildCategorys($parent_id, $num); $focus_articles = $this->articleService->getPropertyArticles($focus, $other_num); //热门资讯 $recommend_articles = $this->articleService->getPropertyArticles($recommend, $other_num); //推荐资讯 $article_info = $this->articleService->getArticleInfo($id); if (!$article_info) { $back_url = \Illuminate\Support\Facades\URL::previous(); return $this->showMessage('资讯不存在', $back_url, true, '上一页', '3'); } $this->putSeoData('article', $article_info); $return_data = [ 'categorys' => $categorys, 'focus_articles' => $focus_articles, 'recommend_articles' => $recommend_articles, 'type_id' => $id, 'info' => $article_info, 'parent_id' => $parent_id, ]; return view('app.content.article.show', $return_data); } public function click($id) { $rst = $this->articleService->incrementData(['id' => $id], 1, 'click'); $data = ['status' => 0]; if ($rst) { $data = ['status' => 1]; } return response()->json($data); } }