Przeglądaj źródła

支付宝异步回调

lizhen_gitee 1 rok temu
rodzic
commit
03bd68630e
1 zmienionych plików z 15 dodań i 7 usunięć
  1. 15 7
      application/api/controller/Pay.php

+ 15 - 7
application/api/controller/Pay.php

@@ -103,7 +103,7 @@ class Pay extends Api
             exit;
         }
         //你可以在此编写订单逻辑
-        $rs = $this->order_notify_do($out_trade_no);
+        $rs = $this->order_notify_do($out_trade_no,$paytype);
         if($rs === false){
             //不论结果都应返回success
             return $pay->success()->send();
@@ -120,7 +120,7 @@ class Pay extends Api
     }
 
     //异步逻辑
-    private function order_notify_do($out_trade_no){
+    private function order_notify_do($out_trade_no,$paytype){
 
         Db::startTrans();
         $orderInfo = Db::name('pay_order')->where(['out_trade_no' => $out_trade_no])->lock(true)->find();
@@ -135,18 +135,26 @@ class Pay extends Api
         }
 
         //逻辑开始
+        $nowtime = time();
+        $nowtime = jiesuan_tendays_ago()-1; //仅测试用
 
+        $paytype_enum = [
+            'wechat' => 3,
+            'alipay' => 4,
+        ];
 
-
-        /*$update = [
-            'pay_type'=>time(),
-            'pay_type'=>
+        $update = [
+            'have_paid'=>$nowtime,
+            'pay_type' =>$paytype_enum[$paytype]
         ];
         $rs_order = Db::name('unishop_order')->where('id',$orderInfo['table_id'])->update($update);
         if($rs_order === false){
             Db::rollback();
             return false;
-        }*/
+        }
+
+        //修改用户活跃,自动滑落用
+        Db::name('user')->where('id',$orderInfo['user_id'])->update(['last_paytime'=>$nowtime]);
         //逻辑结束
 
         //状态