OpenObtainOrder.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <?php
  2. namespace app\common\command;
  3. use app\common\model\bank_account\BankAccount;
  4. use app\common\model\master_worker\MasterWorker;
  5. use app\common\model\master_worker\MasterWorkerInfo;
  6. use think\console\Command;
  7. use think\console\Input;
  8. use think\console\Output;
  9. use think\facade\Log;
  10. /**
  11. * 工程师每日开启接单的通知【给工程师的通知】
  12. * Class OpenObtainOrder
  13. * @package app\command
  14. */
  15. class OpenObtainOrder extends Command
  16. {
  17. protected function configure()
  18. {
  19. $this->setName('open_obtain_order')->setDescription('每天定时发送工程师开启接单提醒');
  20. }
  21. protected function execute(Input $input, Output $output)
  22. {
  23. try {
  24. $infoWorkerIds = MasterWorkerInfo::where(['audit_state'=>1])->column('worker_id');
  25. $bankWorkerIds = BankAccount::where(['audit_state'=>1])->column('worker_id');
  26. $ids = array_intersect($infoWorkerIds,$bankWorkerIds);
  27. $workerIds = MasterWorker::where([
  28. ['audit_state',"=",1],
  29. ['accept_order_status','=',0],
  30. ['work_status','=',0],
  31. ['id',"IN",($ids?:[0])],
  32. ])->column('id')?:[];
  33. //$workerIds = [5];
  34. $workerIds[] = 5;
  35. Log::write('OpenObtainOrder:workerIds:'.json_encode($workerIds));
  36. foreach ($workerIds as $workerId) {
  37. event('Notice', [
  38. 'scene_id' => 112,
  39. 'params' => [
  40. 'user_id' => $workerId,
  41. ]
  42. ]);
  43. }
  44. return true;
  45. } catch (\Exception $e) {
  46. Log::write('OpenObtainOrder:'.$e->getMessage());
  47. return false;
  48. }
  49. }
  50. }