From f0eed20b0ae39e7913e80afd3d0306b531a56c86 Mon Sep 17 00:00:00 2001 From: toom1996 Date: Thu, 17 Jul 2025 11:37:15 +0800 Subject: [PATCH] update --- app/Model/AppNews.php | 4 +++- app/Rpc/RpcResponse.php | 16 +++++++++++++++- app/Rpc/v1/NewsService.php | 14 +++++++++++--- app/Rpc/v1/WebsiteService.php | 2 +- storage/view/article/view.blade.php | 7 +++++++ 5 files changed, 37 insertions(+), 6 deletions(-) diff --git a/app/Model/AppNews.php b/app/Model/AppNews.php index 514f7bc..1cfed59 100644 --- a/app/Model/AppNews.php +++ b/app/Model/AppNews.php @@ -21,6 +21,8 @@ namespace App\Model; * @property int $is_record * @property string $cover * @property int $is_delete + * @property string $source_url + * @property string $source_platform * @property-read mixed $created_at */ class AppNews extends Model @@ -44,6 +46,6 @@ class AppNews extends Model public function getCreatedAtAttribute($value) { - return date('Y-m-d H:i:s', intval($value)); + return date('Y-m-d', intval($value)); } } diff --git a/app/Rpc/RpcResponse.php b/app/Rpc/RpcResponse.php index a6e306e..7a5e684 100755 --- a/app/Rpc/RpcResponse.php +++ b/app/Rpc/RpcResponse.php @@ -10,6 +10,7 @@ class RpcResponse public array $meta = []; public string $title = ''; public array $pageModule = []; + public array $extra = []; public function setData(array $data) @@ -18,6 +19,12 @@ class RpcResponse return $this; } + public function setExtra($extraKey = '', $value = '') + { + $this->extra[$extraKey] = $value; + return $this; + } + public function setCode(int $code) { $this->code = $code; @@ -32,10 +39,17 @@ class RpcResponse public function send() { - return [ + $resp = [ 'code' => $this->code, 'msg' => $this->msg, 'data' => $this->data, ]; + + if ($this->extra) { + foreach ($this->extra as $key => $item) { + $resp[$key] = $item; + } + } + return $resp; } } \ No newline at end of file diff --git a/app/Rpc/v1/NewsService.php b/app/Rpc/v1/NewsService.php index 8e442d5..916eecc 100755 --- a/app/Rpc/v1/NewsService.php +++ b/app/Rpc/v1/NewsService.php @@ -64,8 +64,8 @@ class NewsService extends BaseService $query->where('platform', $id); } - $query->select(['id']) - ->orderBy('id', 'desc');; + $query->select(['id'])->orderBy('id', 'desc'); + $total = $query->count(); $pagination = $query->paginate($limit, page: $page); $ids = []; foreach ($pagination->items() as $item) { @@ -74,6 +74,14 @@ class NewsService extends BaseService $value = AppNews::query()->whereIn('id', $ids)->orderBy('id', 'desc')->get()->toArray(); - return $this->getResponse()->setData($value)->setCode(0)->send(); + $about = AppNews::formatQuery(['created_at']) + ->where('platform', $id) + ->where('is_delete', 0) + ->select(['title', 'id', 'cover']) + ->limit(10) + ->orderBy('id', 'desc') + ->get() + ->toArray(); + return $this->getResponse()->setExtra('about', $about)->setExtra('total', round($total / $limit))->setData($value)->setCode(0)->send(); } } \ No newline at end of file diff --git a/app/Rpc/v1/WebsiteService.php b/app/Rpc/v1/WebsiteService.php index 0fae69e..a9ae0af 100644 --- a/app/Rpc/v1/WebsiteService.php +++ b/app/Rpc/v1/WebsiteService.php @@ -18,7 +18,7 @@ class WebsiteService extends BaseService */ public function config($host): array { - $query = AppWebsiteConfig::query()->where('app_domain', $host)->where('is_delete', 0)->first()?->toArray(); + $query = AppWebsiteConfig::query()->where('app_domain', 'like' , "%$host%")->where('is_delete', 0)->first()?->toArray(); if (!$query) { return $this->getResponse()->setCode(404)->send(); diff --git a/storage/view/article/view.blade.php b/storage/view/article/view.blade.php index 0a0da25..a341b80 100755 --- a/storage/view/article/view.blade.php +++ b/storage/view/article/view.blade.php @@ -369,6 +369,13 @@ $articleLocation = array_map(fn($case) => [ });