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.
92 lines
2.7 KiB
92 lines
2.7 KiB
<?php
|
|
|
|
namespace App\Admin\Controllers;
|
|
|
|
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\ImsCjdcMarket as marketModel;
|
|
|
|
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->store_id;
|
|
$grid->market_id->display(function ($markrtId) {
|
|
$market = marketModel::select('id','name')->find($markrtId);
|
|
if (!$market) {
|
|
return '<span style="color: red">数据错误</span>';
|
|
}
|
|
return $market->name;
|
|
});
|
|
$grid->store_name;
|
|
$grid->new_user_total;
|
|
|
|
$grid->filter(function (Grid\Filter $filter) {
|
|
$marketList = [];
|
|
$list = marketModel::select('id','name')->get()->toArray();
|
|
foreach($list as $value){
|
|
$marketList[$value['id']] = $value['name'];
|
|
}
|
|
$filter->in('market_id')->multipleSelect($marketList);
|
|
$filter->like('store.name','店铺名称');
|
|
$filter->whereBetween('time', function ($q) {
|
|
$start = $this->input['start'] ?? null;
|
|
$end = $this->input['end'] ?? null;
|
|
if ($start !== null) {
|
|
$q->whereRaw("ims_cjdc_store_account.time >= ?",$start);
|
|
}
|
|
if ($end !== null) {
|
|
$q->whereRaw("ims_cjdc_store_account.time <= ?",$end);
|
|
}
|
|
})->datetime();
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 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');
|
|
});
|
|
}
|
|
}
|