<?php namespace App\Http\Controllers\Api; use App\Command\Log; use App\Models\Article; use Illuminate\Http\Request; class ArticleController extends BaseController { public function getList(Request $request) { $page = $request->page ?? 1; $limit = $request->limit ?? 10; $cat_id = $request->cat_id ?? 0; $where = ['is_show' => 1]; if ($cat_id) { $where['cat_id'] = $cat_id; } $sql = Article::where($where); $data = [ 'total' => $sql->count(), 'total_page' => ceil($sql->count() / $limit), 'list' => [] ]; $listData = $sql->offset(($page - 1) * $limit)->limit($limit)->orderBy('created_at', 'DESC')->get(); if ($listData->toArray()) { foreach ($listData as $item) { $data['list'][] = [ 'id' => $item->id, 'title' => $item->title ?? '', 'brief' => $item->brief ?? '', 'cover' => $item->cover ? env('IMAGE_URL') . $item->cover : '', 'content' => $item->content, 'created_at' => $item->created_at ? date("Y-m-d H:i:s", strtotime($item->created_at)) : '', ]; } } return $this->JsonResponse($data); } public function getDetail(Request $request) { $aid = $request->aid ?? null; $aObj = Article::find($aid); if (!$aObj) { return $this->JsonResponse('', '参数错误', 201); } $data = [ 'id' => $aid, 'title' => $aObj->title, 'brief' => $aObj->brief ?? '', 'content' => $aObj->content, 'created_at' => $aObj->created_at ? date("Y-m-d H:i:s", strtotime($aObj->created_at)) : '', ]; return $this->JsonResponse($data); } }