StoreCoupon.php 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. namespace app\common\model\store\coupon;
  3. use app\common\model\BaseModel;
  4. use app\common\model\system\merchant\Merchant;
  5. use app\common\repositories\store\coupon\StoreCouponUserRepository;
  6. class StoreCoupon extends BaseModel
  7. {
  8. /**
  9. * @return string
  10. * @author zfy
  11. * @day 2020-03-30
  12. */
  13. public static function tablePk(): string
  14. {
  15. return 'coupon_id';
  16. }
  17. /**
  18. * @return string
  19. * @author zfy
  20. * @day 2020-03-30
  21. */
  22. public static function tableName(): string
  23. {
  24. return 'store_coupon';
  25. }
  26. public function product()
  27. {
  28. return $this->hasMany(StoreCouponProduct::class, 'coupon_id', 'coupon_id');
  29. }
  30. public function issue()
  31. {
  32. return $this->hasOne(StoreCouponIssueUser::class, 'coupon_id', 'coupon_id');
  33. }
  34. public function merchant()
  35. {
  36. return $this->hasOne(Merchant::class, 'mer_id', 'mer_id');
  37. }
  38. public function getUsedNumAttr()
  39. {
  40. return app()->make(StoreCouponUserRepository::class)->usedNum($this->coupon_id);
  41. }
  42. public function getSendNumAttr()
  43. {
  44. return app()->make(StoreCouponUserRepository::class)->sendNum($this->coupon_id);
  45. }
  46. }