Commit b2fad5b6 authored by liuyuzhen's avatar liuyuzhen

Merge branch 'master_dev' of git.shenbd.com:qm-develop/shenbd into lyz

parents cc087ad3 090325dc
......@@ -29,7 +29,8 @@ class GoodsUtil {
}
if($activities){
if($data = \DAO\SaleGoodsModel::getInstance()->getSaleGoods($storeId,$goodsId)){
return \DAO\SaleGoodsModel::getInstance()->getSalePrice($data,$activities,$array);
$price = \DAO\SaleGoodsModel::getInstance()->getSalePrice($data,$activities,$array);
return $price ? $price : $goods['goods_price'];
}
}
return $goods['goods_price'];
......
......@@ -798,7 +798,7 @@ class OrderConfirmUtil {
/**
* 更新商品对应库存(更新数据库库存同时更新redis缓存)
*
* updateSaleNumFlag 是否需要增减销量
* @param $storeCarts
*/
public function updateGoodsStorage($storeCartsList,$op = \Our\ApiConst::minus,$updateSaleNumFlag= true ){
......@@ -880,12 +880,14 @@ class OrderConfirmUtil {
$goodsDao = \DAO\GoodsModel::getInstance($dbName);
$goodsCommonDao = \DAO\GoodsCommonModel::getInstance($dbName);
$resultGoodsCommon = $goodsCommonDao->updateGoodsStorage($goodsCommons,$op,$updateSaleNumFlag);
$resultGoods = $goodsDao->updateGoodsStorage($goodsNewList,$op);
if(!($resultGoodsCommon&&$resultGoods)){
\Error\ErrorModel::throwException(\Error\CodeConfigModel::goodsStorageToDBFailedForOrder);
}
}
if($blGoodsList){
foreach($blGoodsList as $key=>$blGoods){
$pBundlingCacheResult = $pBundlingDao->opBlGoodsStorage($key,$blGoods['blStorage']);//组合销售库存删减
......
......@@ -1302,10 +1302,10 @@ class GoodsCommonServiceModel extends \Business\AbstractModel
}
if($activities){
if($data = \DAO\SaleGoodsModel::getInstance()->getSaleGoods($storeId,$goodsCommon['goods_commonid'],true)){
return \DAO\SaleGoodsModel::getInstance()->getSalePrice($data,$activities);
$price = \DAO\SaleGoodsModel::getInstance()->getSalePrice($data,$activities);
}
}
return $goodsCommon['goods_price'];
return $price ? $price : $goodsCommon['goods_price'];
}
/**
......
......@@ -776,7 +776,7 @@ class OrderServiceModel extends \Business\AbstractModel
}
file_put_contents($this->baseDir . \Our\PathConst::orderCloseWaitRecieveOrder, $endTime);
}
public function updateDateGoodsStoregeByOrderGoods($orderGoods,$type=ApiConst::plus){
public function updateDateGoodsStoregeByOrderGoods($orderGoods,$type=ApiConst::plus,$updateSaleNumFlag=true){
$orderConfirmUtilDao=OrderConfirmUtil::getInstance(DbNameConst::masterDBConnectName);
$storeCartsList=array();
$storeCarts=array();
......@@ -792,7 +792,7 @@ class OrderServiceModel extends \Business\AbstractModel
}
// $orderDao->updateNotRecieveOrders(ApiConst::orderStateWaitConfirm, ApiConst::orderStateClose, 'add_time', ApiConst::orderStateWaitConfirmBeyond, $this->orderMessageField);
try{
$orderConfirmUtilDao->updateGoodsStorage($storeCartsList,$type);
$orderConfirmUtilDao->updateGoodsStorage($storeCartsList,$type,$updateSaleNumFlag);
return true;
}catch(\Exception $ex){
$orderGoodsIds=array_column($orderGoods,'goodsId');
......@@ -829,7 +829,7 @@ class OrderServiceModel extends \Business\AbstractModel
foreach($goodses as &$goods){
$goods['goodsNum']=$num;
}
if($this->updateDateGoodsStoregeByOrderGoods($goodses,$type)){
if($this->updateDateGoodsStoregeByOrderGoods($goodses,$type,false)){
return true;
}
}
......
......@@ -276,7 +276,7 @@ class RefundServiceModel extends \Business\AbstractModel
$push->sendTcpMessage();
}
if ($refund_array['seller_state'] == ApiConst::refundSellerAgree){
if ($sellerState == ApiConst::refundSellerAgree){
$orderGoodsUpdateData['refund_state_name']=DescribeConst::sellerAgreeReturn;
$orderGoodsUpdateData['gmt_update']=TIMESTAMP;
$orderGoodsWhere['rec_id']=$return['order_goods_id'];
......@@ -292,10 +292,10 @@ class RefundServiceModel extends \Business\AbstractModel
$refund_array['goods_state']=2;
} elseif ($refund_array['seller_state'] == '3') {
$refund_array['refund_state'] = '3';//状态:1为处理中,2为待管理员处理,3为已完成
$refund_array['refund_state'] = ApiConst::refundStateComplete;//状态:1为处理中,2为待管理员处理,3为已完成
} else {
$refund_array['seller_state'] = '2';
$refund_array['refund_state'] = '2';
$refund_array['refund_state'] = ApiConst::refundStateComplete;
$refund_array['return_type'] = '1';//选择弃货
}
$refund_array['refund_amount']=$refundAmount;
......@@ -405,7 +405,7 @@ class RefundServiceModel extends \Business\AbstractModel
}
}
$refund_array['refund_state'] = '3'; //状态:1为处理中,2为待管理员处理,3为已完成
$refund_array['refund_state'] = ApiConst::refundStateComplete; //状态:1为处理中,2为待管理员处理,3为已完成
$state = $refundReturnDao->editRefundReturn($whereRefund, $refund_array);
if(!$state){
$refundReturnDao->db->doRollback();
......@@ -458,7 +458,7 @@ class RefundServiceModel extends \Business\AbstractModel
ErrorModel::throwException(CodeConfigModel::refundAddPointsLogError);
}
}
$refund_array['refund_state'] = '3'; //状态:1为处理中,2为待管理员处理,3为已完成
$refund_array['refund_state'] = ApiConst::platProccess; //状态:1为处理中,2为待管理员处理,3为已完成
$state = $refundReturnDao->editRefundReturn($whereRefund, $refund_array);
if($state){ //退款记录成功
......@@ -473,6 +473,7 @@ class RefundServiceModel extends \Business\AbstractModel
$is_direct_refund = $storeDAO->getInfoById($storeId, 'is_direct_refund', 'is_direct_refund');
$orderGoodsDao->update(array('rec_id'=>$refund['order_goods_id']), array('refund_state_name'=>'卖家同意退款'));
if($is_direct_refund==1){ //支持直接退款
$refund_array['refund_state']=ApiConst::refundStateComplete;
//退款 检测该订单是否为线上支付
$updateData = array('is_suc_refund'=>1,'gmt_update'=>TIMESTAMP);
if($refund_array['refund_amount']>0){
......
......@@ -255,9 +255,13 @@ class GoodsCommonModel extends \DAO\AbstractModel {
$baseSql = "UPDATE {$this->_tableName} set ";
$updateAllSql = $baseSql;
$dataIds = array();
if($updateSaleNumFlag&&$op!=\Our\ApiConst::set){
if($op!=\Our\ApiConst::set){
$updateSaleNumOp = $op==\Our\ApiConst::minus?'+':'-';
}else{
$updateSaleNumOp = '=';
$updateSaleNumFlag= false;
}
$goodsCommonSql = ' goods_storage = case goods_commonid ';
$goodsEdittimeSql = ' goods_edittime = case goods_commonid ';
if($updateSaleNumFlag){
......
......@@ -110,7 +110,7 @@ class SaleGoodsModel extends \DAO\AbstractModel {
if($data && in_array($data['sale_act_id'],$activitiesKeys)){
$price = $data['discount_price'];
}
if($array) {
if($array && $price) {
return array('sale_act_id'=>$data['sale_act_id'],'sale_id'=>$activities[$data['sale_act_id']],'price'=>$price);
}
return $price;
......
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