From 262a7a28b525561341515583f0504283085a8855 Mon Sep 17 00:00:00 2001 From: yaooo <272523191@qq.com> Date: Mon, 28 Aug 2023 15:38:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=95=86=E6=88=B7=E5=88=86?= =?UTF-8?q?=E7=B1=BB=E5=BA=97=E9=93=BA=E7=B1=BB=E5=9E=8B=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=B1=87=E6=80=BB=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/api/Auth.php | 49 ++++++++++++++++++++++++++++++++----- 1 file changed, 43 insertions(+), 6 deletions(-) diff --git a/app/controller/api/Auth.php b/app/controller/api/Auth.php index fe7c4f1a..8918a6bf 100644 --- a/app/controller/api/Auth.php +++ b/app/controller/api/Auth.php @@ -920,6 +920,16 @@ class Auth extends BaseController $startDate = $this->request->param('start_date', ''); $endDate = $this->request->param('end_date', ''); $queryBuilder = Db::name('ProductOrderLog')->where('status', 1); + //根据商户分类店铺类型筛选商户 + $queryMerBuilder = Db::name('Merchant'); + if ($categoryId) { + $queryMerBuilder = $queryMerBuilder->where('category_id', $categoryId); + } + if ($typeId) { + $queryMerBuilder = $queryMerBuilder->where('type_id', $typeId); + } + $merIdArray = $queryMerBuilder->fetchSql(false)->column('mer_id'); + $queryBuilder = $queryBuilder->whereIn('mer_id', $merIdArray); if ($cityCode) { $queryBuilder = $queryBuilder->where('city_code', $cityCode); } @@ -941,7 +951,7 @@ class Auth extends BaseController if ($endDate) { $queryBuilder = $queryBuilder->whereTime('create_time', '<=', trim($endDate) . ' 23:59:59'); } - $orderNum = $queryBuilder->count(); + $orderNum = $queryBuilder->fetchSql(false)->count(); $productNum = $queryBuilder->sum('product_num'); $totalPrice = $queryBuilder->sum('total_price'); $data = [ @@ -962,9 +972,21 @@ class Auth extends BaseController $streetCode = $this->request->param('street_code', ''); $villageCode = $this->request->param('village_code', ''); $brigadeId = $this->request->param('brigade_id', 0); + $categoryId = $this->request->param('category_id', 0); + $typeId = $this->request->param('type_id', 0); $startDate = $this->request->param('start_date', ''); $endDate = $this->request->param('end_date', ''); $queryBuilder = Db::name('ProductOrderLog')->where('status', 1); + //根据商户分类店铺类型筛选商户 + $queryMerBuilder = Db::name('Merchant'); + if ($categoryId) { + $queryMerBuilder = $queryMerBuilder->where('category_id', $categoryId); + } + if ($typeId) { + $queryMerBuilder = $queryMerBuilder->where('type_id', $typeId); + } + $merIdArray = $queryMerBuilder->fetchSql(false)->column('mer_id'); + $queryBuilder = $queryBuilder->whereIn('mer_id', $merIdArray); if ($cityCode) { $queryBuilder = $queryBuilder->where('city_code', $cityCode); } @@ -986,7 +1008,7 @@ class Auth extends BaseController if ($endDate) { $queryBuilder = $queryBuilder->whereTime('create_time', '<=', trim($endDate) . ' 23:59:59'); } - $count = $queryBuilder->count(); + $count = $queryBuilder->fetchSql(false)->count(); $list = $queryBuilder->setOption('field', [])->field(['id', 'order_id', 'product_num', 'product_price', 'total_price', 'city_code', 'district_code', 'street_code', 'village_code', 'brigade_id', 'create_time'])->order('id', 'desc')->page($page, $limit)->fetchSql(false)->select(); $orderIdList = []; if ($list) { @@ -1008,11 +1030,18 @@ class Auth extends BaseController $districtCode = $this->request->param('district_code', ''); $streetCode = $this->request->param('street_code', ''); $villageCode = $this->request->param('village_code', ''); + $categoryId = $this->request->param('category_id', 0); + $typeId = $this->request->param('type_id', 0); $startDate = $this->request->param('start_date', ''); $endDate = $this->request->param('end_date', ''); $villageId = Db::name('GeoVillage')->where('village_code', $villageCode)->fetchSql(false)->value('village_id', 0); - $queryBuilder = Db::name('Merchant')->where('status', 1); - + $queryBuilder = Db::name('Merchant'); + if ($categoryId) { + $queryBuilder = $queryBuilder->where('category_id', $categoryId); + } + if ($typeId) { + $queryBuilder = $queryBuilder->where('type_id', $typeId); + } if ($districtCode) { $queryBuilder = $queryBuilder->where('area_id', $districtCode); } @@ -1042,10 +1071,18 @@ class Auth extends BaseController $districtCode = $this->request->param('district_code', ''); $streetCode = $this->request->param('street_code', ''); $villageCode = $this->request->param('village_code', ''); + $categoryId = $this->request->param('category_id', 0); + $typeId = $this->request->param('type_id', 0); $startDate = $this->request->param('start_date', ''); $endDate = $this->request->param('end_date', ''); $villageId = Db::name('GeoVillage')->where('village_code', $villageCode)->fetchSql(false)->value('village_id', 0); - $queryBuilder = Db::name('Merchant')->where('status', 1); + $queryBuilder = Db::name('Merchant'); + if ($categoryId) { + $queryBuilder = $queryBuilder->where('category_id', $categoryId); + } + if ($typeId) { + $queryBuilder = $queryBuilder->where('type_id', $typeId); + } if ($districtCode) { $queryBuilder = $queryBuilder->where('area_id', $districtCode); } @@ -1068,7 +1105,7 @@ class Auth extends BaseController 'where' => $this->request->param(), 'goods_num' => $goodsNum ]; - return app('json')->success($data); + return app('json')->success($data); } }