server/app/Listener/LogHandleListener.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)
]);
}
}