ReferralLog.php 2.3 KB

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