|
|
<?php
namespace App\Admin\Controllers;
use App\Admin\Actions\Grid\v3\DataReportOption;use App\Admin\Repositories\StoreUserReport;use Dcat\Admin\Form;use Dcat\Admin\Grid;use Dcat\Admin\Show;use Dcat\Admin\Controllers\AdminController;use App\Models\v3\Market as MarketModel;use App\Models\StoreAccount as StoreAccountModel;use App\Models\v3\Store as StoreModel;
class StoreUserReportController extends AdminController{ /** * Make a grid builder. * * @return Grid */ protected function grid() { return Grid::make(new StoreUserReport(), function (Grid $grid) { $grid->disableCreateButton(); $grid->disableDeleteButton(); $grid->disableEditButton(); $grid->disableQuickEditButton(); $grid->disableViewButton(); $grid->disableActions(); $grid->disableRowSelector();
$marketList = MarketModel::getMarketArray(); $storeList = StoreModel::getStoreArray();
$grid->store_id; $grid->market_id->display(function ($marketId) use($marketList){ return $marketList[$marketId] ?? ''; }); $grid->store_name->width('25%'); $grid->new_total;
$grid->filter(function (Grid\Filter $filter) use($marketList,$storeList){ $filter->panel();
$filter->equal('start_time','开始时间')->date()->width(2); $filter->equal('end_time','结束时间')->date()->width(2); $filter->equal('market_id')->select($marketList)->width(2); $filter->in('store_id','店铺名称')->multipleSelect($storeList)->width(3); $filter->equal('store_ids','店铺ID')->width(3); }); $grid->tools([ new DataReportOption('today','store_new_user','今日'), new DataReportOption('yesterday','store_new_user','昨日'), new DataReportOption('this_week','store_new_user','本周'), new DataReportOption('last_week','store_new_user','上周'), new DataReportOption('this_month','store_new_user','本月'), new DataReportOption('last_month','store_new_user','上月') ]); // 每页10条
$grid->paginate(10); }); }
/** * Make a show builder. * * @param mixed $id * * @return Show */ protected function detail($id) { return Show::make($id, new StoreUserReport(), function (Show $show) { $show->id; $show->market_id; $show->name; $show->mm_user_id; }); }
/** * Make a form builder. * * @return Form */ protected function form() { return Form::make(new StoreUserReport(), function (Form $form) { $form->display('id'); $form->text('market_id'); $form->text('name'); $form->text('mm_user_id'); }); }}
|