TaskServiceProvider.php 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. namespace App\Module\Task\Providers;
  3. use Illuminate\Support\ServiceProvider;
  4. use App\Module\Task\Events\TaskCompletedEvent;
  5. use App\Module\Task\Events\TaskRewardClaimedEvent;
  6. use App\Module\Task\Listeners\TaskCompletedListener;
  7. use App\Module\Task\Listeners\TaskRewardClaimedListener;
  8. use App\Module\Task\Listeners\PetExpGainedListener;
  9. use App\Module\Pet\Events\PetExpGainedEvent;
  10. use App\Module\Task\Commands\TaskResetCheckCommand;
  11. use App\Module\Task\Commands\CheckTaskProgressCommand;
  12. use App\Module\Task\Commands\CleanExpiredTasksCommand;
  13. use App\Module\Task\Commands\MigrateTaskRewardsToRewardGroups;
  14. use App\Module\Task\Commands\TestTaskTempCommand;
  15. /**
  16. * 任务模块服务提供者
  17. */
  18. class TaskServiceProvider extends ServiceProvider
  19. {
  20. /**
  21. * 应用程序的事件监听器映射
  22. *
  23. * @var array
  24. */
  25. protected $listen = [
  26. TaskCompletedEvent::class => [
  27. TaskCompletedListener::class,
  28. ],
  29. TaskRewardClaimedEvent::class => [
  30. TaskRewardClaimedListener::class,
  31. ],
  32. PetExpGainedEvent::class => [
  33. // PetExpGainedListener::class,
  34. ],
  35. ];
  36. /**
  37. * 要注册的命令
  38. *
  39. * @var array
  40. */
  41. protected $commands = [
  42. TaskResetCheckCommand::class,
  43. CheckTaskProgressCommand::class,
  44. CleanExpiredTasksCommand::class,
  45. \App\Module\Task\Commands\GenerateTaskConfigCommand::class,
  46. MigrateTaskRewardsToRewardGroups::class,
  47. \App\Module\Task\Commands\TestRoseHeartTaskCommand::class,
  48. TestTaskTempCommand::class,
  49. \App\Module\Task\Commands\TestTaskEventCommand::class,
  50. \App\Module\Task\Commands\AddTaskProgressCommand::class,
  51. ];
  52. /**
  53. * 注册服务
  54. *
  55. * @return void
  56. */
  57. public function register(): void
  58. {
  59. // 注册服务...
  60. }
  61. /**
  62. * 引导服务
  63. *
  64. * @return void
  65. */
  66. public function boot(): void
  67. {
  68. // 注册事件监听器
  69. foreach ($this->listen as $event => $listeners) {
  70. foreach ($listeners as $listener) {
  71. $this->app['events']->listen($event, $listener);
  72. }
  73. }
  74. // 注册命令
  75. if ($this->app->runningInConsole()) {
  76. $this->commands($this->commands);
  77. }
  78. }
  79. }