Ver Fonte

定时订单超时查询每天

刘远航 há 4 anos atrás
pai
commit
af7a771d3d
1 ficheiros alterados com 17 adições e 10 exclusões
  1. 17 10
      app/Console/Commands/overTimeOrder.php

+ 17 - 10
app/Console/Commands/overTimeOrder.php

xqd xqd
@@ -86,19 +86,22 @@ class overTimeOrder extends Command
             $send = send_wechatSubscription_message('appoint_reminder',[$Order['docter']['openid'], "pages/index/index",$Order['order_sn'],$Order['user']['nickname'],$Order['user']['phone'],$Order['created_at']]);
         }else{
             $menNewIds = [];
-//            $beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));
-//            $endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-1;
-            $Order = Order::with(['orderPatient','docter','user'])->where(['order_status'=>7,'payment_status'=>2])->orWhere(function ($query){
+            $startTime = date('Y-m-d',time());
+            $endTime = date('Y-m-d',time())." 23:59:59";
+            $startTime = strtotime($startTime);
+            $endTime = strtotime($endTime);
+
+            $Order = Order::with('orderPatient')->where(['order_status'=>7,'payment_status'=>2])->orWhere(function ($query){
                 $query->where(['order_status'=>3,'payment_status'=>2]);
-            })->where('appoint_end_time','<',time())->get();
+            })->whereBetween('appoint_date',[$startTime,$endTime])->get();
             foreach ($Order as $k=>$v){
                 if($v['product_type']==3 || $v['product_type']==4 || $v['product_type']==5){
-//                    if (time() > $v['appoint_end_time']){
+                    if (time() > $v['appoint_end_time']){
                         if ($v['docter']['openid']){
                             $menNewIds[$k] = $v['id'];
                             $send = send_wechatSubscription_message('appoint_reminder',[$v['docter']['openid'], "pages/index/index",$v['order_sn'],$v['user']['nickname'],$v['user']['phone'],$v['created_at']]);
                         }
-//                    }
+                    }
                 }
             }
             order_trace(['订单类型'=>'预约订单','订单id组'=>$menNewIds,'超时时间'=>date('Ymd His',time())],'info');
@@ -216,20 +219,24 @@ class overTimeOrder extends Command
      * DateTime: 2021/3/4 17:48
      */
     public function clinicOverTimeOrders(){
+        $startTime = date('Y-m-d',time());
+        $endTime = date('Y-m-d',time())." 23:59:59";
+        $startTime = strtotime($startTime);
+        $endTime = strtotime($endTime);
+
         $inOrder = Order::with('orderPatient')->where(['order_status'=>7,'payment_status'=>2])->orWhere(function ($query){
             $query->where(['order_status'=>3,'payment_status'=>2]);
-        })->where('appoint_end_time','<',time())->get();
+        })->whereBetween('appoint_date',[$startTime,$endTime])->get();
         $menNewIds = [];
         foreach ($inOrder as $k=>$v){
             if($v['product_type']==3 || $v['product_type']==4 || $v['product_type']==5){
-//                if (time() > $v['appoint_end_time']){
+                if (time() > $v['appoint_end_time']){
                     $menNewIds[$k] = $v['id'];
                     $this->AppointReminder($v['id']);
-//                }
+                }
             }
         }
         order_trace(['订单类型'=>'门诊订单','订单id组'=>$menNewIds,'超时时间'=>date('Ymd His',time())],'info');
-
         if ($menNewIds){
             // 操作门诊订单为已超时
             Order::whereIn('id',$menNewIds)->update(['order_status'=>6,'order_notes'=>'医生确认超时']);