Commit f9851ec6 authored by chenchuanwen's avatar chenchuanwen

pc

parent 7e17f2b8
......@@ -312,6 +312,7 @@ class ApiConst
const signClassStyle = 2;
const isEffective=0;
const notEffectiveAllRefund=3;
const defaultAddressCount = 3;
......
......@@ -1257,6 +1257,7 @@ class RefundServiceModel extends \Business\AbstractModel
$refundArray['add_time'] = TIMESTAMP;
$refundArray['refund_type']=$refund['refundType'];
$refundArray['refund_shipping_type']=isset($refund['refundShippingType'])?$refund['refundShippingType']:ApiConst::zero;
$refundArray['payment_type']=$orderInfo['paymentType'];
$refundArrayUnLine=Common::convertUnderline($refundArray);
$state = $refundReturnDao->addRefundReturn($refundArray,$orderInfo,$orderGoods);
......
......@@ -963,8 +963,8 @@ class ShopkeeperServiceModel extends \Business\AbstractModel
{
$refundReturnDao = \DAO\Order\RefundReturnModel::getInstance(DbNameConst::salveDBConnectName);
// $storeMemberStatisticDao = \DAO\StoreMemberStatisticsModel::getInstance(DbNameConst::masterDBConnectName);
// $orderGoodsDao = \DAO\Order\OrderGoodsModel::getInstance(DbNameConst::masterDBConnectName);
// $orderDao = \DAO\Order\OrderModel::getInstance(DbNameConst::masterDBConnectName);
$orderGoodsDao = \DAO\Order\OrderGoodsModel::getInstance(DbNameConst::masterDBConnectName);
$orderDao = \DAO\Order\OrderModel::getInstance(DbNameConst::masterDBConnectName);
$gmtUpdate = file_get_contents($this->baseDir . PathConst::refundRetrunGmtUpdate);
$gmtUpdate = $gmtUpdate ? $gmtUpdate : ApiConst::zero;
$this->taskIndex = PageConst::taskPageBegin;
......@@ -974,14 +974,28 @@ class ShopkeeperServiceModel extends \Business\AbstractModel
$this->taskIndex++;
$refundReturns = isset($refundReturns['list']) ? $refundReturns['list'] : false;
$reduceDatasDistinct=array();
if (!empty($refundReturns)) {
foreach ($refundReturns as $refundReturn) {
$res = $orderGoodsDao->getCountByOrderId($refundReturn['orderId']);
if($res){
$refundReturnWhere['order_id']=$refundReturn['orderId'];
$refundReturnWhere['is_suc_refund']=ApiConst::refundSuccess;
$refundCount= $refundReturnDao->getCount($refundReturnWhere);
if($res==$refundCount){
$orderWhere['order_id']=$refundReturn['orderId'];
$updateData['is_effective']=ApiConst::notEffectiveAllRefund;
$orderDao->update($orderWhere,$updateData);
}
}
$key=$refundReturn['storeId'].'+'.$refundReturn['buyerId'];
$reduceDatasDistinct[$key]=$refundReturn;
}
}
$this->insertStoreMemberStaticsDistinct($reduceDatasDistinct);
} while ($refundReturns);
//$storeMemberStatisticDao->addAllReduce($refundReturns);
file_put_contents($this->baseDir . PathConst::refundRetrunGmtUpdate, TIMESTAMP);
......
......@@ -492,9 +492,9 @@ class OrderModel extends \DAO\AbstractModel
$where= $this->db->getSqlWhereByArray($where);
}
if($today){
$refundAmount= $refundReturnDao->getSumRefundAmountByStoreId($storeId,$today);
$refundAmount= $refundReturnDao->getSumRefundAmountByStoreId($storeId,$today,true);
}else{
$refundAmount= $refundReturnDao->getSumRefundAmountByStoreId($storeId);
$refundAmount= $refundReturnDao->getSumRefundAmountByStoreId($storeId,false,true);
}
$res=$this->db->from($this->_tableName)->where($where)->select(" buyer_id as buyerId,store_id as storeId,order_amount as orderTotalOnline")->fetchOne();
if(!$res){
......
......@@ -37,7 +37,16 @@ class OrderGoodsModel extends \DAO\AbstractModel
{
}
public function getCountByWhere($where){
$this->setDb($this->dbName);
$goodsCount = $this->db->select("count(*) as cou")->from($this->_tableName)->where($where)->fetchNum();
return $goodsCount?$goodsCount:ApiConst::zero;
}
public function getCountByOrderId($orderId){
$this->setDb($this->dbName);
$where['order_id']=$orderId;
return $this->getCountByWhere($where);
}
public function getOrderGoodsList($where, $field, $group = null, $limit = [])
{
$this->setDb();
......
......@@ -7,6 +7,7 @@ use Error\CodeConfigModel;
use Error\ErrorModel;
use OSS\Common;
use Our\ApiConst;
use Our\ArrayConst;
use Our\DbNameConst;
use Our\DescribeConst;
use Our\ImageConst;
......@@ -43,8 +44,8 @@ class RefundReturnModel extends \DAO\AbstractModel
public function getCount($where)
{
$this->setDb();
return $this->db->from($this->_tableName)->where($where)->fetchNum();
$this->setDb($this->dbName);
return $this->db->from($this->_tableName)->where($where)->select()->fetchNum();
}
public function getAll($where, $field, $db = DbNameConst::salveDBConnectName)
......@@ -55,13 +56,26 @@ class RefundReturnModel extends \DAO\AbstractModel
}
public function getRefundSuccessMoneyByStoreId($storeId, $beginTime = false, $endTime = false)
public function getRefundSuccessMoneyByStoreId($storeId, $beginTime = false, $endTime = false,$online=false)
{
$this->setDb($this->dbName);
if ($beginTime) {
$where = \Our\Common::format(" store_id={0} and is_suc_refund={1} and gmt_update between {2} and {3}", $storeId, ApiConst::refundSuccess, $beginTime, $endTime);
$where['store_id']=$storeId;
$where['is_suc_refund']=ApiConst::refundSuccess;
if($online){
$where['payment_type']=array('in',ArrayConst::orderPayTypeOnlines);
}
$where['gmt_update']=array('between',$beginTime,$endTime);
} else {
$where = \Our\Common::format(" store_id={0} and is_suc_refund={1}", $storeId, ApiConst::refundSuccess);
$where['store_id']=$storeId;
$where['is_suc_refund']=ApiConst::refundSuccess;
if($online){
$where['payment_type']=array('in',ArrayConst::orderPayTypeOnlines);
}
//$where = \Our\Common::format(" store_id={0} and is_suc_refund={1}", $storeId, ApiConst::refundSuccess);
}
if(is_array($where)){
$where = $this->db->getSqlWhereByArray($where);
}
$res = $this->db->from($this->_tableName)->select($this->sumRefundAmount)->where($where)->fetchValue();
return !empty($res) ? $res : ApiConst::zero;
......@@ -729,13 +743,13 @@ class RefundReturnModel extends \DAO\AbstractModel
return $res?$res:array();
}
public function getSumRefundAmountByStoreId($storeId,$today=false){
public function getSumRefundAmountByStoreId($storeId,$today=false,$isOnline=false){
$this->setDb($this->dbName);
if($today){
$todayBegin=\Our\Common::getTodayBeginTimpSpan();
$res=$this->getRefundSuccessMoneyByStoreId($storeId,$todayBegin,TIMESTAMP);
$res=$this->getRefundSuccessMoneyByStoreId($storeId,$todayBegin,TIMESTAMP,$isOnline);
}else{
$res=$this->getRefundSuccessMoneyByStoreId($storeId);
$res=$this->getRefundSuccessMoneyByStoreId($storeId,false,false,$isOnline);
}
return $res?$res:ApiConst::zero;
......
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