/**
  * @inheritdoc
  */
 public function getDetail()
 {
     $searchModel = new AuditTrailSearch();
     $params = \Yii::$app->request->getQueryParams();
     $params['AuditTrailSearch']['entry_id'] = $params['id'];
     $dataProvider = $searchModel->search($params);
     return \Yii::$app->view->render('panels/trail/detail', ['panel' => $this, 'dataProvider' => $dataProvider, 'searchModel' => $searchModel]);
 }
<?php

use bedezign\yii2\audit\models\AuditTrailSearch;
use yii\db\BaseActiveRecord;
use yii\grid\GridView;
use yii\web\View;
use yii\widgets\Pjax;
/**
 * @var View $this
 * @var BaseActiveRecord $model
 * @var yii\bootstrap\ActiveForm $form
 * @var array $params
 */
$params = !empty($params) ? $params : Yii::$app->request->get();
$auditTrailSearch = new AuditTrailSearch();
$auditTrailDataProvider = $auditTrailSearch->search($params, $model->getAuditTrails());
$auditTrailDataProvider->pagination = ['pageSize' => 20, 'pageParam' => 'page-auditTrails'];
$auditTrailDataProvider->sort = ['defaultOrder' => ['id' => SORT_DESC]];
Pjax::begin(['id' => 'pjax-AuditTrails', 'enableReplaceState' => false, 'linkSelector' => '#pjax-AuditTrails ul.pagination a, th a']);
echo '<div class="table-responsive">' . GridView::widget(['layout' => '{summary}{pager}<br/>{items}{pager}', 'dataProvider' => $auditTrailDataProvider, 'filterModel' => $auditTrailSearch, 'columns' => [['attribute' => 'user_id'], ['attribute' => 'audit_id'], 'action', ['attribute' => 'model'], 'model_id', 'field', 'old_value:ntext', 'new_value:ntext', 'stamp']]) . '</div>';
?>

<?php 
// row grouping
ob_start();
?>
    <script>
        var gridview_id = "#pjax-AuditTrails .grid-view"; // specific gridview
        var columns = [1, 2]; // index column that will grouping, (user_id, audit_id)

        var column_data = [];
 /**
  * Lists all AuditTrail models.
  * @return mixed
  */
 public function actionIndex()
 {
     $searchModel = new AuditTrailSearch();
     $dataProvider = $searchModel->search(Yii::$app->request->get());
     return $this->render('index', ['dataProvider' => $dataProvider, 'searchModel' => $searchModel]);
 }
 /**
  * History lists all Preferences models.
  * @return mixed
  */
 public function actionHistory()
 {
     $searchModel = new AuditTrailSearch();
     $searchFilter = ['AuditTrailSearch' => ['action' => 'DELETE', 'model' => 'common\\populac\\models\\Preferences']];
     $dataProvider = $searchModel->search(\yii\helpers\ArrayHelper::merge(Yii::$app->request->get(), $searchFilter));
     //$message = "<ol>恢复操作指引<li><删除内容>中输入内容筛选</li><li>点击复选框选中需要恢复的记录</li><li>点击<恢复记录>按钮</li></ol>";
     //Yii::$app->session->setFlash('info', $message);
     return $this->render('history', ['dataProvider' => $dataProvider, 'searchModel' => $searchModel]);
 }
Beispiel #5
0
 /**
  * History lists all Event models.
  * @return mixed
  */
 public function actionHistory()
 {
     /*$auditdata = AuditTrailSearch::find()
       ->select(['entry_id', 'model_id', 'user_id', 'created', 'old_value'])
       ->where([
       'action' => 'DELETE',
       'model' => 'backend\models\Event',
       ])
       ->andFilterWhere(['>', 'old_value', "''"])
       ->orderBy(['model_id' => SORT_DESC])
       ->all();*/
     //        $historyData = \yii\helpers\ArrayHelper::map($auditdata, 'model_id', 'old_value');
     //        \yii\helpers\VarDumper::dump($historyData);
     $searchModel = new AuditTrailSearch();
     $searchFilter = ['AuditTrailSearch' => ['action' => 'DELETE', 'model' => 'backend\\models\\Event']];
     $dataProvider = $searchModel->search(\yii\helpers\ArrayHelper::merge(Yii::$app->request->get(), $searchFilter));
     //var_dump(Yii::$app->request->get());
     //\yii\helpers\VarDumper::dump($searchModel);
     $message = "<ol>恢复操作指引<li><删除内容>中输入内容筛选</li><li>点击复选框选中需要恢复的记录</li><li>点击<恢复记录>按钮</li></ol>";
     Yii::$app->session->setFlash('info', $message);
     return $this->render('history', ['dataProvider' => $dataProvider, 'searchModel' => $searchModel]);
 }
use yii\web\View;
use yii\widgets\Pjax;
/**
 * @var View $this
 * @var bool $filter
 * @var array $params
 * @var ActiveQuery $query
 * @var array $columns
 */
$params = isset($params) ? $params : Yii::$app->request->get();
$query = isset($query) ? $query : null;
$columns = isset($columns) ? $columns : [];
$filter = isset($filter) ? $filter : true;
$this->registerAssetBundle(AuditAsset::className());
$auditTrailSearch = new AuditTrailSearch();
$auditTrailDataProvider = $auditTrailSearch->search($params, $query);
$auditTrailDataProvider->pagination = ['pageSize' => 20, 'pageParam' => 'page-auditTrails'];
$auditTrailDataProvider->sort = ['defaultOrder' => ['id' => SORT_DESC]];
$_columns = [];
if (empty($columns) || in_array('user_id', $columns)) {
    $_columns[] = ['attribute' => 'user_id', 'value' => function ($data) {
        return Audit::getInstance()->getUserIdentifier($data->user_id);
    }, 'format' => 'raw'];
}
if (empty($columns) || in_array('entry_id', $columns)) {
    $_columns[] = ['attribute' => 'entry_id', 'value' => function ($model) {
        /** @var AuditTrail $model */
        if (Access::checkAccess()) {
            return Html::a($model->entry_id, ['/audit/entry/view', 'id' => $model->entry_id]);
        }
        return $model->entry_id;