Task.php 778 B

1234567891011121314151617181920212223242526272829303132333435
  1. <?php
  2. namespace process;
  3. use app\business\TaskBusiness;
  4. use support\Db;
  5. use support\Log;
  6. use Workerman\Timer;
  7. /** 产品每日分红 */
  8. class Task
  9. {
  10. public function onWorkerStart()
  11. {
  12. Timer::add(20, function(){
  13. $this->task();
  14. });
  15. }
  16. public function task()
  17. {
  18. try {
  19. $taskData=Db::table('wa_cron_task')
  20. ->where('day_dividend_time','<=',time())
  21. ->where('is_finish',1)
  22. ->limit(150)
  23. ->pluck('id')
  24. ->toArray();
  25. foreach ($taskData as $k=>$v){
  26. TaskBusiness::taskOne($v);
  27. }
  28. }catch (\Throwable $exception){
  29. Log::channel('task')->error($exception->getMessage());
  30. }
  31. }
  32. }