RouteMailSendLog.php 987 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <?php
  2. namespace App\Models;
  3. use Illuminate\Database\Eloquent\Model;
  4. use Illuminate\Support\Facades\DB;
  5. use Illuminate\Support\Facades\Log;
  6. class RouteMailSendLog extends Model
  7. {
  8. const TABLE = 'QPAccountsDB.dbo.RouteMailSendLog';
  9. protected $table = self::TABLE;
  10. public $timestamps = false;
  11. protected $fillable = [
  12. 'UserID',
  13. 'MailMark',
  14. 'CreatedAt',
  15. ];
  16. public static function markSent($userId, $mark)
  17. {
  18. try {
  19. return DB::connection('write')->table(self::TABLE)->insert([
  20. 'UserID' => (int) $userId,
  21. 'MailMark' => (string) $mark,
  22. 'CreatedAt' => date('Y-m-d H:i:s'),
  23. ]);
  24. } catch (\Throwable $exception) {
  25. Log::info('route_mail_already_sent', [
  26. 'UserID' => $userId,
  27. 'MailMark' => $mark,
  28. 'message' => $exception->getMessage(),
  29. ]);
  30. return false;
  31. }
  32. }
  33. }