feat: 管理员系统设置新增:新增邮件设置

This commit is contained in:
韦荣超
2022-02-28 18:15:17 +08:00
parent ab388f1ef5
commit cf7e7c1a06
8 changed files with 405 additions and 9 deletions
+31
View File
@@ -7,10 +7,12 @@ use App\Module\Base;
use App\Tasks\PushTask;
use Arr;
use Carbon\Carbon;
use Config;
use DB;
use Exception;
use Hhxsv5\LaravelS\Swoole\Task\Task;
use Illuminate\Database\Eloquent\SoftDeletes;
use Mail;
use Request;
/**
@@ -1208,4 +1210,33 @@ class ProjectTask extends AbstractModel
//
return $task;
}
/**
* 预超期任务提醒
* @param $ownerIds
*/
public static function overdueRemindEmail($ownerIds)
{
$users = User::whereIn('userid', $ownerIds)->get();
if (!$users) {
throw new ApiException("ProjectTask::overdueRemindEmail--没有负责人");
}
Config::set("mail.mailers.smtp.host", Base::settingFind('emailSetting', 'smtp_server'));
Config::set("mail.mailers.smtp.port", Base::settingFind('emailSetting', 'port'));
Config::set("mail.mailers.smtp.username", Base::settingFind('emailSetting', 'account'));
Config::set("mail.mailers.smtp.password", Base::settingFind('emailSetting', 'password'));
foreach ($users as $user) {
/** @var User $user */
$email = $user->email;
try {
Mail::send('taskOverdueRemind', ['url' => 'https://www.baidu.com'], function ($m) use ($email) {
$m->from(Config::get("mail.mailers.smtp.username"), env('APP_NAME'));
$m->to($email);
$m->subject("过期任务提醒");
});
} catch (\Exception $e) {
\Log::error($email.'--邮箱发动报错:', [$e->getMessage()]);
}
}
}
}