File: //home/armgroup/libs/app/Models/Verification.php
<?php
namespace App\Models;
use Carbon\Carbon;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Notifications\Notifiable;
class Verification extends Model
{
use HasFactory, Notifiable;
public const CODE_NUMBER = 5; // تعداد ارقام کد ارسالی
public const EXPIRATION_TIME = 3; //انقضای کد ارسالی به دقیقه
protected $guarded = ['id'];
public static function generateCode($mobile)
{
return Verification::updateOrCreate(
['mobile' => $mobile],
[
'code' => app()->isProduction() ? rand(pow(10, static::CODE_NUMBER - 1), pow(10, static::CODE_NUMBER) - 1) : '12345',
'updated_at' => Carbon::now(),
'approved' => false,
]
);
}
}