|
@@ -72,7 +72,6 @@ class MPrice extends MBaseModel
|
|
|
parent::__construct($this->onlineEnterpriseId, $this->onlineUserId);
|
|
|
$this->objDPriceAdjustment = new DPriceAdjustment();
|
|
|
$this->objDPriceRangeSheet = new DPriceRangeSheet();
|
|
|
- $this->objDPriceRangeSheet->setTable($this->objDPriceRangeSheet->get_Table() . '_' . $this->onlineEnterpriseId);
|
|
|
$this->objDPriceAdjustment->setSearchIndex('goods_search')->setType('goods');
|
|
|
|
|
|
}
|
|
@@ -230,7 +229,7 @@ class MPrice extends MBaseModel
|
|
|
}
|
|
|
|
|
|
if (empty($dbResult)) {
|
|
|
- return ResultWrapper::success($returnData);
|
|
|
+ return ResultWrapper::success([]);
|
|
|
}
|
|
|
|
|
|
// 进行生效价格区域类型分组
|
|
@@ -1489,6 +1488,7 @@ class MPrice extends MBaseModel
|
|
|
return ResultWrapper::success([]);
|
|
|
}
|
|
|
|
|
|
+ $this->objDPriceRangeSheet->setTable($this->objDPriceRangeSheet->get_Table() . '_' . $this->onlineEnterpriseId);
|
|
|
$result = $this->objDPriceRangeSheet->select(['goodsId' => $goodsIds], 'goodsId,salePrice');
|
|
|
if ($result === false) {
|
|
|
return ResultWrapper::fail($this->objDPriceRangeSheet->error(), ErrorCode::$dberror);
|
|
@@ -1506,12 +1506,12 @@ class MPrice extends MBaseModel
|
|
|
|
|
|
/**
|
|
|
* 根据goodsId获取商品的最高/最低价格
|
|
|
- * @param array $goodsIds
|
|
|
- * @param null $customerId
|
|
|
+ * @param array $goodsIds 商品id集合
|
|
|
+ * @param null $customerId 客户id
|
|
|
+ * @param $haveActivity boolean 活动价是否参与最高最低价
|
|
|
* @return ResultWrapper
|
|
|
- * @throws \Exception
|
|
|
*/
|
|
|
- public function getPolePrice(array $goodsIds, $customerId = null)
|
|
|
+ public function getPolePrice(array $goodsIds, $customerId = null, $haveActivity = true)
|
|
|
{
|
|
|
$isHaveSkuIds = [];
|
|
|
//获取商品salePrice
|
|
@@ -1584,23 +1584,25 @@ class MPrice extends MBaseModel
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //查询商品活动价
|
|
|
- $activityPriceResult = self::getActivityPriceByGoodsIds($goodsIds,$customerType);
|
|
|
+ if($haveActivity){
|
|
|
+ //查询商品活动价
|
|
|
+ $activityPriceResult = self::getActivityPriceByGoodsIds($goodsIds,$customerType);
|
|
|
|
|
|
- if (!$activityPriceResult->isSuccess()){
|
|
|
- return ResultWrapper::fail($activityPriceResult->getData(), $activityPriceResult->getErrorCode());
|
|
|
- }
|
|
|
- $activityPrice = $activityPriceResult->getData();
|
|
|
+ if (!$activityPriceResult->isSuccess()){
|
|
|
+ return ResultWrapper::fail($activityPriceResult->getData(), $activityPriceResult->getErrorCode());
|
|
|
+ }
|
|
|
+ $activityPrice = $activityPriceResult->getData();
|
|
|
|
|
|
- //计算商品活动价 和 计算属性最小单位展示价格
|
|
|
- foreach ($nationSalePrice as $goodsId => $salePrice){
|
|
|
- foreach ($salePrice as $skuId => $row){
|
|
|
- if (isset($activityPrice[$goodsId][$skuId])){
|
|
|
- $nationSalePrice[$goodsId][$skuId]['salePrice'] = $activityPrice[$goodsId][$skuId]['salePrice'];
|
|
|
- }
|
|
|
+ //计算商品活动价 和 计算属性最小单位展示价格
|
|
|
+ foreach ($nationSalePrice as $goodsId => $salePrice){
|
|
|
+ foreach ($salePrice as $skuId => $row){
|
|
|
+ if (isset($activityPrice[$goodsId][$skuId])){
|
|
|
+ $nationSalePrice[$goodsId][$skuId]['salePrice'] = $activityPrice[$goodsId][$skuId]['salePrice'];
|
|
|
+ }
|
|
|
|
|
|
- if(isset($nationSalePrice[$goodsId][$skuId]['minUnitPriceConvert']) && !empty($nationSalePrice[$goodsId][$skuId]['minUnitPriceConvert'])){
|
|
|
- $nationSalePrice[$goodsId][$skuId]['minUnitPrice'] = bcdiv($nationSalePrice[$goodsId][$skuId]['salePrice'], $nationSalePrice[$goodsId][$skuId]['minUnitPriceConvert'], 2);
|
|
|
+ if(isset($nationSalePrice[$goodsId][$skuId]['minUnitPriceConvert']) && !empty($nationSalePrice[$goodsId][$skuId]['minUnitPriceConvert'])){
|
|
|
+ $nationSalePrice[$goodsId][$skuId]['minUnitPrice'] = bcdiv($nationSalePrice[$goodsId][$skuId]['salePrice'], $nationSalePrice[$goodsId][$skuId]['minUnitPriceConvert'], 2);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -1615,7 +1617,6 @@ class MPrice extends MBaseModel
|
|
|
*/
|
|
|
public function commonPriceData($priceData, $nationSalePrice, $skuId, $isHaveSkuIds =[])
|
|
|
{
|
|
|
-
|
|
|
if(in_array($skuId, $isHaveSkuIds)){
|
|
|
return [
|
|
|
'minSalePrice' => $priceData['salePrice'],
|