diff --git a/app/controller/AdminUserTeam.php b/app/controller/AdminUserTeam.php index c5c0d7e..efd6325 100644 --- a/app/controller/AdminUserTeam.php +++ b/app/controller/AdminUserTeam.php @@ -4,6 +4,7 @@ declare (strict_types = 1); namespace app\controller; use app\BaseController; +use app\event\UserPasswordChange; use app\middleware\CheckAdmin; use app\model\AdminDownScoresRecords; use app\model\AdminUpScoresRecords; @@ -11,6 +12,7 @@ use app\model\RechargeRecords; use app\model\User; use app\model\WithdrawalRecords; use think\facade\Db; +use think\facade\Event; use think\facade\Request; use think\facade\Session; use app\validate\Admin; @@ -113,6 +115,9 @@ class AdminUserTeam extends BaseController if (!$result['status']) throw new ValidateException($result['msg']); + $event = new UserPasswordChange($param['user_id']); + Event::trigger(UserPasswordChange::class,$event); + return $this->renderSuccess($result['msg']); } catch (ValidateException $validateException) { return $this->renderError($validateException->getMessage()); diff --git a/app/event/UserPasswordChange.php b/app/event/UserPasswordChange.php new file mode 100644 index 0000000..db9dc25 --- /dev/null +++ b/app/event/UserPasswordChange.php @@ -0,0 +1,14 @@ +userId = $userId; + } +} \ No newline at end of file diff --git a/app/listener/LogoutUser.php b/app/listener/LogoutUser.php new file mode 100644 index 0000000..6aad14a --- /dev/null +++ b/app/listener/LogoutUser.php @@ -0,0 +1,24 @@ +userId; + + $userData = Cache::store('redis')->get('login_user_data'); + if ($userData && $userData['id'] == $userId) { + Cache::store('redis')->delete('login_user_data'); + } + } +} \ No newline at end of file diff --git a/config/event.php b/config/event.php new file mode 100644 index 0000000..77d9181 --- /dev/null +++ b/config/event.php @@ -0,0 +1,12 @@ + [ + // ... + 'app\event\UserPasswordChange' => [ + 'app\listener\LogoutUser', + ], + ], +];