From 52f245d176749ad6acdc02c1cc884b57111684ab Mon Sep 17 00:00:00 2001 From: "zhangf@suq.cn" Date: Thu, 18 Dec 2025 17:22:45 +0800 Subject: [PATCH] =?UTF-8?q?feat(user):=20=E5=A2=9E=E5=8A=A0=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E4=BD=99=E9=A2=9D=E6=A3=80=E6=9F=A5=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 引入UserDao和RequestUtils依赖 - 在构造函数中初始化userDao实例 - 投稿前增加用户余额验证逻辑 - 余额不足时抛出相应异常提示 - 确保用户有足够的点数才能进行投稿操作 --- app/service/user/ApiService.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/service/user/ApiService.php b/app/service/user/ApiService.php index cd92802..2017068 100644 --- a/app/service/user/ApiService.php +++ b/app/service/user/ApiService.php @@ -7,7 +7,9 @@ use app\dao\admin\SelfMediasDao; use app\dao\user\CreationArticleDao; use app\dao\user\CreationArticleReceiveRecordsDao; use plugin\piadmin\app\base\BaseService; +use plugin\piadmin\app\dao\UserDao; use plugin\piadmin\app\exception\ApiException; +use plugin\piadmin\app\utils\RequestUtils; class ApiService extends BaseService { @@ -19,6 +21,7 @@ class ApiService extends BaseService protected $selfMediasDao; protected $creationArticleDao; protected $creationArticleReceiveRecordsDao; + protected $userDao; public function __construct() { @@ -26,6 +29,7 @@ class ApiService extends BaseService $this->selfMediasDao = app()->make(SelfMediasDao::class); $this->creationArticleDao = app()->make(CreationArticleDao::class); $this->creationArticleReceiveRecordsDao = app()->make(CreationArticleReceiveRecordsDao::class); + $this->userDao = app()->make(UserDao::class); } public function receive($params) @@ -38,6 +42,12 @@ class ApiService extends BaseService } else { throw new ApiException('投稿失败'); } + //查用户余额 + $userInfo = RequestUtils::getUserInfo(); + $currentUser = $this->userDao->get($userInfo['id']); + if ($currentUser['balance'] < $media['price_assign']) { + throw new ApiException('投稿点数余额不足'); + } $time_out = 60; $url = $this->url;