增加操作日志记录&&web站点检查
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
|
||||
namespace app\bootstrap;
|
||||
|
||||
use Webman\Bootstrap;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use app\common\audit\AuditBuffer;
|
||||
|
||||
class Audit implements Bootstrap
|
||||
{
|
||||
public static function start($worker)
|
||||
{
|
||||
Model::created(function ($model) {
|
||||
AuditBuffer::instance()->pushModelChange($model->getTable(), $model->getKey(), [], $model->getAttributes());
|
||||
});
|
||||
Model::updated(function ($model) {
|
||||
$dirty = $model->getDirty();
|
||||
if (!$dirty) return;
|
||||
$old = []; $new = [];
|
||||
foreach ($dirty as $k=>$v) {
|
||||
$old[$k] = $model->getOriginal($k);
|
||||
$new[$k] = $model->getAttribute($k);
|
||||
}
|
||||
AuditBuffer::instance()->pushModelChange($model->getTable(), $model->getKey(), $old, $new);
|
||||
});
|
||||
Model::deleted(function ($model) {
|
||||
AuditBuffer::instance()->pushModelChange($model->getTable(), $model->getKey(), $model->getAttributes(), []);
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user