mirror of
https://gitee.com/zongzhige/shopxo.git
synced 2026-07-08 22:40:43 +08:00
search
This commit is contained in:
@ -25,9 +25,9 @@ class SearchService
|
||||
public static function GoodsCategoryList($params = [])
|
||||
{
|
||||
// 根据分类id获取同级列表
|
||||
$category = GoodsService::GoodsCategoryRow(['id'=>$params['category_id']]);
|
||||
$pid = empty($category['pid']) ? 0 : $category['pid'];
|
||||
return GoodsService::GoodsCategoryList(['pid'=>$pid]);
|
||||
// $category = GoodsService::GoodsCategoryRow(['id'=>$params['category_id']]);
|
||||
// $pid = empty($category['pid']) ? 0 : $category['pid'];
|
||||
return GoodsService::GoodsCategoryList(['pid'=>$params['category_id']]);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -57,14 +57,61 @@ class SearchService
|
||||
public static function GoodsList($params = [])
|
||||
{
|
||||
$result = [
|
||||
'total' => 0,
|
||||
'data' => [],
|
||||
'page_total' => 0,
|
||||
'total' => 450,
|
||||
'data' => [],
|
||||
];
|
||||
$goods_where = [
|
||||
'g.is_delete_time' => 0,
|
||||
'g.is_delete_time' => 0,
|
||||
'g.is_shelves' => 1,
|
||||
];
|
||||
$result['data'] = GoodsService::GoodsList(['where'=>$goods_where]);
|
||||
|
||||
// 品牌
|
||||
if(!empty($params['brand_id']))
|
||||
{
|
||||
$goods_where['g.brand_id'] = intval($params['brand_id']);
|
||||
}
|
||||
|
||||
// 分类id
|
||||
if(!empty($params['category_id']))
|
||||
{
|
||||
$category_ids = GoodsService::GoodsCategoryItemsIds(['category_id'=>$params['category_id']]);
|
||||
$category_ids[] = $params['category_id'];
|
||||
$goods_where['gci.id'] = ['in', $category_ids];
|
||||
}
|
||||
|
||||
// 筛选价格
|
||||
if(!empty($params['screening_price_id']))
|
||||
{
|
||||
$price = M('ScreeningPrice')->field('min_price,max_price')->where(['is_enable'=>1, 'id'=>intval($params['screening_price_id'])])->find();
|
||||
if(!empty($price['min_price']) && !empty($price['max_price']))
|
||||
{
|
||||
$goods_where['g.price'] = [
|
||||
['EGT', $price['min_price']],
|
||||
['LT', $price['max_price']],
|
||||
];
|
||||
} else if(!empty($price['min_price']))
|
||||
{
|
||||
$goods_where['g.price'] = ['EGT', $price['min_price']];
|
||||
} else if(!empty($price['max_price']))
|
||||
{
|
||||
$goods_where['g.price'] = ['LT', $price['max_price']];
|
||||
}
|
||||
}
|
||||
|
||||
// 获取商品总数
|
||||
$result['total'] = GoodsService::GoodsTotal(['where'=>$goods_where]);
|
||||
|
||||
// 获取商品列表
|
||||
if($result['total'] > 0)
|
||||
{
|
||||
$page = intval(I('page', 1));
|
||||
$n = 10;
|
||||
$m = intval(($page-1)*$n);
|
||||
$result['data'] = GoodsService::GoodsList(['where'=>$goods_where, 'm'=>$m, 'n'=>$n]);
|
||||
|
||||
$result['page_total'] = ceil($result['total']/$n);
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user