You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
3.2 KiB
94 lines
3.2 KiB
<?php
|
|
|
|
namespace App\Admin\Controllers;
|
|
|
|
use App\Admin\Repositories\LanzuServiceReward;
|
|
use App\Libs\SsdbClient;
|
|
use Dcat\Admin\Form;
|
|
use Dcat\Admin\Grid;
|
|
use Dcat\Admin\Show;
|
|
use Dcat\Admin\Controllers\AdminController;
|
|
|
|
class LanzuServiceRewardController extends AdminController
|
|
{
|
|
/**
|
|
* Make a grid builder.
|
|
*
|
|
* @return Grid
|
|
*/
|
|
protected function grid()
|
|
{
|
|
return Grid::make(new LanzuServiceReward(), function (Grid $grid) {
|
|
$grid->column('first_reward', '首单奖励')->display(function () {
|
|
return $this->set_reward['first_reward'] . ' 元';
|
|
});
|
|
$grid->column('new_user_reward', '站点奖励')->display(function () {
|
|
return $this->set_reward['new_user_reward'] . ' 元';
|
|
});
|
|
$grid->column('flow_reward', '流水奖励')->display(function () {
|
|
$f = $this->set_reward['flow_reward'];
|
|
return $f .= '%';
|
|
});
|
|
$grid->type->using([0 => '-', 1 => '社区']);
|
|
$grid->created_at;
|
|
$grid->updated_at;
|
|
$grid->disableViewButton();
|
|
$grid->disableCreateButton();
|
|
$grid->disableDeleteButton();
|
|
$grid->disableFilterButton();
|
|
$grid->filter(function (Grid\Filter $filter) {
|
|
$filter->equal('id');
|
|
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* Make a show builder.
|
|
*
|
|
* @param mixed $id
|
|
*
|
|
* @return Show
|
|
*/
|
|
protected function detail($id)
|
|
{
|
|
return Show::make($id, new LanzuServiceReward(), function (Show $show) {
|
|
$show->field('first_reward', '首单奖励')->value($show->model()->set_reward['first_reward']);
|
|
$show->field('new_user_reward', '新用户奖励')->value($show->model()->set_reward['new _user_reward']);
|
|
$show->field('flow_reward', '流水奖励')->value($show->model()->set_reward['flow_reward']);
|
|
$show->field('type')->value('社区');
|
|
$show->created_at;
|
|
$show->updated_at;
|
|
});
|
|
}
|
|
|
|
/**
|
|
* Make a form builder.
|
|
*
|
|
* @return Form
|
|
*/
|
|
protected function form()
|
|
{
|
|
return Form::make(new LanzuServiceReward(), function (Form $form) {
|
|
$form->display('id');
|
|
$form->embeds('set_reward', '奖励配置', function ($form) {
|
|
$form->number('first_reward', '首单奖励(元)')->min(0);
|
|
$form->number('new_user_reward', '站点奖励(元)')->min(0);
|
|
$form->number('flow_reward', '流水奖励(%)');
|
|
|
|
});
|
|
$form->radio('type')->options([1 => '社区'])->default(1);
|
|
$form->saved(function (Form $form) {
|
|
$ssdb = SsdbClient::client(env('SSDB_HOST'), env('SSDB_PORT'));
|
|
$data = [
|
|
'first_reward' => $form->set_reward['first_reward'],
|
|
'new_user_reward' => $form->set_reward['new_user_reward'],
|
|
'flow_reward' => $form->set_reward['flow_reward'],
|
|
];
|
|
$ssdb->multi_hset('set_reward_' . $form->type, $data);
|
|
});
|
|
$form->disableViewButton();
|
|
$form->disableDeleteButton();
|
|
});
|
|
}
|
|
}
|