Files
biiproject-kit-v1/app/Models/AI/AiUsageLog.php
T

66 lines
1.3 KiB
PHP

<?php
/**
* ============================================================
*
* @project biiproject
*
* @author Andika Debi Putra
*
* @email andikadebiputra@gmail.com
*
* @website https://biiproject.com
*
* @copyright Copyright (c) 2026 Andika Debi Putra
* @license Proprietary - All Rights Reserved
*
* @version 1.0.0
*
* @created 2026-05-01
* ============================================================
*/
namespace App\Models\AI;
use App\Models\User;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Prunable;
class AiUsageLog extends Model
{
use Prunable;
protected $fillable = [
'user_id',
'provider',
'model',
'prompt',
'response',
'prompt_tokens',
'completion_tokens',
'total_tokens',
'estimated_cost',
'status',
'error_message',
'metadata',
];
protected $casts = [
'metadata' => 'array',
'estimated_cost' => 'decimal:6',
];
/**
* Get the prunable model query.
*/
public function prunable()
{
return static::where('created_at', '<=', now()->subMonths(3));
}
public function user()
{
return $this->belongsTo(User::class);
}
}