diff --git a/app/Admin/Controllers/v3/OrderReportController.php b/app/Admin/Controllers/v3/OrderReportController.php index 7bb8336..32eebb5 100644 --- a/app/Admin/Controllers/v3/OrderReportController.php +++ b/app/Admin/Controllers/v3/OrderReportController.php @@ -10,7 +10,7 @@ use Dcat\Admin\Grid\Filter; class OrderReportController extends AdminController { - public static $searchTime = ''; + public static $searchTime = []; /** * Make a grid builder. * @@ -20,7 +20,7 @@ class OrderReportController extends AdminController { return Grid::make(new OrderReport(), function (Grid $grid) { - + $marketList = MarketModel::getMarketArray(); $grid->combine('默认统计今天的数据', ['name', 'value'])->responsive()->help('如果未选择时间,则默认只统计当天的所有市场的数据,特殊:现存用户默认统计所有的数据'); @@ -28,25 +28,54 @@ class OrderReportController extends AdminController $grid->column('name'); $grid->column('value'); - $grid->filter(function (Filter $filter) use($marketList){ + $grid->filter(function (Filter $filter) use($marketList) { // 更改为 panel 布局 $filter->panel(); $filter->equal('market_id','市场')->select($marketList); $filter->equal('start_time','开始时间')->date(); $filter->equal('end_time','结束时间')->date(); - - // $today = date('Y-m-d'); - // $monthBefore = date("Y-m-d",strtotime("-1 months",strtotime($today))); - // $timeData = $this->periodDateArr($monthBefore,$today); - // $filter->equal('day','日期')->select($timeData)->default($today); - + }); $grid->selector(function (Grid\Tools\Selector $selector) { - $selector->selectOne('time', '日期', ['today'=>'今天', 'yesterday'=>'昨天', 'last_week'=>'上周'], function($query, $value){ - - $value = current($value); + $today = date('Y-m-d'); + $selector->selectOne('time', '选择日期', ['today'=>'今天', 'yesterday'=>'昨天', 'last_week'=>'上周','last_month'=>'上月'], function($query, $value) use($today){ $where = []; + + //上月初 + $lastMonthStart = date('Y-m-d', strtotime('-1 month', strtotime(date('Y-m', time()) . '-01'))); + // 上月底 + $lastMonthEnd = date('Y-m-d', strtotime(date('Y-m', time()) . '-01') - 86400); + dd([$lastMonthStart,$lastMonthEnd]); + + switch($value){ + case 'today': + $where['start_time'] = $today; + $where['end_time'] = $today; + break; + case 'yesterday': + $yesterday = date("Y-m-d",strtotime("-1 days",strtotime($today))); + $where['start_time'] = $yesterday; + $where['end_time'] = $yesterday; + break; + case 'last_week': + //上周日 + $lastSunday = date('Y-m-d', strtotime('-1 sunday', time())); + // 上周一 + $lastMonday = date('Y-m-d', strtotime('-1 monday', strtotime($lastSunday))); + $where['start_time'] = $lastMonday; + $where['end_time'] = $lastSunday; + break; + case 'last_week': + //上月初 + $lastMonthStart = date('Y-m-d', strtotime('-1 month', strtotime(date('Y-m', time()) . '-01'))); + // 上月底 + $lastMonthEnd = date('Y-m-d', strtotime(date('Y-m', time()) . '-01') - 86400); + $where['start_time'] = $lastMonthStart; + $where['end_time'] = $lastMonthEnd; + break; + } + self::$searchTime = $where; }); }); // 每页1条