Blame view

app/Console/Commands/DispatchResumeLiftJobCommand.php 1.46 KB
8ec6b4403   Fedor   task-132985 autor...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  <?php
  
  namespace App\Console\Commands;
  
  use App\Jobs\LiftVacancyJob;
  use App\Jobs\SendVacancyToTelegramJob;
  use App\Models\EmployerAutoliftOption;
  use App\Models\WorkerAutoliftOption;
  use Illuminate\Console\Command;
  
  class DispatchResumeLiftJobCommand extends Command
  {
      protected $signature ='resume:dispatch';
  
      public function handle()
      {
          $now = now()->timezone('Europe/Moscow')->format('H:i');
7d97dde35   Fedor   task-132985 minor...
18
          $workers = WorkerAutoliftOption::query()
8ec6b4403   Fedor   task-132985 autor...
19
20
21
22
23
24
              ->where(function ($query) use ($now) {
                  $query->where('times_per_day', 1)
                      ->where('time_send_first', $now);
              })
              ->orWhere(function ($query) use ($now) {
                  $query->where('times_per_day', 2)
7d97dde35   Fedor   task-132985 minor...
25
26
27
28
                      ->where(function ($query) use ($now) {
                          $query->where('time_send_first', $now)
                              ->orWhere('time_send_second', $now);
                      });
8ec6b4403   Fedor   task-132985 autor...
29
30
31
              })
              ->orWhere(function ($query) use ($now) {
                  $query->where('times_per_day', 3)
7d97dde35   Fedor   task-132985 minor...
32
33
34
35
36
                      ->where(function ($query) use ($now) {
                          $query->where('time_send_first', $now)
                              ->orWhere('time_send_second', $now)
                              ->orWhere('time_send_third', $now);
                      });
8ec6b4403   Fedor   task-132985 autor...
37
38
              })
              ->get();
7d97dde35   Fedor   task-132985 minor...
39
          LiftVacancyJob::dispatch($workers->pluck('worker_id')->toArray());
8ec6b4403   Fedor   task-132985 autor...
40
41
42
43
  
          return Command::SUCCESS;
      }
  }