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.
98 lines
3.7 KiB
98 lines
3.7 KiB
<?php
|
|
/*
|
|
* @Descripttion:
|
|
* @version:
|
|
* @Author: GuaPi
|
|
* @Date: 2021-08-04 09:34:17
|
|
* @LastEditors: GuaPi
|
|
* @LastEditTime: 2021-08-06 18:51:21
|
|
*/
|
|
|
|
namespace App\Admin\Controllers\Contract;
|
|
|
|
use App\Models\Contract\ContractRebate;
|
|
use Dcat\Admin\Admin;
|
|
use Dcat\Admin\Form;
|
|
use Dcat\Admin\Grid;
|
|
use Dcat\Admin\Show;
|
|
use Dcat\Admin\Controllers\AdminController;
|
|
use App\Admin\Actions\Agent\ContractSettle;
|
|
|
|
class ContractRebateController extends AdminController
|
|
{
|
|
/**
|
|
* Make a grid builder.
|
|
*
|
|
* @return Grid
|
|
*/
|
|
protected function grid()
|
|
{
|
|
return Grid::make(new ContractRebate(), function (Grid $grid) {
|
|
$grid->model()->orderByDesc('order_time', 'id'); //倒序排序
|
|
// $grid->disableActions();
|
|
$grid->disableCreateButton();
|
|
$grid->actions(function (Grid\Displayers\Actions $actions) {
|
|
$actions->disableDelete();
|
|
$actions->disableEdit();
|
|
$actions->disableView();
|
|
if ($this->status) {
|
|
$actions->append(ContractSettle::make()->addHtmlClass('btn btn-sm btn-outline-primary disabled'));
|
|
} else {
|
|
$actions->append(ContractSettle::make()->addHtmlClass('btn btn-sm btn-outline-primary'));
|
|
}
|
|
});
|
|
$grid->column('id', '返佣ID')->sortable();
|
|
$grid->column('order_no');
|
|
$grid->column('aid', '受益人UID')->help('当前订单受益人ID');
|
|
$grid->column('user_id')->help('当前订单的下单用户');
|
|
$grid->column('deep', '返佣层级')->help('代理商层级(1为直推2为间推3为间推的间推以此类推)');
|
|
$grid->column('rebate_type')->using(ContractRebate::$rebateTypeMap)->label();
|
|
$grid->column('contract_pair');
|
|
$grid->column('side')->using(ContractRebate::$sideMap);
|
|
$grid->column('margin', '保证金');
|
|
$grid->column('fee');
|
|
$grid->column('rebate_rate')->percentage();
|
|
$grid->column('rebate', '佣金')->help('本单代理商可拿奖金');
|
|
$grid->column('status')->using(ContractRebate::$statusMap)->dot([0 => 'grey', 1 => 'green'])->help('用户成功持仓合约后会产生返佣订单,每日12:00会自动结算历史佣金');
|
|
$grid->column('order_time', '订单时间')->sortable();
|
|
|
|
$grid->filter(function (Grid\Filter $filter) {
|
|
$filter->between('order_time', '订单时间')->date();
|
|
$filter->equal('id')->width(3);
|
|
$filter->equal('user_referrer')->width(3);
|
|
$filter->equal('order_no')->width(3);
|
|
$filter->equal('aid', '受益人UID')->width(3);
|
|
$filter->equal('status')->select(ContractRebate::$statusMap)->width(4);
|
|
$filter->in('contract_pair')->multipleSelect(ContractRebate::$contractPairMap)->width(4);
|
|
});
|
|
});
|
|
}
|
|
|
|
|
|
/**
|
|
* Make a form builder.
|
|
*
|
|
* @return Form
|
|
*/
|
|
protected function form()
|
|
{
|
|
return Form::make(new ContractRebate(), function (Form $form) {
|
|
$form->display('id');
|
|
$form->text('order_no');
|
|
$form->text('user_id');
|
|
$form->text('user_referrer');
|
|
$form->text('deep');
|
|
$form->text('rebate_type');
|
|
$form->text('contract_pair');
|
|
$form->text('side');
|
|
$form->text('amount');
|
|
$form->text('fee');
|
|
$form->text('rebate_rate');
|
|
$form->text('status');
|
|
$form->text('order_time');
|
|
|
|
$form->display('created_at');
|
|
$form->display('updated_at');
|
|
});
|
|
}
|
|
}
|
|
|