feat(StoreBranchProductLists): 修改查询条件,优化库存查询

This commit is contained in:
mkm 2024-06-08 16:01:17 +08:00
parent 8644e3d571
commit 528f9aff93
4 changed files with 26 additions and 16 deletions

View File

@ -29,7 +29,7 @@ class StoreBranchProductLists extends BaseAdminDataLists implements ListsSearchI
{ {
return [ return [
'=' => ['product_id', 'cate_id','store_id'], '=' => ['product_id', 'cate_id','store_id'],
'%like%' => ['store_name|bar_code'], '%pipe_like%' => ['store_name_code'=>'store_name|bar_code'],
]; ];
} }
@ -63,7 +63,7 @@ class StoreBranchProductLists extends BaseAdminDataLists implements ListsSearchI
} }
}) })
->limit($this->limitOffset, $this->limitLength) ->limit($this->limitOffset, $this->limitLength)
->order(['sort' => 'desc', 'id' => 'desc']) ->order(['sort' => 'desc','stock'=>'desc','id' => 'desc'])
->select() ->select()
->each(function ($item) { ->each(function ($item) {
$item['system_store_name']=SystemStore::where('id',$item['store_id'])->value('name'); $item['system_store_name']=SystemStore::where('id',$item['store_id'])->value('name');

View File

@ -38,7 +38,6 @@ trait ListsSearchTrait
$class_value = $this->request->__get('class_value'); // 获取class_value的值 $class_value = $this->request->__get('class_value'); // 获取class_value的值
if ($class_value !== null) { if ($class_value !== null) {
$this->params = array_merge($this->params, $class_value); $this->params = array_merge($this->params, $class_value);
} }
foreach ($search as $whereType => $whereFields) { foreach ($search as $whereType => $whereFields) {
switch ($whereType) { switch ($whereType) {
@ -57,6 +56,15 @@ trait ListsSearchTrait
$where[] = [$whereField, $whereType, $this->params[$paramsName]]; $where[] = [$whereField, $whereType, $this->params[$paramsName]];
} }
break; break;
case '%pipe_like%':
foreach ($whereFields as $k=>$whereField) {
$paramsName = substr_symbol_behind($whereField);
if (!isset($this->params[$k]) || empty($this->params[$k])) {
continue;
}
$where[] = [$whereField, 'like', '%' . $this->params[$k] . '%'];
}
break;
case '%like%': case '%like%':
foreach ($whereFields as $whereField) { foreach ($whereFields as $whereField) {
$paramsName = substr_symbol_behind($whereField); $paramsName = substr_symbol_behind($whereField);

View File

@ -54,14 +54,16 @@ class StoreOrderLists extends BaseAdminDataLists implements ListsSearchInterface
$this->searchWhere[] = ['pay_type','=',7]; $this->searchWhere[] = ['pay_type','=',7];
} }
return StoreOrder::where($this->searchWhere) return StoreOrder::where($this->searchWhere)
->field(['id', 'order_id', 'pay_price', 'pay_time', 'pay_type', 'status']) ->field(['id', 'order_id', 'pay_price', 'pay_time', 'pay_type', 'status','paid'])
->limit($this->limitOffset, $this->limitLength) ->limit($this->limitOffset, $this->limitLength)
->order(['id' => 'desc']) ->order(['id' => 'desc'])
->select()->each(function ($item) use ($store_id) { ->select()->each(function ($item) use ($store_id) {
$item['pay_time'] = $item['pay_time'] > 0 ? date('Y-m-d H:i:s', $item['pay_time']) : ''; $item['pay_time'] = $item['pay_time'] > 0 ? date('Y-m-d H:i:s', $item['pay_time']) : '';
$item['status_name'] = OrderEnum::getOrderType($item['status']) ?? ''; $item['status_name'] = OrderEnum::getOrderType($item['status']) ?? '';
if ($item['paid'] == 0) { if ($item['paid'] == 0) {
$item['status_name'] = '待支付'; $item['paid_name'] = '待支付';
}else{
$item['paid_name'] = '已支付';
} }
$product_id = StoreOrderCartInfo::where('oid', $item['id'])->limit(3)->column('product_id'); $product_id = StoreOrderCartInfo::where('oid', $item['id'])->limit(3)->column('product_id');
if ($product_id) { if ($product_id) {

View File

@ -28,7 +28,7 @@ class StoreProductLists extends BaseAdminDataLists implements ListsSearchInterfa
public function setSearch(): array public function setSearch(): array
{ {
return [ return [
'=' => ['store_name', 'cate_id', 'store_id'], '=' => ['cate_id', 'store_id']
]; ];
} }