From f598cc81570763493fd1d67988104379d4c2c5e3 Mon Sep 17 00:00:00 2001 From: commie Date: Mon, 2 Mar 2026 15:59:46 +0800 Subject: [PATCH] 17 --- app/api/controller/ArticleController.php | 30 +++++++++++++++++-- app/api/controller/BaseController.php | 2 ++ app/model/Archives.php | 6 ++-- .../app/controller/ArchivesController.php | 14 +-------- 4 files changed, 34 insertions(+), 18 deletions(-) diff --git a/app/api/controller/ArticleController.php b/app/api/controller/ArticleController.php index 75c818f..d3ab37c 100755 --- a/app/api/controller/ArticleController.php +++ b/app/api/controller/ArticleController.php @@ -13,6 +13,7 @@ class ArticleController extends BaseController{ public $noNeedLogin = ['*']; /** * 列表 + * @Apidoc\Method("GET") * @Apidoc\Query("category_id", type="int", require=true, desc="分类ID",default=10) * @Apidoc\Query("page", type="int", require=true, desc="页码",default=1) * @Apidoc\Query("limit", type="int", require=true, desc="分页大小",default=10) @@ -34,9 +35,9 @@ class ArticleController extends BaseController{ $list->each(function($item)use($user_id){ if(!$user_id){ $item->is_read = 0; + }else{ + $item->is_read = cache('article_read_'.$item->id.'_'.$user_id)?:0; } - $item->is_read = cache('article_read_'.$item->id.'_'.$user_id)?:0; - return $item; }); return $this->success(__('successful'),$list->toArray()); @@ -44,6 +45,7 @@ class ArticleController extends BaseController{ } /** * faq + * @Apidoc\method("GET") * @Apidoc\Query("page", type="int", require=true, desc="页码",default=1) * @Apidoc\Query("limit", type="int", require=true, desc="分页大小",default=10) */ @@ -60,6 +62,7 @@ class ArticleController extends BaseController{ } /** * 详情 + * @Apidoc\Method("GET") * @Apidoc\Query("id", type="int", require=true, desc="ID") */ public function detail(){ @@ -84,8 +87,31 @@ class ArticleController extends BaseController{ return $this->error(__("Article does not exist")); } } + /** + * 获取最新公告 + * @Apidoc\Method("GET") + */ + public function last_notie(){ + /** @var ArchivesModel $vo */ + $vo = ArchivesModel::where('type','article')->where('status','normal')->order('id','desc')->find(); + if($vo) { + $addon = \app\model\Content::where('id', $vo->id)->find()->toArray(); + if ($addon) { + $vo->setAddonData($addon); + } + try { + $user_id = \support\Jwt\JwtToken::getCurrentId(); + cache('article_read_'.$vo->id.'_'.$user_id,1); + } catch (\Throwable $th) { + } + return $this->success(__('successful'),$vo->toArray()); + }else{ + return $this->success(__("successful"),[]); + } + } /** * 单页详情 + * @Apidoc\Method("GET") * @Apidoc\Query("id", type="int", require=true, desc="ID") * @Apidoc\Query("name", type="string", require=true, desc="二选1") */ diff --git a/app/api/controller/BaseController.php b/app/api/controller/BaseController.php index 5bda233..1f6cc7f 100755 --- a/app/api/controller/BaseController.php +++ b/app/api/controller/BaseController.php @@ -107,6 +107,8 @@ class BaseController /** * @Apidoc\Title("上传") * @Apidoc\Method("POST") + * @Apidoc\NotParse() + * @Apidoc\NotDebug() */ function upload(Request $request,$return = false) { diff --git a/app/model/Archives.php b/app/model/Archives.php index 83f476d..b9bfda1 100755 --- a/app/model/Archives.php +++ b/app/model/Archives.php @@ -42,9 +42,9 @@ class Archives extends Base Db::name('content')->where('id',$row->id)->update($values); } } - public static function onAfterDelete($row) - { - Db::name('content')->where('id',$row->id)->delete(); + public static function onAfterDelete($row){ + //删除副表 + Db::name('content')->where("id", $row['id'])->delete(); } /** * 批量设置数据 diff --git a/plugin/admin/app/controller/ArchivesController.php b/plugin/admin/app/controller/ArchivesController.php index 317a347..40c88df 100755 --- a/plugin/admin/app/controller/ArchivesController.php +++ b/plugin/admin/app/controller/ArchivesController.php @@ -142,19 +142,7 @@ class ArchivesController extends Crud ]); } - /** - * 销毁 - * @param string $ids - */ - public function delete(Request $request):Response - { - $ids = $request->get('ids'); - \app\model\Archives::event('after_delete', function ($row) { - //删除副表 - Db::name('content')->where("id", $row['id'])->delete(); - }); - return parent::delete($request); - } + /** * 加入标签 * @param string $ids