1
0
Files
lkafu/app/Admin/Controllers/IdentityController.php
2020-08-06 14:45:56 +08:00

112 lines
4.9 KiB
PHP

<?php
namespace App\Admin\Controllers;
use Encore\Admin\Controllers\AdminController;
use Encore\Admin\Form;
use Encore\Admin\Grid;
use RuLong\Identity\Models\Identity;
class IdentityController extends AdminController
{
protected $title = '用户身份配置';
protected function grid()
{
$grid = new Grid(new Identity);
$grid->disableCreateButton();
$grid->disableFilter();
$grid->disableExport();
$grid->disableRowSelector();
$grid->tools(function ($tools) {
$tools->batch(function ($batch) {
$batch->disableDelete();
});
});
$grid->actions(function ($actions) {
$actions->disableDelete();
$actions->disableView();
});
$grid->fixColumns(0, 0);
$grid->model()->orderBy('id', 'asc');
$grid->column('id', '身份编号')->sortable();
$grid->column('title', '级别');
$grid->column('name', '等级');
$grid->column('直推会员(奇)')->display(function () {
return ($this->configs['direct_odd'] ?? 0) . '%';
});
$grid->column('直推会员(偶)')->display(function () {
return ($this->configs['direct_even'] ?? 0) . '%';
});
$grid->column('一级卡酬')->display(function () {
return '&yen; ' . ($this->configs['direct_card'] ?? 0) . ' 元';
});
$grid->column('二级卡酬')->display(function () {
return '&yen; ' . ($this->configs['indirect_card'] ?? 0) . ' 元';
});
$grid->column('团队卡酬')->display(function () {
return '&yen; ' . ($this->configs['team_card'] ?? 0) . ' 元';
});
$grid->column('直推代理')->display(function () {
return ($this->configs['direct_agency'] ?? 0) . '%';
});
$grid->column('间推代理')->display(function () {
return ($this->configs['indirect_agency'] ?? 0) . '%';
});
$grid->column('100万业绩奖')->display(function () {
return ($this->configs['perf_100'] ?? 0) . '%';
});
$grid->column('500万业绩奖')->display(function () {
return ($this->configs['perf_500'] ?? 0) . '%';
});
$grid->column('1000万业绩奖')->display(function () {
return ($this->configs['perf_1000'] ?? 0) . '%';
});
$grid->column('城市分红')->display(function () {
return ($this->configs['orderPerf'] ?? 0) . '%';
});
$grid->column('remark', '说明');
$grid->column('updated_at', '修改时间');
return $grid;
}
protected function form()
{
$form = new Form(new Identity);
$form->display('id', 'ID');
$form->text('title', '级别')->rules('required');
$form->text('name', '等级')->rules('required');
$form->embeds('configs', '佣金设定', function ($form) {
$form->rate('direct_odd', '直推会员(奇)')->value($this->configs['direct_odd'] ?? 0)->required()->setWidth(1, 3)->default(0);
$form->rate('direct_even', '直推会员(偶)')->value($this->configs['direct_even'] ?? 0)->required()->setWidth(1, 3)->default(0);
$form->currency('direct_card', '一级卡酬')->symbol('¥')->value($this->configs['direct_card'] ?? 0)->required()->setWidth(1, 3)->default(0);
$form->currency('indirect_card', '二级卡酬')->symbol('¥')->value($this->configs['indirect_card'] ?? 0)->required()->setWidth(1, 3)->default(0);
$form->currency('team_card', '团队卡酬')->symbol('¥')->value($this->configs['team_card'] ?? 0)->required()->setWidth(1, 3)->default(0);
$form->rate('direct_agency', '直推代理')->value($this->configs['direct_agency'] ?? 0)->required()->setWidth(1, 3)->default(0);
$form->rate('indirect_agency', '间推代理')->value($this->configs['indirect_agency'] ?? 0)->required()->setWidth(1, 3)->default(0);
$form->rate('perf_100', '100万业绩奖')->value($this->configs['perf_100'] ?? 0)->required()->setWidth(1, 3)->default(0);
$form->rate('perf_500', '500万业绩奖')->value($this->configs['perf_500'] ?? 0)->required()->setWidth(1, 3)->default(0);
$form->rate('perf_1000', '1000万业绩奖')->value($this->configs['perf_1000'] ?? 0)->required()->setWidth(1, 3)->default(0);
$form->rate('orderPerf', '城市分红')->value($this->configs['orderPerf'] ?? 0)->required()->setWidth(1, 3)->default(0);
});
$form->textarea('remark', '说明')->rules('required');
$form->tools(function (Form\Tools $tools) {
$tools->disableDelete();
$tools->disableView();
});
$form->footer(function ($footer) {
$footer->disableReset();
$footer->disableViewCheck();
$footer->disableCreatingCheck();
});
return $form;
}
}