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.
|
|
<?php
namespace App\AdminGuide\Controllers;
use App\AdminGuide\Repositories\Withdrawal;use App\Traits\DemandTraits;use App\Traits\WithdrawalTraits;use Dcat\Admin\Admin;use Dcat\Admin\Form;use Dcat\Admin\Grid;use Dcat\Admin\Layout\Column;use Dcat\Admin\Layout\Content;use Dcat\Admin\Layout\Row;use Dcat\Admin\Http\Controllers\AdminController;use Dcat\Admin\Widgets\Card;
class WalletController extends AdminController{ public function index(Content $content) { return $content->title('我的钱包') ->body($this->build()) ->body(function (Row $row) {
$row->column(4, function (Column $column){ $column->row(Card::make('当前余额', function () { $balance = Admin::user()->balance ?? 0; return <<<HTML<div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px"> <h2 class="ml-1 font-large-1 text-primary">$balance</h2></div>HTML; })); });
$row->column(4, function (Column $column){ $column->row(Card::make('已提现', function () { $price = \App\Models\Withdrawal::query() ->where([ 'user_id' => Admin::user()->id, 'user_type' => DemandTraits::$col[2], 'status' => WithdrawalTraits::$state[3] ]) ->sum('price'); return <<<HTML<div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px"> <h2 class="ml-1 font-large-1 text-primary">$price</h2></div>HTML; }));
});
$row->column(4, function (Column $column) { $column->row(Card::make('提现中', function () { $price = \App\Models\Withdrawal::query() ->where([ 'user_id' => Admin::user()->id, 'user_type' => DemandTraits::$col[2], 'status' => WithdrawalTraits::$state[0] ]) ->sum('price'); return <<<HTML<div class="d-flex justify-content-between align-items-center mt-1" style="margin-bottom: 2px"> <h2 class="ml-1 font-large-1 text-primary">$price</h2></div>HTML; }));
});
}) ->body( Grid::make(new Withdrawal(), function (Grid $grid) { $grid->disableActions(); $grid->disableCreateButton(); $grid->disableRowSelector();
$grid->model()->orderBy('id', 'desc')->where([ 'user_id' => Admin::user()->id, 'user_type' => DemandTraits::$col[2] ]);
$grid->column('id')->sortable(); $grid->column('price', '提现金额'); $grid->column('pay_type', '提现方式')->using(WithdrawalTraits::$userTypeText); $grid->column('status', '状态') ->using(WithdrawalTraits::$stateText) ->dot([ 1 => Admin::color()->yellow(), 2 => 'danger', 3 => 'success', 4 => Admin::color()->info(), ]); $grid->column('created_at', '提现时间'); $grid->column('updated_at')->sortable();
$grid->filter(function (Grid\Filter $filter) { $filter->equal('id')->width(2); $filter->equal('status', '状态')->select(WithdrawalTraits::$stateText)->width(2); }); })->title('<span style="font-size: 24px;">提现记录</span>') ); }
protected function build() { Form::dialog('支付宝提现') ->click('.alipay-create-form') // 绑定点击按钮
->url('/withdrawak_alipay/create') // 表单页面链接,此参数会被按钮中的 “data-url” 属性替换。。
->width('700px') // 指定弹窗宽度,可填写百分比,默认 720px
->height('650px') // 指定弹窗高度,可填写百分比,默认 690px
->success('Dcat.reload()'); // 新增成功后刷新页面
Form::dialog('银行卡提现') ->click('.bank-create-form') // 绑定点击按钮
->url('/withdrawak_bank/create') // 表单页面链接,此参数会被按钮中的 “data-url” 属性替换。。
->width('700px') // 指定弹窗宽度,可填写百分比,默认 720px
->height('650px') // 指定弹窗高度,可填写百分比,默认 690px
->success('Dcat.reload()'); // 新增成功后刷新页面
return "
<div style='padding-bottom:20px'> <span class='btn btn-success alipay-create-form'> 支付宝提现 </span> <span class='btn btn-success bank-create-form'> 银行卡提现 </span> </div>";
}}
|