public function payCourseAction(Request $request, $courseId)
 {
     $formData = $request->query->all();
     $formData['courseId'] = $courseId;
     $token = $this->getUserToken($request);
     $user = $this->getCurrentUser();
     if (!$user->isLogin()) {
         return $this->createErrorResponse($request, 'not_login', '用户未登录,创建课程订单失败。');
     }
     $order = $this->getCourseOrderService()->createOrder($formData);
     if ($order['status'] == 'paid') {
         $result = array('status' => 'ok', 'paid' => true);
     } else {
         $payment = $this->setting('payment', array());
         if (empty($payment['enabled'])) {
             return $this->createJson($request, array('status' => 'error', 'message' => '支付功能未开启!'));
         }
         if (empty($payment['alipay_enabled'])) {
             return $this->createJson($request, array('status' => 'error', 'message' => '支付宝支付未开启!'));
         }
         if (empty($payment['alipay_key']) || empty($payment['alipay_secret']) || empty($payment['alipay_account'])) {
             return $this->createJson($request, array('status' => 'error', 'message' => '支付宝参数不正确!'));
         }
         if (empty($payment['alipay_type']) || $payment['alipay_type'] != 'direct') {
             $result = array('status' => 'ok', 'paid' => false, 'payUrl' => $this->generateUrl('mapi_order_submit_pay_request', array('id' => $order['id'], 'token' => $token['token']), true));
         } else {
             $result = array('status' => 'ok', 'paid' => false, 'payUrl' => MobileAlipayConfig::createAlipayOrderUrl($request, "edusoho", $order));
         }
     }
     return $this->createJson($request, $result);
 }