Commit 97b49302 authored by zhz's avatar zhz

goods

parent f5a1624b
...@@ -61,7 +61,7 @@ class GoodsCommonServiceModel extends \Business\AbstractModel ...@@ -61,7 +61,7 @@ class GoodsCommonServiceModel extends \Business\AbstractModel
$maxPrice = intval($param['maxPrice']); $maxPrice = intval($param['maxPrice']);
$goodsSort = intval($param['goodsSort']); $goodsSort = intval($param['goodsSort']);
$attrValue = $param['attrValue']; $attrValue = $param['attrValue'];
list($where,$order,$attrStr) = $this->getParam($attrValue,$minPrice,$maxPrice,$goodsSort); list($where,$order,$attrStr,$saleSort) = $this->getParam($attrValue,$minPrice,$maxPrice,$goodsSort);
$keyword && $where[] = "goods_name like '%{$keyword}%'"; $keyword && $where[] = "goods_name like '%{$keyword}%'";
$commonDAO = \DAO\GoodsCommonModel::getInstance(); $commonDAO = \DAO\GoodsCommonModel::getInstance();
$couponDao = \DAO\Coupon\CouponModel::getInstance(); $couponDao = \DAO\Coupon\CouponModel::getInstance();
...@@ -80,11 +80,12 @@ class GoodsCommonServiceModel extends \Business\AbstractModel ...@@ -80,11 +80,12 @@ class GoodsCommonServiceModel extends \Business\AbstractModel
$where[] = 'goods_commonid in('.trim($ids,',').')'; $where[] = 'goods_commonid in('.trim($ids,',').')';
} }
} }
$saleSort ? $ttl = \Our\ApiConst::oneHour : \Our\ApiConst::oneDaySecond;
if($activities){ if($activities){
$activities = array_keys($activities); $activities = array_keys($activities);
$field = 'han_goods_common.goods_commonid AS goodsCommonId,goods_name AS goodsName,goods_price,goods_marketprice AS goodsMarketPrice,goods_image AS goodsImage,IFNULL(discount_price,goods_price) AS goodsPrice'; $field = 'han_goods_common.goods_commonid AS goodsCommonId,goods_name AS goodsName,goods_price,goods_marketprice AS goodsMarketPrice,goods_image AS goodsImage,IFNULL(discount_price,goods_price) AS goodsPrice';
if($storeId > 0){ if($storeId > 0){
$list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getListWithSale'),array($where,$field,$activities,$limit,$order,$attrStr),\Our\ApiConst::oneDaySecond,array($storeId)); $list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getListWithSale'),array($where,$field,$activities,$limit,$order,$attrStr),$ttl,array($storeId));
}else{ }else{
$list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getListWithSale'),array($where,$field,$activities,$limit,$order,$attrStr),\Our\ApiConst::oneMinute,array(\Our\ApiConst::zero)); $list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getListWithSale'),array($where,$field,$activities,$limit,$order,$attrStr),\Our\ApiConst::oneMinute,array(\Our\ApiConst::zero));
} }
...@@ -94,7 +95,7 @@ class GoodsCommonServiceModel extends \Business\AbstractModel ...@@ -94,7 +95,7 @@ class GoodsCommonServiceModel extends \Business\AbstractModel
$field = 'han_goods_common.'.$field; $field = 'han_goods_common.'.$field;
} }
if($storeId > 0 ){ if($storeId > 0 ){
$list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getGoodsList'),array($where,$field,$limit,$order,$attrStr),\Our\ApiConst::oneDaySecond,array($storeId)); $list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getGoodsList'),array($where,$field,$limit,$order,$attrStr),$ttl,array($storeId));
}else{ }else{
$list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getGoodsList'),array($where,$field,$limit,$order,$attrStr),\Our\ApiConst::oneMinute,array(\Our\ApiConst::zero)); $list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getGoodsList'),array($where,$field,$limit,$order,$attrStr),\Our\ApiConst::oneMinute,array(\Our\ApiConst::zero));
} }
...@@ -183,14 +184,17 @@ class GoodsCommonServiceModel extends \Business\AbstractModel ...@@ -183,14 +184,17 @@ class GoodsCommonServiceModel extends \Business\AbstractModel
}elseif ($maxPrice){ }elseif ($maxPrice){
$where[] = "goods_price <= {$maxPrice}"; $where[] = "goods_price <= {$maxPrice}";
} }
$saleSort = false;
$order = []; $order = [];
switch ($goodsSort){ switch ($goodsSort){
case 1: case 1:
$order[] = ['sale_num','DESC']; $order[] = ['sale_num','DESC'];
$order[] = ['eval_score','DESC']; $order[] = ['eval_score','DESC'];
$saleSort = true;
break; break;
case 2: case 2:
$order[] = ['sale_num','DESC']; $order[] = ['sale_num','DESC'];
$saleSort = true;
break; break;
case 3: case 3:
$order[] = ['goods_selltime','DESC']; $order[] = ['goods_selltime','DESC'];
...@@ -206,7 +210,7 @@ class GoodsCommonServiceModel extends \Business\AbstractModel ...@@ -206,7 +210,7 @@ class GoodsCommonServiceModel extends \Business\AbstractModel
$order[] = ['eval_score','DESC']; $order[] = ['eval_score','DESC'];
break; break;
} }
return array($where,$order,$attrStr); return array($where,$order,$attrStr,$saleSort);
} }
/** /**
* 获取商品列表 * 获取商品列表
...@@ -244,20 +248,21 @@ class GoodsCommonServiceModel extends \Business\AbstractModel ...@@ -244,20 +248,21 @@ class GoodsCommonServiceModel extends \Business\AbstractModel
$thirdClassId && $where[] = "gc_id_3 = {$thirdClassId}"; $thirdClassId && $where[] = "gc_id_3 = {$thirdClassId}";
$storeThirdClassId && $where[] = "goods_class_t_id = {$storeThirdClassId}"; $storeThirdClassId && $where[] = "goods_class_t_id = {$storeThirdClassId}";
$keyword && $where[] = "goods_name like '%{$keyword}%'"; $keyword && $where[] = "goods_name like '%{$keyword}%'";
list($_where,$order,$attrStr) = $this->getParam($attrValue,$minPrice,$maxPrice,$goodsSort); list($_where,$order,$attrStr,$saleSort) = $this->getParam($attrValue,$minPrice,$maxPrice,$goodsSort);
$where = array_merge($where,$_where); $where = array_merge($where,$_where);
$commonDAO = \DAO\GoodsCommonModel::getInstance(); $commonDAO = \DAO\GoodsCommonModel::getInstance();
$saleSort ? $ttl = \Our\ApiConst::oneHour : \Our\ApiConst::oneDaySecond;
if(!$activities){ if(!$activities){
$field = 'goods_commonid AS goodsCommonId,goods_name AS goodsName,goods_price as goodsPrice,goods_marketprice AS goodsMarketPrice,goods_image AS goodsImage,goods_commend AS isRecoment,goods_new AS isNew,goods_hot AS isHot'; $field = 'goods_commonid AS goodsCommonId,goods_name AS goodsName,goods_price as goodsPrice,goods_marketprice AS goodsMarketPrice,goods_image AS goodsImage,goods_commend AS isRecoment,goods_new AS isNew,goods_hot AS isHot';
if($attrStr){ if($attrStr){
$field = 'han_goods_common.'.$field; $field = 'han_goods_common.'.$field;
} }
$list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getGoodsList'),array($where,$field,$limit,$order,$attrStr),\Our\ApiConst::oneDaySecond,array($storeId)); $list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getGoodsList'),array($where,$field,$limit,$order,$attrStr),$ttl,array($storeId));
}else{ }else{
$activities = array_keys($activities); $activities = array_keys($activities);
$field = 'han_goods_common.goods_commonid AS goodsCommonId,goods_name AS goodsName,goods_price,goods_marketprice AS goodsMarketPrice,goods_image AS goodsImage,goods_commend AS isRecoment,goods_new AS isNew,goods_hot AS isHot,IFNULL(discount_price,han_goods_common.goods_price) AS goodsPrice'; $field = 'han_goods_common.goods_commonid AS goodsCommonId,goods_name AS goodsName,goods_price,goods_marketprice AS goodsMarketPrice,goods_image AS goodsImage,goods_commend AS isRecoment,goods_new AS isNew,goods_hot AS isHot,IFNULL(discount_price,han_goods_common.goods_price) AS goodsPrice';
$list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getListWithSale'),array($where,$field,$activities,$limit,$order,$attrStr),\Our\ApiConst::oneDaySecond,array($storeId)); $list = \Our\RedisHelper::cachedFunction(\Redis\Db4\GoodsCommonRedisModel::getInstance(),array(&$commonDAO, 'getListWithSale'),array($where,$field,$activities,$limit,$order,$attrStr),$ttl,array($storeId));
} }
$goods = []; $goods = [];
if(is_array($list) && !empty($list)){ if(is_array($list) && !empty($list)){
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment