Initial commit,修正

This commit is contained in:
2025-07-13 19:37:38 +08:00
parent 38ce288e27
commit 65bbd06981
12384 changed files with 3985464 additions and 8 deletions
+46
View File
@@ -0,0 +1,46 @@
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
use mdm\admin\models\Menu;
use yii\helpers\Json;
use mdm\admin\AutocompleteAsset;
/* @var $this yii\web\View */
/* @var $model mdm\admin\models\Menu */
/* @var $form yii\widgets\ActiveForm */
AutocompleteAsset::register($this);
$opts = Json::htmlEncode([
'menus' => Menu::getMenuSource(),
'routes' => Menu::getSavedRoutes(),
]);
$this->registerJs("var _opts = $opts;");
$this->registerJs($this->render('_script.js'));
?>
<div class="menu-form">
<?php $form = ActiveForm::begin(); ?>
<?= Html::activeHiddenInput($model, 'parent', ['id' => 'parent_id']); ?>
<div class="row">
<div class="col-sm-6">
<?= $form->field($model, 'name')->textInput(['maxlength' => 128]) ?>
<?= $form->field($model, 'parent_name')->textInput(['id' => 'parent_name']) ?>
<?= $form->field($model, 'route')->textInput(['id' => 'route']) ?>
</div>
<div class="col-sm-6">
<?= $form->field($model, 'order')->input('number') ?>
<?= $form->field($model, 'data')->textarea(['rows' => 4]) ?>
</div>
</div>
<div class="form-group">
<?=
Html::submitButton($model->isNewRecord ? Yii::t('rbac-admin', 'Create') : Yii::t('rbac-admin', 'Update'), ['class' => $model->isNewRecord
? 'btn btn-sm btn-primary' : 'btn btn-sm btn-primary'])
?>
</div>
<?php ActiveForm::end(); ?>
</div>
+41
View File
@@ -0,0 +1,41 @@
$('#parent_name').autocomplete({
source: function (request, response) {
var result = [];
var limit = 10;
var term = request.term.toLowerCase();
$.each(_opts.menus, function () {
var menu = this;
if (term == '' || menu.name.toLowerCase().indexOf(term) >= 0 ||
(menu.parent_name && menu.parent_name.toLowerCase().indexOf(term) >= 0) ||
(menu.route && menu.route.toLowerCase().indexOf(term) >= 0)) {
result.push(menu);
limit--;
if (limit <= 0) {
return false;
}
}
});
response(result);
},
focus: function (event, ui) {
$('#parent_name').val(ui.item.name);
return false;
},
select: function (event, ui) {
$('#parent_name').val(ui.item.name);
$('#parent_id').val(ui.item.id);
return false;
},
search: function () {
$('#parent_id').val('');
}
}).autocomplete("instance")._renderItem = function (ul, item) {
return $("<li>")
.append($('<a>').append($('<b>').text(item.name)).append('<br>')
.append($('<i>').text(item.parent_name + ' | ' + item.route)))
.appendTo(ul);
};
$('#route').autocomplete({
source: _opts.routes,
});
+37
View File
@@ -0,0 +1,37 @@
<?php
use yii\helpers\Html;
use yii\widgets\ActiveForm;
/**
* @var yii\web\View $this
* @var mdm\admin\models\searchs\Menu $model
* @var yii\widgets\ActiveForm $form
*/
?>
<div class="menu-search">
<?php $form = ActiveForm::begin([
'action' => ['index'],
'method' => 'get',
]); ?>
<?= $form->field($model, 'id') ?>
<?= $form->field($model, 'name') ?>
<?= $form->field($model, 'parent') ?>
<?= $form->field($model, 'route') ?>
<?= $form->field($model, 'data') ?>
<div class="form-group">
<?= Html::submitButton(Yii::t('rbac-admin', 'Search'), ['class' => 'btn btn-primary']) ?>
<?= Html::resetButton(Yii::t('rbac-admin', 'Reset'), ['class' => 'btn btn-default']) ?>
</div>
<?php ActiveForm::end(); ?>
</div>
+25
View File
@@ -0,0 +1,25 @@
<?php
use yii\helpers\Html;
/* @var $this yii\web\View */
/* @var $model mdm\admin\models\Menu */
$this->title = Yii::t('rbac-admin', 'Create Menu');
$this->params['breadcrumbs'][] = ['label' => Yii::t('rbac-admin', 'Menus'), 'url' => ['index']];
$this->params['breadcrumbs'][] = $this->title;
?>
<div class="wrapper wrapper-content">
<div class="ibox-content">
<h1><?= Html::encode($this->title) ?></h1>
<?=
$this->render('_form', [
'model' => $model,
])
?>
</div>
</div>
+87
View File
@@ -0,0 +1,87 @@
<?php
use yii\helpers\Html;
use yii\grid\GridView;
use yii\widgets\Pjax;
/* @var $this yii\web\View */
/* @var $dataProvider yii\data\ActiveDataProvider */
/* @var $searchModel mdm\admin\models\searchs\Menu */
$this->title = Yii::t('rbac-admin', 'Menus');
$this->params['breadcrumbs'][] = $this->title;
?>
<div class="wrapper wrapper-content">
<div class="ibox-content">
<h1><?= Html::encode($this->title) ?></h1>
<?php // echo $this->render('_search', ['model' => $searchModel]); ?>
<p>
<?= Html::a(Yii::t('rbac-admin', '创建菜单'), ['create'], ['class' => 'btn btn-info btn-sm']) ?>
</p>
<?php Pjax::begin(); ?>
<?=
GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
/*'options' => ['class' => 'table-responsive'],
'tableOptions' => ['class' => 'table table-striped table_base'],*/
'layout' => '{items}{summary}{pager}',
'columns' => [
['class' => 'yii\grid\SerialColumn'],
'name',
[
'attribute' => 'menuParent.name',
'filter' => Html::activeTextInput($searchModel, 'parent_name', [
'class' => 'form-control', 'id' => null
]),
'label' => Yii::t('rbac-admin', 'Parent'),
],
'route',
'order',
[
'class' => 'yii\grid\ActionColumn',
'header' => '操作',
'options' => ['width' => '100px;'],
'template' => '{view} {update} {delete}',
'buttons' => [
'view' => function ($url, $model) {
return Html::a('<i class="fa fa-edit">查看</i>', $url, [
'title' => Yii::t('app', 'view'),
'class' => 'del btn btn-primary btn-xs',
]);
},
'update' => function ($url, $model) {
return Html::a('<i class="fa fa-unlock-alt">更新</i>', $url, [
'title' => Yii::t('app', 'update'),
'class' => 'del btn btn-success btn-xs',
]);
},
'delete' => function ($url, $model) {
return Html::a('<i class="fa fa-close">删除</i>', $url, [
'title' => Yii::t('app', 'delete'),
'class' => 'del btn btn-default btn-xs',
]);
}
],
/*'urlCreator' => function ($action, $model, $key, $index) {
if ($action === 'view') {
return ['view', 'id' => $model->id];
} else if ($action === 'update') {
return ['update', 'id' => $model->id];
} else if ($action === 'delete') {
return ['delete', 'id' => $model->id];
}
}*/
],
],
]);
?>
<?php Pjax::end(); ?>
</div>
</div>
+25
View File
@@ -0,0 +1,25 @@
<?php
use yii\helpers\Html;
/* @var $this yii\web\View */
/* @var $model mdm\admin\models\Menu */
$this->title = Yii::t('rbac-admin', 'Update Menu') . ': ' . ' ' . $model->name;
$this->params['breadcrumbs'][] = ['label' => Yii::t('rbac-admin', 'Menus'), 'url' => ['index']];
$this->params['breadcrumbs'][] = ['label' => $model->name, 'url' => ['view', 'id' => $model->id]];
$this->params['breadcrumbs'][] = Yii::t('rbac-admin', 'Update');
?>
<div class="wrapper wrapper-content">
<div class="ibox-content">
<h1><?= Html::encode($this->title) ?></h1>
<?=
$this->render('_form', [
'model' => $model,
])
?>
</div>
</div>
+44
View File
@@ -0,0 +1,44 @@
<?php
use yii\helpers\Html;
use yii\widgets\DetailView;
/* @var $this yii\web\View */
/* @var $model mdm\admin\models\Menu */
$this->title = $model->name;
$this->params['breadcrumbs'][] = ['label' => Yii::t('rbac-admin', 'Menus'), 'url' => ['index']];
$this->params['breadcrumbs'][] = $this->title;
?>
<div class="wrapper wrapper-content">
<div class="ibox-content">
<h1><?= Html::encode($this->title) ?></h1>
<p>
<?= Html::a(Yii::t('rbac-admin', 'Update'), ['update', 'id' => $model->id], ['class' => 'btn btn-sm btn-primary']) ?>
<?=
Html::a(Yii::t('rbac-admin', 'Delete'), ['delete', 'id' => $model->id], [
'class' => 'btn btn-sm btn-danger',
'data' => [
'confirm' => 'Are you sure you want to delete this item?',
'method' => 'post',
],
])
?>
</p>
<?=
DetailView::widget([
'model' => $model,
'attributes' => [
'menuParent.name:text:Parent',
'name',
'route',
'order',
],
])
?>
</div>
</div>