From 4556fd657be189019836c338a3e8eda2b11d0671 Mon Sep 17 00:00:00 2001 From: wanghongjun <1445693971@qq,com> Date: Mon, 11 Sep 2023 17:11:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BB=A3=E7=90=86=E4=BF=AE=E6=94=B9=E5=AF=86?= =?UTF-8?q?=E7=A0=81=E5=88=A0=E9=99=A4=E7=99=BB=E9=99=86=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/AdminAgentTeam.php | 5 +++++ app/event.php | 5 ++++- app/event/AgentPasswordChange.php | 13 +++++++++++++ app/listener/LogoutAgent.php | 27 +++++++++++++++++++++++++++ app/listener/LogoutUser.php | 1 - 5 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 app/event/AgentPasswordChange.php create mode 100644 app/listener/LogoutAgent.php diff --git a/app/controller/AdminAgentTeam.php b/app/controller/AdminAgentTeam.php index 3f1970a..e4adb15 100644 --- a/app/controller/AdminAgentTeam.php +++ b/app/controller/AdminAgentTeam.php @@ -4,6 +4,7 @@ declare (strict_types = 1); namespace app\controller; use app\BaseController; +use app\event\AgentPasswordChange; use app\middleware\CheckAdmin; use app\model\AdminDownScoresRecords; use app\model\AdminUpScoresRecords; @@ -13,6 +14,7 @@ use app\validate\Admin; use app\validate\Agent; use think\exception\ValidateException; use think\facade\Db; +use think\facade\Event; use think\facade\Request; class AdminAgentTeam extends BaseController @@ -165,6 +167,9 @@ class AdminAgentTeam extends BaseController if (!$result['status']) throw new ValidateException($result['msg']); + $event = new AgentPasswordChange($param['aid']); + Event::trigger(AgentPasswordChange::class,$event); + return $this->renderSuccess($result['msg']); } catch (ValidateException $validateException) { return $this->renderError($validateException->getMessage()); diff --git a/app/event.php b/app/event.php index 65ba16b..b2354e5 100644 --- a/app/event.php +++ b/app/event.php @@ -12,7 +12,10 @@ return [ 'LogWrite' => [], 'app\event\UserPasswordChange' => [ 'app\listener\LogoutUser', - ] + ], + 'app\event\AgentPasswordChange' => [ + 'app\listener\LogoutAgent', + ], ], 'subscribe' => [ diff --git a/app/event/AgentPasswordChange.php b/app/event/AgentPasswordChange.php new file mode 100644 index 0000000..9596e0c --- /dev/null +++ b/app/event/AgentPasswordChange.php @@ -0,0 +1,13 @@ +aid = $aid; + } +} \ No newline at end of file diff --git a/app/listener/LogoutAgent.php b/app/listener/LogoutAgent.php new file mode 100644 index 0000000..dfdf4ff --- /dev/null +++ b/app/listener/LogoutAgent.php @@ -0,0 +1,27 @@ +aid; + + $agentData = Cache::store('redis')->get('login_agent_user_data'); + if ($agentData) { + $agentData = unserialize($agentData); + if ($agentData['id'] == $aid) { + Cache::store('redis')->delete('login_agent_user_data'); + } + } + } +} \ No newline at end of file diff --git a/app/listener/LogoutUser.php b/app/listener/LogoutUser.php index 9a2a696..cbeb80b 100644 --- a/app/listener/LogoutUser.php +++ b/app/listener/LogoutUser.php @@ -4,7 +4,6 @@ namespace app\listener; use app\event\UserPasswordChange; use think\facade\Cache; -use think\facade\Log; class LogoutUser {