coinwind/app/Admin/Controllers/WithdrawalController.php

120 lines
3.4 KiB
PHP

<?php
namespace App\Admin\Controllers;
use App\Admin\Actions\Withdrawal\Refuse;
use App\Admin\Actions\Withdrawal\Success;
use Encore\Admin\Controllers\AdminController;
use Encore\Admin\Form;
use Encore\Admin\Grid;
use Encore\Admin\Show;
use App\Withdrawal;
use Encore\Admin\Widgets\Table;
class WithdrawalController extends AdminController
{
/**
* Title for current resource.
*
* @var string
*/
protected $title = '提币记录';
/**
* Make a grid builder.
*
* @return Grid
*/
protected function grid()
{
$grid = new Grid(new Withdrawal);
$grid->model()->orderBy('id', 'desc');
$grid->filter(function ($filter) {
// 去掉默认的id过滤器
$filter->disableIdFilter();
// 在这里添加字段过滤器
$filter->like('address', '钱包地址');
$filter->like('hash', '哈希值');
$filter->like('bi_name', '币种');
$filter->like('liexing', '收益状态')->select([1 => '提取收益', 2 => '提取本金']);
$filter->like('type', '策略')->select([1 => '平台币', 2 => '自身币']);
$filter->like('status', '状态')->multipleSelect([0 => '未审核', 1 => '通过', 2 => '拒绝']);
$filter->between('created_at', '创建时间')->datetime();
$filter->between('updated_at', '最近时间')->datetime();
});
$grid->column('id', __('ID'))->sortable();
$grid->column('address', __('钱包地址'))->expand(function ($model) {
return new Table(['哈希值', '真实金额'], [
[
$model['hash'], $model['true_balance']
]
]);
});
$grid->column('remake', __('备注'));
$grid->column('bi_name', __('币种'));
$grid->column('liexing', __('收益状态'))->using([1 => '提取收益', 2 => '提取本金']);
$grid->column('balance', __('金额'))->sortable();
$grid->column('type', __('策略'))->using([1 => '平台币', 2 => '自身币']);
$grid->column('status', __('状态'))->using([0 => '未审核', 1 => '通过', 2 => '拒绝'])->label([
0 => 'default',
2 => 'warning',
1 => 'success',
]);
$grid->column('created_at', __('创建时间'))->sortable();
$grid->column('updated_at', __('更新时间'))->sortable();
$grid->actions(function ($actions) {
// 去掉查看
$actions->disableView();
$actions->disableEdit();
$actions->disableDelete();
$actions->add(new Refuse());
$actions->add(new Success());
});
$grid->disableCreateButton();
return $grid;
}
/**
* Make a show builder.
*
* @param mixed $id
* @return Show
*/
protected function detail($id)
{
$show = new Show(Single::findOrFail($id));
$show->field('id', __('ID'));
$show->field('created_at', __('Created at'));
$show->field('updated_at', __('Updated at'));
return $show;
}
/**
* Make a form builder.
*
* @return Form
*/
protected function form()
{
$form = new Form(new Single);
$form->display('id', __('ID'));
$form->display('created_at', __('Created At'));
$form->display('updated_at', __('Updated At'));
return $form;
}
}