diff --git a/app/Endpoint/Api/Http/Resources/ArticleResource.php b/app/Endpoint/Api/Http/Resources/ArticleResource.php index 8ae5cdf1..b8f5d763 100644 --- a/app/Endpoint/Api/Http/Resources/ArticleResource.php +++ b/app/Endpoint/Api/Http/Resources/ArticleResource.php @@ -23,6 +23,7 @@ class ArticleResource extends JsonResource 'points'=> $this->points, 'likes' => $this->likes, 'like_status' => $this->whenLoaded('likesInfo', $this->likesInfo->count() > 0), + 'has_read' => $this->hasRead($request->user()), 'media_type'=> $this->media_type, 'media_content'=> json_decode($this->media_content, true), 'created_at' => $this->created_at->toDateTimeString(), diff --git a/app/Models/Article.php b/app/Models/Article.php index e5c30c1f..39ae1f6b 100644 --- a/app/Models/Article.php +++ b/app/Models/Article.php @@ -25,6 +25,11 @@ class Article extends Model 'is_recommend' => 'boolean', ]; + public function hasRead(User $user) + { + return ArticleLikesLog::where('user_id', $user->id)->where('article_id', $this->id)->whereDate('created_at', now())->exists(); + } + public function category() { return $this->belongsTo(ArticleCategory::class, 'category_id');