$order_info['order_no']]); $res = DepositPresaleOrder::payFinalPayment($order, $order_info['pay_type']); if($res === false) throw new Exception(DepositPresaleOrder::getStaticError()); $main_order = Order::findOne(['id' => $order['order_id']]); if($main_order && $main_order->created_at != $order->created_at){ $main_order->created_at = $order->created_at; $result = $main_order->save(); if(!$result){ throw new Exception($main_order->getError()); } } $main_res = Order::pay($main_order, $order_info['pay_type'], $main_order['out_trade_no']); if($main_res === false) throw new Exception(Order::getStaticError()); return true; } catch (Exception $e) { echo $e->getMessage(); $this->setStaticError($e->getMessage()); return false; } } }