Example #1
0
 /**
  * token登录(用于测试)
  * 
  * @param Request $request
  * @param Response $response
  */
 public function tokenLogin(Request $request, Response $response)
 {
     //检查token
     $token = $request->get('token', '');
     if ('' == $token) {
         $this->tips($request, $response);
     }
     //检查数据库token,以获取openid
     $openid = User_Model::checkAccessToken($token);
     if ($openid === FALSE) {
         $this->tips($request, $response);
     }
     //通过openid 获取用户信息
     $userInfo = Member::getTinyInfoByOpenid($openid);
     if (empty($userInfo)) {
         Fn::show_error_message();
     }
     //设置本地登录状态
     Member::setLocalLogin($userInfo['uid']);
     //Token登录后去到当前页(避免session没写成功走正常流程)
     $response->redirect($request->url());
 }
Example #2
0
 /**
  * tips页显示
  * @param Request $request
  * @param Response $response
  */
 public function order_topay(Request $request, Response $response)
 {
     if ($request->is_post()) {
         global $user;
         if (!$user->uid) {
             Fn::show_error_message('未登录,请先登录');
         }
         $this->v = new PageView('', 'topay');
         $pay_mode = $request->post('pay_mode', 'wxpay');
         //默认微信支付
         $order_id = $request->post('order_id', 0);
         $back_url = $request->post('back_url', '');
         $supported_paymode = ['wxpay' => '微信安全支付', 'alipay' => '支付宝支付'];
         if (!in_array($pay_mode, array_keys($supported_paymode))) {
             Fn::show_error_message('不支持该支付方式: ' . $pay_mode);
         }
         if (!$order_id) {
             Fn::show_error_message('订单为空');
         }
         $order_info = Order::info($order_id);
         if (empty($order_info)) {
             Fn::show_error_message('订单不存在');
         } else {
             $order_info['order_goods'] = Goods::getOrderGoods($order_info['order_id']);
             if (empty($order_info['order_goods'])) {
                 Fn::show_error_message('订单下没有对应商品');
             }
         }
         if ('wxpay' == $pay_mode) {
             $jsApiParams = Wxpay::unifiedOrder($order_info, $user->openid);
             $this->v->assign('jsApiParams', $jsApiParams);
         }
         $this->v->assign('pay_mode', $pay_mode);
         $this->v->assign('supported_paymode', $supported_paymode);
         $this->v->assign('back_url', $back_url);
         $response->send($this->v);
     } else {
         Fn::show_error_message('非法访问');
     }
 }