NewsController.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. namespace App\Http\Controllers\Api;
  3. use App\Http\Controllers\FrontController;
  4. use App\Models\NewsModels\News;
  5. use App\Servers\Common\CommonServer;
  6. class NewsController extends FrontController
  7. {
  8. public function __construct()
  9. {
  10. parent::__construct();
  11. }
  12. /**
  13. * 获取新闻列表
  14. * @return \Illuminate\Http\JsonResponse
  15. */
  16. function getList(){
  17. //查询数据条件
  18. $where = [['is_del',0]];
  19. //获取数据
  20. $list = News::where($where)
  21. ->select(['id','image','cn_title','en_title','created_at'])
  22. ->orderBy('id','desc')
  23. ->paginate(10);
  24. $cn_data = [];
  25. $en_data = [];
  26. foreach ($list as $value){
  27. $cn['title'] = $value['cn_title'];
  28. $cn['id'] = $value['id'];
  29. $cn['image'] = $value['image'];
  30. $cn['created_at'] = date('Y年m月d日',strtotime($value['created_at']));
  31. $en['title'] = $value['en_title'];
  32. $en['id'] = $value['id'];
  33. $en['image'] = $value['image'];
  34. $en['created_at'] = date('Y年m月d日',strtotime($value['created_at']));
  35. $cn_data[] = $cn;
  36. $en_data[] = $en;
  37. }
  38. return $this->apiResponseSuccess('获取列表成功', [
  39. 'cn' => $cn_data,
  40. 'en' => $en_data,
  41. 'total' => $list->total(),
  42. 'limit' => 10,
  43. ]);
  44. }
  45. /**
  46. * 获取新闻详情
  47. * @return \Illuminate\Http\JsonResponse
  48. */
  49. function getInfo(){
  50. $id = CommonServer::creatServer()->filtrationStr('id');//获取需要查询的记录id
  51. if(empty($id)) return $this->apiResponseError('请选择正确新闻');
  52. //查询数据
  53. $info = News::where('id',$id)->first();
  54. if(empty($info)) return $this->apiResponseError('新闻不存在');
  55. $data= [];
  56. $data['cn']['title'] = $info['cn_title'];
  57. $data['cn']['content'] = $info['cn_content'];
  58. $data['en']['title'] = $info['en_title'];
  59. $data['en']['content'] = $info['en_content'];
  60. $data['created_at'] = date('Y.m.d',strtotime($info['created_at']));
  61. return $this->apiResponseSuccess('获取成功', $data);
  62. }
  63. }