mirror of
				https://github.com/v2board/v2board.git
				synced 2025-10-31 17:31:49 +08:00 
			
		
		
		
	fix: remind traffic
This commit is contained in:
		| @@ -43,7 +43,6 @@ class SendRemindMail extends Command | ||||
|         $users = User::all(); | ||||
|         foreach ($users as $user) { | ||||
|             if ($user->remind_expire) $this->remindExpire($user); | ||||
|             if ($user->remind_traffic) $this->remindTraffic($user); | ||||
|         } | ||||
|     } | ||||
|  | ||||
| @@ -61,31 +60,4 @@ class SendRemindMail extends Command | ||||
|             ]); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private function remindTraffic($user) | ||||
|     { | ||||
|         if ($this->remindTrafficIsWarnValue(($user->u + $user->d), $user->transfer_enable)) { | ||||
|             $sendCount = MailLog::where('created_at', '>=', strtotime(date('Y-m-1'))) | ||||
|                 ->where('template_name', 'like', '%remindTraffic%') | ||||
|                 ->count(); | ||||
|             if ($sendCount > 0) return; | ||||
|             SendEmailJob::dispatch([ | ||||
|                 'email' => $user->email, | ||||
|                 'subject' => '在' . config('v2board.app_name', 'V2board') . '的流量使用已达到80%', | ||||
|                 'template_name' => 'remindTraffic', | ||||
|                 'template_value' => [ | ||||
|                     'name' => config('v2board.app_name', 'V2Board'), | ||||
|                     'url' => config('v2board.app_url') | ||||
|                 ] | ||||
|             ]); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     private function remindTrafficIsWarnValue($ud, $transfer_enable) | ||||
|     { | ||||
|         if ($ud <= 0) return false; | ||||
|         if (($ud / $transfer_enable * 100) < 80) return false; | ||||
|         return true; | ||||
|     } | ||||
|  | ||||
| } | ||||
|   | ||||
| @@ -148,7 +148,7 @@ class ConfigController extends Controller | ||||
|         } | ||||
|         if (function_exists('opcache_reset')) { | ||||
|             if (!opcache_reset()) { | ||||
|                 abort(500, '保存失败,请删除或检查opcache状态'); | ||||
|                 abort(500, '缓存清除失败,请卸载或检查opcache配置状态'); | ||||
|             } | ||||
|         } | ||||
|         \Artisan::call('config:cache'); | ||||
|   | ||||
| @@ -2,6 +2,32 @@ | ||||
|  | ||||
| namespace App\Services; | ||||
|  | ||||
| use App\Jobs\SendEmailJob; | ||||
| use App\Models\User; | ||||
|  | ||||
| class MailService | ||||
| { | ||||
|     public function remindTraffic (User $user) | ||||
|     { | ||||
|         if (!$user->remind_traffic) return; | ||||
|         if (!$this->remindTrafficIsWarnValue(($user->u + $user->d), $user->transfer_enable)) { | ||||
|             return; | ||||
|         } | ||||
|         SendEmailJob::dispatch([ | ||||
|             'email' => $user->email, | ||||
|             'subject' => '在' . config('v2board.app_name', 'V2board') . '的流量使用已达到80%', | ||||
|             'template_name' => 'remindTraffic', | ||||
|             'template_value' => [ | ||||
|                 'name' => config('v2board.app_name', 'V2Board'), | ||||
|                 'url' => config('v2board.app_url') | ||||
|             ] | ||||
|         ]); | ||||
|     } | ||||
|  | ||||
|     private function remindTrafficIsWarnValue($ud, $transfer_enable) | ||||
|     { | ||||
|         if ($ud <= 0) return false; | ||||
|         if (($ud / $transfer_enable * 100) < 80) return false; | ||||
|         return true; | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -88,6 +88,8 @@ class UserService | ||||
|         if (!$user->save()) { | ||||
|             return false; | ||||
|         } | ||||
|         $mailService = new MailService(); | ||||
|         $mailService->remindTraffic($user); | ||||
|         return true; | ||||
|     } | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user