更新订单查询汇总

This commit is contained in:
yaooo 2023-08-30 16:16:20 +08:00
parent bc778f6454
commit 669f3a2d39

View File

@ -1007,6 +1007,7 @@ class Auth extends BaseController
$typeId = $this->request->param('type_id', 0);
$startDate = $this->request->param('start_date', '');
$endDate = $this->request->param('end_date', '');
$sql = $this->request->param('sql', 0);
$queryBuilder = Db::name('ProductOrderLog')->where('status', 1);
//根据商户分类店铺类型筛选商户
$queryMerBuilder = Db::name('Merchant');
@ -1019,19 +1020,49 @@ class Auth extends BaseController
$merIdArray = $queryMerBuilder->fetchSql(false)->column('mer_id');
$queryBuilder = $queryBuilder->whereIn('mer_id', $merIdArray);
if ($cityCode) {
$queryBuilder = $queryBuilder->where('city_code', $cityCode);
$cityCodeArray = explode(',', $cityCode );
if (count($cityCodeArray) == 1) {
$queryBuilder = $queryBuilder->where('city_code', $cityCode);
}
if (count($cityCodeArray) > 1) {
$queryBuilder = $queryBuilder->whereIn('city_code', $cityCodeArray);
}
}
if ($districtCode) {
$queryBuilder = $queryBuilder->where('district_code', $districtCode);
$districtCodeArray = explode(',', $districtCode);
if (count($districtCodeArray) == 1) {
$queryBuilder = $queryBuilder->where('district_code', $districtCode);
}
if (count($districtCodeArray) > 1) {
$queryBuilder = $queryBuilder->whereIn('district_code', $districtCodeArray);
}
}
if ($streetCode) {
$queryBuilder = $queryBuilder->where('street_code', $streetCode);
$streetCodeArray = explode(',', $streetCode);
if (count($streetCodeArray) == 1) {
$queryBuilder = $queryBuilder->where('street_code', $streetCode);
}
if (count($streetCodeArray) > 1) {
$queryBuilder = $queryBuilder->whereIn('street_code', $streetCodeArray);
}
}
if ($villageCode) {
$queryBuilder = $queryBuilder->where('village_code', $villageCode);
$villageCodeArray = explode(',', $villageCode);
if (count($villageCodeArray) == 1) {
$queryBuilder = $queryBuilder->where('village_code', $villageCode);
}
if (count($villageCodeArray) > 1) {
$queryBuilder = $queryBuilder->whereIn('village_code', $villageCodeArray);
}
}
if ($brigadeId) {
$queryBuilder = $queryBuilder->where('brigade_id', $brigadeId);
$brigadeIdArray = explode(',', $brigadeId);
if (count($brigadeIdArray) == 1) {
$queryBuilder = $queryBuilder->where('brigade_id', $brigadeId);
}
if (count($brigadeIdArray) > 1) {
$queryBuilder = $queryBuilder->whereIn('brigade_id', $brigadeIdArray);
}
}
if ($startDate) {
$queryBuilder = $queryBuilder->whereTime('create_time', '>=', trim($startDate));
@ -1039,7 +1070,7 @@ class Auth extends BaseController
if ($endDate) {
$queryBuilder = $queryBuilder->whereTime('create_time', '<=', trim($endDate) . ' 23:59:59');
}
$count = $queryBuilder->fetchSql(false)->count();
$count = $queryBuilder->fetchSql((bool)$sql)->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) {
@ -1065,7 +1096,17 @@ class Auth extends BaseController
$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);
$sql = $this->request->param('sql', 0);
$villageIdArray = [];
if ($villageCode) {
$villageCodeArray = explode(',', $villageCode);
if (count($villageCodeArray) == 1) {
$villageIdArray = Db::name('GeoVillage')->where('village_code', $villageCodeArray)->fetchSql(false)->column('village_id');
}
if (count($villageCodeArray) > 1) {
$villageIdArray = Db::name('GeoVillage')->whereIn('village_code', $villageCodeArray)->fetchSql(false)->column('village_id');
}
}
$queryBuilder = Db::name('Merchant');
if ($categoryId) {
$queryBuilder = $queryBuilder->where('category_id', $categoryId);
@ -1074,13 +1115,25 @@ class Auth extends BaseController
$queryBuilder = $queryBuilder->where('type_id', $typeId);
}
if ($districtCode) {
$queryBuilder = $queryBuilder->where('area_id', $districtCode);
$districtCodeArray = explode(',', $districtCode);
if (count($districtCodeArray) == 1) {
$queryBuilder = $queryBuilder->where('area_id', $districtCode);
}
if (count($districtCodeArray) > 1) {
$queryBuilder = $queryBuilder->whereIn('area_id', $districtCodeArray);
}
}
if ($streetCode) {
$queryBuilder = $queryBuilder->where('street_id', $streetCode);
$streetCodeArray = explode(',', $streetCode);
if (count($streetCodeArray) == 1) {
$queryBuilder = $queryBuilder->where('street_id', $streetCode);
}
if (count($streetCodeArray) > 1) {
$queryBuilder = $queryBuilder->whereIn('street_id', $streetCodeArray);
}
}
if ($villageId) {
$queryBuilder = $queryBuilder->where('village_id', $villageId);
if (count($villageIdArray)) {
$queryBuilder = $queryBuilder->whereIn('village_id', $villageIdArray);
}
if ($startDate) {
$queryBuilder = $queryBuilder->whereTime('create_time', '>=', trim($startDate));
@ -1088,7 +1141,7 @@ class Auth extends BaseController
if ($endDate) {
$queryBuilder = $queryBuilder->whereTime('create_time', '<=', trim($endDate) . ' 23:59:59');
}
$merNum = $queryBuilder->fetchSql(false)->count();
$merNum = $queryBuilder->fetchSql((bool)$sql)->count();
$data = [
'where' => $this->request->param(),
'mer_num' => $merNum
@ -1106,7 +1159,17 @@ class Auth extends BaseController
$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);
$sql = $this->request->param('sql', 0);
$villageIdArray = [];
if ($villageCode) {
$villageCodeArray = explode(',', $villageCode);
if (count($villageCodeArray) == 1) {
$villageIdArray = Db::name('GeoVillage')->where('village_code', $villageCodeArray)->fetchSql(false)->column('village_id');
}
if (count($villageCodeArray) > 1) {
$villageIdArray = Db::name('GeoVillage')->whereIn('village_code', $villageCodeArray)->fetchSql(false)->column('village_id');
}
}
$queryBuilder = Db::name('Merchant');
if ($categoryId) {
$queryBuilder = $queryBuilder->where('category_id', $categoryId);
@ -1115,13 +1178,25 @@ class Auth extends BaseController
$queryBuilder = $queryBuilder->where('type_id', $typeId);
}
if ($districtCode) {
$queryBuilder = $queryBuilder->where('area_id', $districtCode);
$districtCodeArray = explode(',', $districtCode);
if (count($districtCodeArray) == 1) {
$queryBuilder = $queryBuilder->where('area_id', $districtCode);
}
if (count($districtCodeArray) > 1) {
$queryBuilder = $queryBuilder->whereIn('area_id', $districtCodeArray);
}
}
if ($streetCode) {
$queryBuilder = $queryBuilder->where('street_id', $streetCode);
$streetCodeArray = explode(',', $streetCode);
if (count($streetCodeArray) == 1) {
$queryBuilder = $queryBuilder->where('street_id', $streetCode);
}
if (count($streetCodeArray) > 1) {
$queryBuilder = $queryBuilder->whereIn('street_id', $streetCodeArray);
}
}
if ($villageId) {
$queryBuilder = $queryBuilder->where('village_id', $villageId);
if (count($villageIdArray)) {
$queryBuilder = $queryBuilder->whereIn('village_id', $villageIdArray);
}
$merIdArray = $queryBuilder->fetchSql(false)->column('mer_id');
$prodQueryBuilder = Db::name('StoreProduct')->where('is_show', 1)->where('status', 1)->whereIn('mer_id', $merIdArray);
@ -1131,10 +1206,11 @@ class Auth extends BaseController
if ($endDate) {
$prodQueryBuilder = $prodQueryBuilder->whereTime('create_time', '<=', trim($endDate) . ' 23:59:59');
}
$goodsNum = $prodQueryBuilder->fetchSql(false)->count();
$goodsNum = $prodQueryBuilder->fetchSql((bool)$sql)->count();
$data = [
'where' => $this->request->param(),
'goods_num' => $goodsNum
'goods_num' => $goodsNum,
'merid' => $merIdArray
];
return app('json')->success($data);
}