From cf54d8655e394447fe69c14cf0440018bcc29483 Mon Sep 17 00:00:00 2001 From: liangyuyan <1103300295@qq.com> Date: Wed, 21 Oct 2020 15:45:08 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E5=95=86=E5=93=81-=E7=BB=9F?= =?UTF-8?q?=E8=AE=A1=E6=95=B0=E6=8D=AE=E5=9B=BE=E6=A0=87-=E9=9A=90?= =?UTF-8?q?=E8=97=8F=EF=BC=8C=E6=9C=AA=E6=83=B3=E5=88=B0=E5=A5=BD=E6=96=B9?= =?UTF-8?q?=E6=A1=88=EF=BC=8C=E8=8E=B7=E5=8F=96=E6=95=B0=E6=8D=AE=E7=9A=84?= =?UTF-8?q?=E6=97=B6=E5=80=99=E4=B8=8D=E9=87=8D=E5=A4=8D=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../v3/GoodsActivityReportController.php | 15 +++-------- .../Repositories/v3/GoodsActivityReport.php | 27 ++++++++++--------- app/Admin/routes.php | 2 +- 3 files changed, 20 insertions(+), 24 deletions(-) diff --git a/app/Admin/Controllers/v3/GoodsActivityReportController.php b/app/Admin/Controllers/v3/GoodsActivityReportController.php index 6439235..c959d7d 100644 --- a/app/Admin/Controllers/v3/GoodsActivityReportController.php +++ b/app/Admin/Controllers/v3/GoodsActivityReportController.php @@ -7,6 +7,7 @@ use App\Admin\Actions\Grid\v3\OrderReportLastWeek; use App\Admin\Actions\Grid\v3\OrderReportToday; use App\Admin\Actions\Grid\v3\OrderReportYesterday; +use Dcat\Admin\Grid\Model as GridModel; use App\Admin\Repositories\v3\GoodsActivityReport; use App\Admin\Widgets\Charts\OrderGoodsActivityColumnChart; use Dcat\Admin\Grid; @@ -19,14 +20,7 @@ use Dcat\Admin\Layout\Row; class GoodsActivityReportController extends AdminController { - public $data = []; - public $repositories = null; - public function __construct() - { - $this->option = $this->id = 7; - $this->repositories = new GoodsActivityReport(); - $this->data = $this->repositories->data; - } + /** * Make a grid builder. * @@ -34,7 +28,7 @@ class GoodsActivityReportController extends AdminController */ protected function grid() { - return Grid::make($this->repositories, function (Grid $grid) { + return Grid::make(new GoodsActivityReport(), function (Grid $grid) { $marketList = MarketModel::getMarketArray(); $storeList = StoreModel::getStoreArray(); @@ -98,8 +92,7 @@ class GoodsActivityReportController extends AdminController $row->column(12,$this->grid()); }) ->body(function(Row $row){ - $list = $this->data;dd($list); - $row->column(12,new OrderGoodsActivityColumnChart($list)); + // $row->column(12,new OrderGoodsActivityColumnChart()); }); } } diff --git a/app/Admin/Repositories/v3/GoodsActivityReport.php b/app/Admin/Repositories/v3/GoodsActivityReport.php index 36c93e5..d2f480f 100644 --- a/app/Admin/Repositories/v3/GoodsActivityReport.php +++ b/app/Admin/Repositories/v3/GoodsActivityReport.php @@ -6,7 +6,6 @@ use App\Models\LanzuOrderGoods as Model; use Dcat\Admin\Grid\Model as GridModel; use Dcat\Admin\Repositories\EloquentRepository; use Illuminate\Support\Facades\DB; -use App\Admin\Controllers\v3\GoodsActivityController; class GoodsActivityReport extends EloquentRepository { @@ -27,6 +26,16 @@ class GoodsActivityReport extends EloquentRepository $currentPage = $model->getCurrentPage(); // 获取每页显示行数 $perPage = $model->getPerPage(); + $list = $this->getData($perPage); + + return $model->makePaginator( + $list['total'] ?? 0,$list['data'] ?? [] + ); + + } + + public function getData($perPage = 10) + { // 获取筛选参数 $name = request()->input('name', ''); $marketId = request()->input('market_id'); @@ -34,15 +43,14 @@ class GoodsActivityReport extends EloquentRepository $time = date('Y-m-d',time()); $startTime = request()->input('start_time'); $endTime = request()->input('end_time'); - + $orderGoodsActivity = Model::select(DB::raw('SUM(lanzu_order_goods.number) as total,lanzu_order_goods.goods_id,lanzu_order_goods.name,lanzu_order_goods.cover_img,lanzu_order_main.market_id,lanzu_order.store_id')) ->join('lanzu_order','lanzu_order_goods.order_id','=','lanzu_order.id') ->join('lanzu_order_main','lanzu_order.order_main_id','=','lanzu_order_main.global_order_id') ->where('lanzu_order_goods.activity_type',2) ->where('lanzu_order_goods.status',1) - ->whereIn('lanzu_order_main.state',[4,5,10,11]) - ; - + ->whereIn('lanzu_order_main.state',[4,5,10,11]); + if($name){ $orderGoodsActivity->where('lanzu_order_goods.name','like',"%$name%"); } @@ -76,12 +84,7 @@ class GoodsActivityReport extends EloquentRepository // $orderGoodsActivity->where([['lanzu_order_goods.created_at','<=',strtotime($todayEnd)]]); // } $list = $orderGoodsActivity->orderBy('total','desc')->groupBy('goods_id','lanzu_order_goods.name','cover_img','market_id','store_id')->paginate($perPage); - $list = $list->toArray(); - $this->data = $list['data'] ?? []; - - return $model->makePaginator( - $list['total'] ?? 0,$list['data'] ?? [] - ); - + $list = $list->toArray(); + return $list; } } diff --git a/app/Admin/routes.php b/app/Admin/routes.php index 52a25ff..d8e1001 100644 --- a/app/Admin/routes.php +++ b/app/Admin/routes.php @@ -88,6 +88,6 @@ Route::group([ // 订单统计 $router->resource('/order_report', 'v3\OrderReportController'); // 活动商品统计 - $router->any('/goods_activity_report', 'v3\GoodsActivityReportController@index'); + $router->resource('/goods_activity_report', 'v3\GoodsActivityReportController'); });