diff --git a/app/controller/api/Auth.php b/app/controller/api/Auth.php index 02b7941c..c1db22f5 100644 --- a/app/controller/api/Auth.php +++ b/app/controller/api/Auth.php @@ -898,5 +898,49 @@ class Auth extends BaseController } } + //根据地址信息查询汇总信息 + public function orderStatistics() + { + $cityCode = $this->request->param('city_code', ''); + $districtCode = $this->request->param('district_code', ''); + $streetCode = $this->request->param('street_code'); + $villageCode = $this->request->param('village_code', ''); + $brigadeId = $this->request->param('brigade_id', 0); + $startDate = $this->request->param('start_date', date('Y-m-d')); + $endDate = $this->request->param('end_date', date('Y-m-d')); + $queryBuilder = Db::name('ProductOrderLog')->where('status', 1); + if ($cityCode) { + $queryBuilder = $queryBuilder->where('city_code', $cityCode); + } + if ($districtCode) { + $queryBuilder = $queryBuilder->where('district_code', $districtCode); + } + if ($streetCode) { + $queryBuilder = $queryBuilder->where('street_code', $streetCode); + } + if ($villageCode) { + $queryBuilder = $queryBuilder->where('village_code', $villageCode); + } + if ($brigadeId) { + $queryBuilder = $queryBuilder->where('brigade_id', $brigadeId); + } + if ($startDate) { + $queryBuilder = $queryBuilder->whereTime('create_time', '>=', trim($startDate)); + } + if ($endDate) { + $queryBuilder = $queryBuilder->whereTime('create_time', '<=', trim($endDate) . ' 23:59:59'); + } + $orderNum = $queryBuilder->count(); + $productNum = $queryBuilder->sum('product_num'); + $totalPrice = $queryBuilder->sum('total_price'); + $data = [ + 'where' => $this->request->param(), + 'order_num' => $orderNum, + 'product_num' => $productNum, + 'total_price' => $totalPrice + ]; + return app('json')->success($data); + } + } diff --git a/route/api.php b/route/api.php index a2f16e45..1465d1cf 100644 --- a/route/api.php +++ b/route/api.php @@ -23,6 +23,7 @@ Route::group('api/', function () { Route::any('test', 'api.Auth/test'); Route::any('dotest', 'api.Auth/dotest'); Route::post('goods/take/:id', 'api.Auth/deliveryGoods'); + Route::get('order/statistics', 'api.Auth/orderStatistics'); Route::resource('upload', 'api.Upload'); Route::post('articleCatch', 'api.Upload/article'); //强制登录