Commit d6415d56 authored by testshenbd's avatar testshenbd

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

parents c2bdcabe f2847416
......@@ -47,7 +47,19 @@ class OrderConfirmUtil {
private $couponCacheFlag = false;
public function addOrder($data,$memberId,$currentAddress){
/**
* 添加订单
* @param $data
* @param $memberId
* @param $currentAddress
* @param string $formId 小程序微信支付支付表单id
* @return array
* @throws \Exception
* User: King <358887571@qq.com>
* Date: 2018/12/25 0025
* Time: 下午 3:01
*/
public function addOrder($data, $memberId, $currentAddress, $formId = ''){
$storeCartData = $this->checkPostData($data,$memberId,$currentAddress);
//return $storeCartData;
if(CURRENTVERSION==\Our\NameConst::versionDefault){
......@@ -55,7 +67,7 @@ class OrderConfirmUtil {
}else{
$storeCartData = $this->checkDeliveryTypeAndPaywayNew($storeCartData);
}
return $this->saveOrderInfo($storeCartData);
return $this->saveOrderInfo($storeCartData, $formId);
}
......@@ -477,7 +489,7 @@ class OrderConfirmUtil {
return $paySn;
}
public function saveOrderInfo($storeCartData){
public function saveOrderInfo($storeCartData, $formId = ''){
$dbName = \Our\DbNameConst::masterDBConnectName;
$orderModel = \DAO\Order\OrderModel::getInstance($dbName);
$orderModel->setDb($dbName);
......@@ -522,6 +534,7 @@ class OrderConfirmUtil {
$order['buyer_email'] = $this->address['mob_phone'];
}
}
$order['form_id'] = $formId;
$order['add_time'] = TIMESTAMP;
$order['payment_type'] = $storeCarts['payway'];
$order['order_amount'] = $storeCarts['orderAmount'];
......
......@@ -45,6 +45,10 @@ class Pay {
$orderInfo['openid'] = $authInfo['openid'];
$wxLitePay = WxLitePay::getInstance();
$return = $wxLitePay->doPay($orderInfo);
$prepayId = $wxLitePay->getPrepayId();
if($prepayId) {
\DAO\Order\OrderModel::getInstance()->update(array('pay_sn'=>$data['paySn']), array('prepay_id'=>$prepayId));
}
}else if($data['channel'] == \Our\NameConst::qqAppChannel){
$qPay = QPay::getInstance();
$return = $qPay->doPay($orderInfo);
......@@ -145,4 +149,4 @@ class Pay {
return self::$_instance;
}
}
\ No newline at end of file
}
......@@ -1269,7 +1269,8 @@ class CartServiceModel extends \Business\AbstractModel{
function addOrder($data,$memberId,$currentAddress){
$postData = json_decode($data['param'],true);
$orderUtil =\Order\OrderConfirmUtil::getInstance();
$return = $orderUtil->addOrder($data,$memberId,$currentAddress);
$formId = $data['formId'] ? $data['formId'] : '';
$return = $orderUtil->addOrder($data, $memberId, $currentAddress, $formId);
//删除订单列表缓存
$orderDao=\DAO\Order\OrderModel::getInstance();
$orderDao->deleteOrderCache($memberId,false,($postData['storeId'])?$postData['storeId']:$postData[0]['storeId']);
......@@ -1293,4 +1294,4 @@ class CartServiceModel extends \Business\AbstractModel{
return self::$_instance;
}
}
\ No newline at end of file
}
......@@ -849,8 +849,9 @@ class OrderServiceModel extends \Business\AbstractModel
public function canformRecieveOrder()
{
$orderDao = \DAO\Order\OrderModel::getInstance(DbNameConst::masterDBConnectName);
$memberDao=\DAO\MemberModel::getInstance(DbNameConst::masterDBConnectName);
$qmDeliverymanLogsDao = \DAO\Order\QmDeliverymanLogModel::getInstance(DbNameConst::masterDBConnectName);
$orders = $orderDao->getOrdersByOrderState(ApiConst::orderStateWaitRecieve, 'accept_time', ApiConst::orderWaitRecieveTwentyFourHours, $this->orderMessageField, array(ApiConst::bySeller, ApiConst::express));
$orders = $orderDao->getOrdersByOrderState(ApiConst::orderStateWaitRecieve, 'accept_time', ApiConst::orderWaitRecieveTwentyFourHours, $this->orderMessageField, array(ApiConst::bySeller, ApiConst::bySelf));
if (!empty($orders)) {
$sellerTypeOrderIds = $orderDao->getShippingTypeSellerOrdersByOrders($orders);
$qmDeliverymanLogs = $qmDeliverymanLogsDao->getFinishDeliveryByOrderId($sellerTypeOrderIds);
......@@ -864,15 +865,24 @@ class OrderServiceModel extends \Business\AbstractModel
if ($order['shippingType'] == ApiConst::bySeller) {
if (isset($qmDeliverymanLogsOrderIds[$order['orderId']])) {
array_push($sellerOrderIds, $order['orderId']);
$orderDao->deleteOrderCache($order['buyerId'], $order['orderId'], $order['storeId'],true);
$orderDao->deleteOrderCache($order['buyerId'], $order['orderId'], $order['storeId'], true);
}
} else {
}
if($order['shippingType'] == ApiConst::bySelf){
$limitTime = TIMESTAMP - ApiConst::orderWaitRecieveThreeDays;
if ($order['acceptTime'] < $limitTime) {
array_push($expressOrderIds, $order['orderId']);
$orderDao->deleteOrderCache($order['buyerId'], $order['orderId'], $order['storeId'],true);
}
}
// } else {
// $limitTime = TIMESTAMP - ApiConst::orderWaitRecieveThreeDays;
// if ($order['acceptTime'] < $limitTime) {
// array_push($expressOrderIds, $order['orderId']);
// $orderDao->deleteOrderCache($order['buyerId'], $order['orderId'], $order['storeId'],true);
// }
// }
$memberDao->deleteTotalCache($order['buyerId']);
\Our\RedisHelper::memberTotalFromStateToState($order['buyerId'], $order['orderState'], ApiConst::orderStateComplete);
}
$updateOrderIds = array_merge($sellerOrderIds, $expressOrderIds);
......
......@@ -104,6 +104,7 @@ class DeliveryServiceModel extends \Business\AbstractModel
$orderDao->deleteOrderCache(null, $data['orderId'], $data['storeId'], true,false,$deliveryManMemberIds);
$storeDao->deleteStoreCache($data['storeId'],$data['orderId']);
$storeDao->deleteStoreRefundCache($data['storeId'],$data['orderId']);
$orderDao->deleteOrderCache($orderD['buyerId'],$orderD['orderId']);
//配送员推送
$push=\Our\Push::getInstance();
if($data['orderType']==ApiConst::orderTypeRefund){
......
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