ReferralLog.php 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. namespace App\Models;
  3. use Auth;
  4. use Illuminate\Database\Eloquent\Builder;
  5. use Illuminate\Database\Eloquent\Model;
  6. /**
  7. * 返利日志
  8. *
  9. * @property int $id
  10. * @property int $user_id 用户ID
  11. * @property int $ref_user_id 推广人ID
  12. * @property int $order_id 关联订单ID
  13. * @property int $amount 消费金额,单位分
  14. * @property int $ref_amount 返利金额
  15. * @property int $status 状态:0-未提现、1-审核中、2-已提现
  16. * @property \Illuminate\Support\Carbon|null $created_at 创建时间
  17. * @property \Illuminate\Support\Carbon|null $updated_at 最后更新时间
  18. * @property-read \App\Models\Order|null $order
  19. * @property-read \App\Models\User|null $ref_user
  20. * @property-read \App\Models\User|null $user
  21. * @method static Builder|ReferralLog newModelQuery()
  22. * @method static Builder|ReferralLog newQuery()
  23. * @method static Builder|ReferralLog query()
  24. * @method static Builder|ReferralLog uid()
  25. * @method static Builder|ReferralLog whereAmount($value)
  26. * @method static Builder|ReferralLog whereCreatedAt($value)
  27. * @method static Builder|ReferralLog whereId($value)
  28. * @method static Builder|ReferralLog whereOrderId($value)
  29. * @method static Builder|ReferralLog whereRefAmount($value)
  30. * @method static Builder|ReferralLog whereRefUserId($value)
  31. * @method static Builder|ReferralLog whereStatus($value)
  32. * @method static Builder|ReferralLog whereUpdatedAt($value)
  33. * @method static Builder|ReferralLog whereUserId($value)
  34. * @mixin \Eloquent
  35. */
  36. class ReferralLog extends Model {
  37. protected $table = 'referral_log';
  38. protected $primaryKey = 'id';
  39. function scopeUid($query) {
  40. return $query->whereRefUserId(Auth::id());
  41. }
  42. function user() {
  43. return $this->hasOne(User::class, 'id', 'user_id');
  44. }
  45. function ref_user() {
  46. return $this->hasOne(User::class, 'id', 'ref_user_id');
  47. }
  48. function order() {
  49. return $this->hasOne(Order::class, 'oid', 'order_id');
  50. }
  51. function getAmountAttribute($value) {
  52. return $value / 100;
  53. }
  54. function setAmountAttribute($value) {
  55. $this->attributes['amount'] = $value * 100;
  56. }
  57. function getRefAmountAttribute($value) {
  58. return $value / 100;
  59. }
  60. function setRefAmountAttribute($value) {
  61. $this->attributes['ref_amount'] = $value * 100;
  62. }
  63. }