Просмотр исходного кода

平台后台-订单列表-支持关键字搜索订单数据

Xpy месяцев назад: 8
Родитель
Сommit
80677c11cd

+ 6 - 1
app/common/dao/store/order/StoreOrderDao.php

@@ -15,6 +15,7 @@ use app\common\dao\BaseDao;
15
 use app\common\model\BaseModel;
15
 use app\common\model\BaseModel;
16
 use app\common\model\store\order\StoreOrder;
16
 use app\common\model\store\order\StoreOrder;
17
 use app\common\model\user\User;
17
 use app\common\model\user\User;
18
+use app\common\repositories\store\order\StoreOrderProductRepository;
18
 use app\common\repositories\user\UserRepository;
19
 use app\common\repositories\user\UserRepository;
19
 use app\entity\CommonEntity;
20
 use app\entity\CommonEntity;
20
 use app\entity\data\store\StoreOrderEntity;
21
 use app\entity\data\store\StoreOrderEntity;
@@ -110,10 +111,14 @@ class StoreOrderDao extends BaseDao
110
             })
111
             })
111
             ->when(isset($where['keywords']) && $where['keywords'] !== '', function ($query) use ($where) {
112
             ->when(isset($where['keywords']) && $where['keywords'] !== '', function ($query) use ($where) {
112
                 $query->where(function ($query) use ($where) {
113
                 $query->where(function ($query) use ($where) {
114
+                    /** @var StoreOrderProductRepository $storeOrderProductRepository */
115
+                    $storeOrderProductRepository = app()->make(StoreOrderProductRepository::class);
116
+                    $orderIdList = $storeOrderProductRepository->getOrderIdListByKeyword($where['keywords']);
113
                     $query->where('real_name', 'like', "%" . $where['keywords'] . "%")
117
                     $query->where('real_name', 'like', "%" . $where['keywords'] . "%")
114
                         ->whereOr('user_phone', 'like', "%{$where['keywords']}%")
118
                         ->whereOr('user_phone', 'like', "%{$where['keywords']}%")
115
                         ->whereOr('order_sn', 'like', '%' . $where['keywords'] . '%')
119
                         ->whereOr('order_sn', 'like', '%' . $where['keywords'] . '%')
116
-                        ->whereOr('verify_code', 'like', '%' . $where['keywords'] . '%');
120
+                        ->whereOr('verify_code', 'like', '%' . $where['keywords'] . '%')
121
+                        ->whereOr('order_id', 'in', $orderIdList);
117
                 });
122
                 });
118
             })
123
             })
119
             ->when(isset($where['reconciliation_type']) && $where['reconciliation_type'] !== '', function ($query) use ($where) {
124
             ->when(isset($where['reconciliation_type']) && $where['reconciliation_type'] !== '', function ($query) use ($where) {

+ 0 - 14
app/common/repositories/store/order/StoreOrderRepository.php

@@ -5141,20 +5141,6 @@ class StoreOrderRepository extends BaseRepository
5141
                     return $query->field('uid,phone,nickname');
5141
                     return $query->field('uid,phone,nickname');
5142
                 }
5142
                 }
5143
             ]);
5143
             ]);
5144
-        if (!empty($where['keywords'])) {
5145
-            /** @var StoreOrderProductRepository $storeOrderProductRepository */
5146
-            $storeOrderProductRepository = app()->make(StoreOrderProductRepository::class);
5147
-            $orderIdList = $storeOrderProductRepository->getOrderIdListByKeyword($where['keywords']);
5148
-            $query->whereIn('order_id', $orderIdList);
5149
-        }
5150
-        $kw = trim($where['product_keywords'] ?? '');
5151
-        if ($kw !== '') {
5152
-            $ids = Db::name('store_order_product')
5153
-                ->whereRaw("JSON_UNQUOTE(JSON_EXTRACT(cart_info, '$.product.store_name')) LIKE ?", ["%{$kw}%"]) 
5154
-                ->column('order_id');
5155
-            $ids = $ids ?: [-1];
5156
-            $query->whereIn('order_id', $ids);
5157
-        }
5158
         $query1 = clone ($query);
5144
         $query1 = clone ($query);
5159
         $query2 = clone ($query);
5145
         $query2 = clone ($query);
5160
 
5146