decGoodsTraffic(); $jobEndTime = microtime(true); $jobUsedTime = round(($jobEndTime - $jobStartTime), 4); Log::info('---【'.$this->description.'】完成---,耗时'.$jobUsedTime.'秒'); } // 扣减用户到期商品的流量 private function decGoodsTraffic(): void { //获取用户10G的用户 定时改到期 foreach (User::whereEnable(1)->where("transfer_enable",'=',MB * ((int) sysConfig('default_traffic')))->get() as $user) { // 用户名不是邮箱的跳过 if (filter_var($user->email, FILTER_VALIDATE_EMAIL) === false) { continue; } //$expired_at = strtotime('-1 day',$user->expired_at); $user->update([ "expired_at" => date('y-m-d',strtotime('-2 day')), "enable" => 0 ]); $user->notify(new AccountExpire($user->expired_at)); } //获取失效的套餐 // foreach (Order::activePlan()->where('expired_at', '<=', date('Y-m-d H:i:s'))->with('user')->whereHas('user')->get() as $order) { // // 无用户订单,跳过 // // 清理全部流量,重置重置日期和等级 // $user = $order->user; // // $user->update([ // 'u' => 0, // 'd' => 0, // 'transfer_enable' => 0, // 'reset_time' => null, // 'level' => 0, // ]); // Helpers::addUserTrafficModifyLog($user->id, $order->id, $user->transfer_enable, 0, '[定时任务]用户所购商品到期,扣减商品对应的流量'); // // // 过期本订单 // $order->update(['is_expire' => 1]); // } } }