From 17a2681977d7d22be295bbcffed7608ab0b70345 Mon Sep 17 00:00:00 2001 From: gongfuxiang Date: Tue, 22 Nov 2022 21:28:15 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=A4=B4=E5=83=8F=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E6=96=B0=E5=A2=9E=E9=92=A9=E5=AD=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/service/UserService.php | 49 +++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/app/service/UserService.php b/app/service/UserService.php index 64fff0946..1f790947d 100755 --- a/app/service/UserService.php +++ b/app/service/UserService.php @@ -700,6 +700,23 @@ class UserService return DataReturn($error, -2); } + // 头像处理前钩子 + $hook_name = 'plugins_service_user_avatar_upload_begin'; + $ret = EventReturnHandle(MyEventTrigger($hook_name, [ + 'hook_name' => $hook_name, + 'is_backend' => true, + 'user_id' => $params['user']['id'], + 'params' => $params, + 'files' => $_FILES, + 'root_path' => $root_path, + 'img_path' => $img_path, + 'date' => $date, + ])); + if(isset($ret['code']) && $ret['code'] != 0) + { + return $ret; + } + // 是否指定裁剪信息 $original_dir = $root_path.$img_path.'original'.$date; if(!empty($params['img_width']) && !empty($params['img_height']) && isset($params['img_x']) && isset($params['img_y'])) @@ -728,6 +745,24 @@ class UserService } MyCache($cache_key, $cache_value, 3600); + // 头像处理后钩子 + $hook_name = 'plugins_service_user_avatar_upload_end'; + $ret = EventReturnHandle(MyEventTrigger($hook_name, [ + 'hook_name' => $hook_name, + 'is_backend' => true, + 'user_id' => $params['user']['id'], + 'params' => $params, + 'files' => $_FILES, + 'root_path' => $root_path, + 'img_path' => $img_path, + 'date' => $date, + 'avatar' => $avatar, + ])); + if(isset($ret['code']) && $ret['code'] != 0) + { + return $ret; + } + // app则直接返回图片地址 if(APPLICATION == 'app') { @@ -741,6 +776,20 @@ class UserService ]; if(Db::name('User')->where(['id'=>$params['user']['id']])->update($data)) { + // 头像处理成功钩子 + $hook_name = 'plugins_service_user_avatar_upload_success'; + MyEventTrigger($hook_name, [ + 'hook_name' => $hook_name, + 'is_backend' => true, + 'user_id' => $params['user']['id'], + 'params' => $params, + 'files' => $_FILES, + 'root_path' => $root_path, + 'img_path' => $img_path, + 'date' => $date, + 'avatar' => $avatar, + ]); + // web端用户登录纪录处理 self::UserLoginRecord($params['user']['id']); return DataReturn(MyLang('common.upload_success'), 0);