43 lines
1.2 KiB
PHP
43 lines
1.2 KiB
PHP
<?php
|
|
/**
|
|
* Author: cfn <cfn@leapy.cn>
|
|
*/
|
|
|
|
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)
|
|
]);
|
|
}
|
|
} |