浏览代码

Fixed order retrieval issue during traffic reset.

BrettonYe 1 年之前
父节点
当前提交
3fc08053a8
共有 2 个文件被更改,包括 13 次插入13 次删除
  1. 6 6
      app/Console/Commands/TaskDaily.php
  2. 7 7
      app/Models/Order.php

+ 6 - 6
app/Console/Commands/TaskDaily.php

@@ -87,14 +87,14 @@ class TaskDaily extends Command
     private function resetUserTraffic(): void
     { // 重置用户流量
         $today = date('Y-m-d');
-        User::where('status', '<>', -1)->where('expired_at', '>', $today)->where('reset_time', '<=', $today)->with([
-            'orders' => function ($query) {
-                $query->activePlan();
-            },
-        ])->has('orders')->chunk(config('tasks.chunk'), function ($users) {
+        User::where('status', '<>', -1)->where('expired_at', '>', $today)->where('reset_time', '<=', $today)->whereHas('orders', function ($query) {
+            $query->activePlan();
+        })->with(['orders' => function ($query) {
+            $query->activePlan();
+        }])->chunk(config('tasks.chunk'), function ($users) {
             $users->each(function ($user) {
                 $user->orders()->activePackage()->update(['is_expire' => 1]); // 过期生效中的加油包
-                $order = $user->orders()->activePlan()->first(); // 取出用户正在使用的套餐
+                $order = $user->orders->first(); // 取出用户正在使用的套餐
 
                 $oldData = $user->transfer_enable;
                 // 重置流量与重置日期

+ 7 - 7
app/Models/Order.php

@@ -49,9 +49,9 @@ class Order extends Model
         return $this->hasOne(Payment::class);
     }
 
-    public function scopeUid(Builder $query, int $uid = 0): Builder
+    public function scopeUid(Builder $query, ?int $uid = null): Builder
     {
-        return $query->whereUserId($uid ?: Auth::id());
+        return $query->whereUserId($uid ?? Auth::id());
     }
 
     public function scopeRecentUnPay(Builder $query, int $minutes = 0): Builder
@@ -63,7 +63,7 @@ class Order extends Model
         return $query->whereStatus(0)->where('created_at', '<=', date('Y-m-d H:i:s', strtotime("-$minutes minutes")));
     }
 
-    public function scopeUserPrepay(Builder $query, int $uid = 0): Builder
+    public function scopeUserPrepay(Builder $query, ?int $uid = null): Builder
     {
         return $query->uid($uid)->whereStatus(3)->oldest();
     }
@@ -92,12 +92,12 @@ class Order extends Model
         });
     }
 
-    public function scopeUserActivePlan(Builder $query, int $uid = 0): Builder
+    public function scopeUserActivePlan(Builder $query, ?int $uid = null): Builder
     {
         return $query->uid($uid)->activePlan();
     }
 
-    public function scopeUserActivePackage(Builder $query, int $uid = 0): Builder
+    public function scopeUserActivePackage(Builder $query, ?int $uid = null): Builder
     {
         return $query->uid($uid)->activePackage();
     }
@@ -136,7 +136,7 @@ class Order extends Model
     {
         switch ($status) {
             case -1:
-                $label = trans('common.order.status.cancel');
+                $label = trans('common.order.status.canceled');
                 break;
             case 0:
                 $tag = 1;
@@ -148,7 +148,7 @@ class Order extends Model
                 break;
             case 2:
                 if ($this->goods_id === null) {
-                    $label = trans('common.order.status.complete');
+                    $label = trans('common.order.status.completed');
                 } elseif ($expire) {
                     $label = trans('common.status.expire');
                 } else {