소스 검색

回调调试

黄宗昌 2 년 전
부모
커밋
6d5f93d45d
2개의 변경된 파일28개의 추가작업 그리고 4개의 파일을 삭제
  1. 26 3
      app/Http/Controllers/V1/PayController.php
  2. 2 1
      app/Models/User.php

+ 26 - 3
app/Http/Controllers/V1/PayController.php

xqd xqd xqd
@@ -1,6 +1,7 @@
 <?php
 
 namespace App\Http\Controllers\V1;
+use App\Models\User;
 use App\Models\UserMemberOrder;
 use Illuminate\Http\Request;
 
@@ -12,17 +13,28 @@ use Alipay\EasySDK\Kernel\Config;
  */
 class PayController extends Controller
 {
+    public function __construct()
+    {
+        $this->user = auth('api')->user();
+        $this->userId = $this->user ? $this->user->id : 0;
 
+        //如果用户被删除,会自动退出登录
+        if (!empty($this->user->deleted_at)) {
+            $this->user->online = 0;
+            $this->user->save();
+            auth('api')->logout();
+        }
+        Factory::setOptions($this->getOptions());
+    }
     public function getOptions(){
         $options = new Config();
         $options->protocol = 'https';
         $options->gatewayHost = 'openapi.alipay.com';
         $options->signType = 'RSA2';
-
         $options->appId = '2016082201783461';
         $options->merchantPrivateKey = "MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDrHSXWmI/CgI5sdy+RWLKQixj4PwUnkKq+vSxSSkWBCnL0y3/TOQDSCdYENLc61mXZBi7Aq6igGt7Fr5Kdul35KxMsZa1OJ4i3fGG1y2KC3DePzwduIRn8n/INgKAeOAwJaCWFhQ5Ux+c4U2pFMWFtKKgpfVq2Yotm8pH+IUUflKn2UhlSu60W9sHp/LIqrHgh1NztnEQG7Bhlp+5RJ7qHiZi1C88w99s9ff43TAuWFiN6JQwmIMLnH5XsJU/qa7G4QrMFawPKXyU/tvB/IC5pWUJfRC+x03JMvBT+DZ9qDIcyDRh3Wsmdb8tYKnw5wpzRLZDY1MJG63vaLiMRTRsXAgMBAAECggEAT8Dwb+4KfgkLxwFbEmvLDrsQek0uW3B4awFSwotNLmuz+RP6xVTF0XnirkSPjxbhL5AoVdUk+0KCJP7ctkJc1EPnWh0Xf7Zrawp3PqrCPO+krVSmCZaS8R30ht4F8ppCgwJgD/3Fkb7J0VKCbvxENzoeaQyLs+iTrxVDrrfscbxevx75juU0A0bmIOOYuFWGvVjVBMqxb5ZlayuB73nq3rDqzaC8MxVquN8j8KkU+in8e1MsXkCY/ZtT6YsC5zRcR85qF053pcYxATLpNxyKuBzDU4alf1zYGs/cVyONTxu2KTRQQ8tCyNwc0o7T6TLnxaBxeyXgXbNytGk+aSsruQKBgQD5mfGFQcYK+qlIAhk59uHiWfGHI711jV6O2YCkCanFpujIZkaqhmaCd9vszgvyVLd1MDwMSY+3dFM+L4l32NaOen5ljutszsZtnfV82RyzdemycoMe5KxZ1ahD3CuWrzg49X13dPA9bvHGFWutSPZwj3haabjjN3826kAOnBGguwKBgQDxJCCjA8ngJnjH+LRLlKsCRPNlG8KRaqpTaxftZVSLAkdeFGRejnl3SN1f7/JFF4L4V0uKbA+eqNwOKoBouSn1MGagJaRY/goomAyS48AvmQiwi3XelRdw0M5jdY4ySwCmBRL69JSA03PJdvvECQFRKFY7YPyfvdxyuWqcLJ7nVQKBgQDlgeTvuAQHMmcXfD5/6v/W5wdMUNOz1HK+/UXpD62YvZnMMycFQ6Hck6OYgfnAMJ+kVN7SGY3ZjU/BnWpU1gCrb/zrG1hka1lPj/AbhXN7nI9vcxYYAQJtdCVNiJRX8PPMhAaDIfaJNot/rVCePLnF1FZBJHdKDkyeTRTrmhwnYwKBgQCE+OISYmVw+GYEB44MW4fNcY4yBBPPsl0IMPb5zrXHDdOi+mW6iqBKeeCxJZSYKvXq0eBzDVGzsPPfz+oNVYXgkfcVeoxdEoExj17npTV2SdIz4EN4IQjTCiG1UL6/1wIdipDD2BkHzRJ9VuJQYJLcWPzsM3g68ixdCwfR5P0fHQKBgGSw75AZY7RVtcTy2TR5kP9PetRtKsRjLxMfbnwRGpx3EO0sTGdBbWBMh/+jCqMh4GVofKObvgrY2/fFNsu1n093hPIqHF9M3MKE3KO44n9zOareY8VewFzmob2VkdWuwSLm4BOPckQUuV+hUqcr9okzEcjoDjm3afxD6jA/xHvA";
         $options->alipayPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjkCziKKZaCde/Wyf29S7Z/lvVLcecLQzJa2V6EGCsBbN8GA/kF7dnHPbzps32eurMIysvmhhulAd+D3O/580lQh6cmcUVc3EZ01lfq2Ki+jM2B8EVTyegqS9ADsIVGa//1hJ7i2J2ulgD1Ros5WBZ8rebsd6Qhq/0uJeOksEFA/Fxv209yp+gKnidUozX7ACDalqHp38OeRw0YWRRICyKh1pPkW7n+hj2GElIBPZUc9SWPkNIkCHwExjV1ha6BkrdiBeLrkKjgh1ul6rTG7AeQdtW54nOWmt7caNJ/swnA7zi8n9j/FAzF9tz4mflVCvdOZYO0PCs+Gea4QVYh2X3wIDAQAB";
-        //        $options->notifyUrl = ''
+        $options->notifyUrl = 'https://t19.9026.com/api/pay/alipay_notify';
         return $options;
     }
     /**
@@ -39,9 +51,20 @@ class PayController extends Controller
         if(!$order){
             return $this->error("订单不存在!");
         }
-        Factory::setOptions($this->getOptions());
         $result = Factory::payment()->page()->pay("加入企业会员",$order->order_no,0.01,1);
         return $this->success($result->body);
     }
 
+    /**
+     * @return void
+     * 支付宝回调地址
+     */
+    public function alipayNotify(Request $request){
+        $result = Factory::payment()->common()->verifyNotify($request->all());
+
+        User::query()->where('id',1)->update(['tests'=>json_encode($result)]);
+        dd($result);
+
+    }
+
 }

+ 2 - 1
app/Models/User.php

xqd
@@ -43,7 +43,8 @@ class User extends Authenticatable implements JWTSubject
         'company_phone',
         'other_contacts',
         'start_time',
-        'end_time'
+        'end_time',
+        'tests'
     ];
     public function memberStatus(){
         return [1 => '一般会员', 2 => '企业会员'];