'datetime', 'last_password_change_at' => 'datetime', 'status' => UserStatus::class, ]; } #[Scope] protected function active(Builder $query): void { $query->where('status', UserStatus::ACTIVE); } public function employee(): HasOne { return $this->hasOne(Employee::class); } public function customer(): HasOne { return $this->hasOne(Customer::class); } public function membership(): HasOne { return $this->hasOne(Membership::class); } public function referralCode(): HasOne { return $this->hasOne(ReferralCode::class); } public function referralUsage(): HasOne { return $this->hasOne(ReferralUsage::class); } public function outlets(): BelongsToMany { return $this->belongsToMany(Outlet::class); } public function articles(): HasMany { return $this->hasMany(Article::class); } public function payrolls(): HasMany { return $this->hasMany(Payroll::class); } public function orders(): HasMany { return $this->hasMany(Order::class); } public function items(): HasMany { return $this->hasMany(OrderItem::class); } public function purchaseItems(): HasMany { return $this->hasMany(PurchaseItem::class); } public function payments(): HasMany { return $this->hasMany(Payment::class); } public function priceRequests(): HasMany { return $this->hasMany(PriceRequest::class); } public function vouchers(): BelongsToMany { return $this->belongsToMany(Voucher::class); } }