Custom.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <?php
  2. namespace bizHd\custom\models;
  3. use bizHd\base\models\Base;
  4. use bizHd\custom\observers\BuyAmountObserver;
  5. class Custom extends Base
  6. {
  7. /**
  8. * xhCustom 的 buyAmount 变动监听的开关(默认是开启)
  9. *
  10. * @var bool
  11. */
  12. public $listend = true;
  13. /**
  14. * xhCustom 的 $notRecordGrowthAndIntegral 是否执行记录成功值与积分
  15. *
  16. * @var bool
  17. */
  18. public $recordGrowthAndIntegral = true;
  19. /**
  20. * mainId(运行时临时属性,不入库)。
  21. * 传递必要参数 mainId
  22. * @var int
  23. */
  24. public $mainId = 0;
  25. /**
  26. * 关联id(运行时临时属性,不入库)。
  27. *
  28. * @var int
  29. */
  30. public $relateId = 0;
  31. /**
  32. * 关联的表或类别(运行时临时属性,不入库)。
  33. *
  34. * 关联的表或类别:0.无关联 1.零售订单 -- 具体请查看 xhUserGrowth表的 relateType 字段
  35. *
  36. * @var int
  37. */
  38. public $relateType = 0;
  39. /**
  40. * 流水事件文案(运行时临时属性,不入库)。
  41. *
  42. * 业务侧可在 save() 前赋值,供 BuyAmountObserver 使用。
  43. *
  44. * @var string
  45. */
  46. public $eventRemark = '';
  47. /**
  48. * 操作员工 id(运行时临时属性,不入库)。
  49. *
  50. * @var int
  51. */
  52. public $staffId = 0;
  53. /**
  54. * 操作员工名称(运行时临时属性,不入库)。
  55. *
  56. * @var string
  57. */
  58. public $staffName = '';
  59. // 加上了 xhCustom 的 buyAmount 变动监听(观察者模式),并处理了联动增减逻辑 -- 该监听依赖 AR 事件触发(如 $model->save())。
  60. // 若某处直接用 updateAll()/updateByCondition() 直接改 buyAmount,不会触发该观察者。
  61. public function behaviors()
  62. {
  63. return [
  64. BuyAmountObserver::class,
  65. ];
  66. }
  67. public static function tableName()
  68. {
  69. return 'xhCustom';
  70. }
  71. }