*/ namespace App\Listener; use App\Event\LogEvent; use App\Model\Account; use App\Model\AccountLog; use App\Model\Menu; use App\Service\Com; use App\Utils\Ip; use Hyperf\Event\Contract\ListenerInterface; class LogHandleListener implements ListenerInterface { public function listen(): array { return [ LogEvent::class, ]; } public function process(object $event): void { AccountLog::loginRecord([ 'account_type' => $event->data['account_type'], 'belong_id' => $event->data['belong_id'], 'account_id' => $event->data['account_id'], 'username' => $event->data['username'], 'create_time' => date("Y-m-d H:i:s"), 'ua' => Ip::ua(), 'ip' => Ip::ip(), 'flag' => "login", 'title' => "账号登录", 'method' => "POST", 'code' => 0, 'request' => json_encode($event->request, JSON_UNESCAPED_UNICODE), 'response' => json_encode(['code' => 0, 'msg' => 'success', 'data' => $event->response], JSON_UNESCAPED_UNICODE) ]); } }