當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Order::chkOrder方法代碼示例

本文整理匯總了PHP中common\models\Order::chkOrder方法的典型用法代碼示例。如果您正苦於以下問題:PHP Order::chkOrder方法的具體用法?PHP Order::chkOrder怎麽用?PHP Order::chkOrder使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在common\models\Order的用法示例。


在下文中一共展示了Order::chkOrder方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: actionYadopay

 public function actionYadopay()
 {
     \Yii::info('start', 'app/payments/yad');
     $r = new Request();
     $param = $r->post();
     $code = 0;
     $err_msg = null;
     $order = null;
     if (!$this->checkMD5($param)) {
         // кривой md5
         $code = 1;
         //$err_msg = '';
     } else {
         $order = Order::chkOrder($param['orderNumber'], $param['customerNumber']);
         if ($order) {
             // ордер нашелся
             if ($order->price < $param['orderSumAmount'] * 100) {
                 // и даже сумма норм
                 if ($param['action'] == 'paymentAviso' && !$order->closed_at) {
                     // это уже сам платеж и ордер не закрыт еще
                     // значит надо закрыть
                     $order->price = $param['orderSumAmount'] * 100;
                     $order->closed_at = new Expression('NOW()');
                     if ($order->validate() && $order->save()) {
                         // ok, все сохранилось
                     } else {
                         // что-то пошло не так
                         $code = 200;
                         $err_msg = array_values($order->errors)[0][0];
                         //vd($order->errors);
                     }
                 }
             } else {
                 // сумма неправильная
                 $err_msg = 'Неверная сумма';
             }
         } else {
             // нет такого ордера
             $err_msg = 'Платеж не найден';
         }
     }
     if (!$code && $err_msg) {
         $code = 100;
     }
     //      \Yii::$app->response->format = \yii\web\Response::FORMAT_XML;
     $response = \Yii::$app->response;
     $response->format = Response::FORMAT_RAW;
     $response->getHeaders()->set('Content-Type', 'application/xml; charset=utf-8');
     //      return $this->render('sitemap');
     return $this->buildResponse($param['action'], $param['invoiceId'], $code, $err_msg);
     return $this->render('yadopay', ['response' => ['action' => $param['action'], 'invoiceId' => $param['invoiceId'], 'code' => $code, 'msg' => $err_msg, 'shopId' => $this->shopId], 'rrr' => ['param' => $param, 'order' => $order]]);
 }
開發者ID:pjoger,項目名稱:pon4ik,代碼行數:52,代碼來源:OrderController.php


注:本文中的common\models\Order::chkOrder方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。