middleware('auth.api'); $this->user = \Auth::guard('api')->user(); $this->uid = \Auth::guard('api')->id(); } private function getpayOrder(Order $order, $type) { $payOrder = Payment::create([ 'order_id' => $order->id, 'type' => $type, 'amount' => $order->total - $order->score, ]); return $payOrder; } public function index(Request $request) { $orderid = $request->orderId; $order = Order::find($orderid); // $app = app('wechat.mini_program'); // $wechatMessage = $app->auth->session($request->code); // $openid = $wechatMessage->openid; $openid = $request->openid; $payOrder = $this->getpayOrder($order, 'WECHAT'); $payment = app('wechat.payment.mini'); $result = $payment->order->unify([ 'body' => '商城订单', 'out_trade_no' => $payOrder->trade_no, 'total_fee' => 0.01 * 100, 'notify_url' => 'http://mapi.bohaimingpin.com/callback/index', 'trade_type' => 'JSAPI', 'openid' => $openid, ]); if ($result['return_code'] == 'SUCCESS' && isset($result['prepay_id'])) { $json = $payment->jssdk->bridgeConfig($result['prepay_id']); return $this->success($json); } else { return $this->failed($result['return_msg']); } } }