ReferralUpdatedEvent.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace App\Module\Promotion\Events;
  3. use App\Module\Promotion\Models\PromotionReferralChange;
  4. use App\Module\Promotion\Models\PromotionUserReferral;
  5. use Illuminate\Broadcasting\InteractsWithSockets;
  6. use Illuminate\Foundation\Events\Dispatchable;
  7. use Illuminate\Queue\SerializesModels;
  8. /**
  9. * 推荐关系更新事件
  10. *
  11. * 当用户的推荐关系被更新时触发此事件。
  12. * 监听此事件可以执行如下操作:
  13. * 1. 更新用户的团队统计数据
  14. * 2. 更新用户的达人等级
  15. * 3. 更新用户的关系缓存
  16. */
  17. class ReferralUpdatedEvent
  18. {
  19. use Dispatchable, InteractsWithSockets, SerializesModels;
  20. /**
  21. * 推荐关系模型
  22. *
  23. * @var PromotionUserReferral
  24. */
  25. public $referral;
  26. /**
  27. * 推荐关系修改记录
  28. *
  29. * @var PromotionReferralChange
  30. */
  31. public $change;
  32. /**
  33. * 创建一个新的事件实例
  34. *
  35. * @param PromotionUserReferral $referral 推荐关系模型
  36. * @param PromotionReferralChange $change 推荐关系修改记录
  37. * @return void
  38. */
  39. public function __construct(PromotionUserReferral $referral, PromotionReferralChange $change)
  40. {
  41. $this->referral = $referral;
  42. $this->change = $change;
  43. }
  44. }