update table field names

This commit is contained in:
2023-05-25 20:04:53 +10:00
parent aa2671f167
commit 68affe4e4c
4 changed files with 37 additions and 11 deletions

View File

@@ -3,10 +3,9 @@
namespace App\Http\Controllers\Api;
use App\Conductors\AnalyticsConductor;
use App\Conductors\Conductor;
use App\Enum\HttpResponseCodes;
use App\Http\Requests\AnalyticsRequest;
use App\Models\Analytics;
use App\Models\AnalyticsItemRequest;
use App\Models\AnalyticsSession;
use Illuminate\Http\Request;
@@ -95,16 +94,16 @@ class AnalyticsController extends ApiController
$data = [
'type' => $request->input('type'),
'attribute' => $request->input('attribute', ''),
'path' => $request->input('path', ''),
'useragent' => $request->userAgent(),
'ip' => $request->ip()
];
if ($user !== null && $user->hasPermission('admin/analytics') === true && $request->has('session') === true) {
$data['session_id'] = $request->input('session_id');
$analytics = AnalyticsRequest::create($data);
$analytics = AnalyticsItemRequest::create($data);
} else {
$analytics = AnalyticsRequest::create($data);
$analytics = AnalyticsItemRequest::create($data);
}
return $this->respondAsResource(

View File

@@ -2,7 +2,7 @@
namespace App\Http\Middleware;
use App\Http\Requests\AnalyticsRequest;
use App\Models\AnalyticsItemRequest;
use Symfony\Component\HttpFoundation\Response;
use Closure;
use Illuminate\Http\Request;
@@ -22,9 +22,9 @@ class LogRequest
$response = $next($request);
try {
AnalyticsRequest::create([
AnalyticsItemRequest::create([
'type' => 'apirequest',
'attribute' => $request->path(),
'path' => $request->path(),
]);
return $response;

View File

@@ -6,10 +6,27 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
class AnalyticsRequest extends Model
class AnalyticsItemRequest extends Model
{
use HasFactory;
/**
* The table name
*
* @var string
*/
protected $table = 'analytics_requests';
/**
* The attributes that are mass assignable.
*
* @var array<int, string>
*/
protected $fillable = [
'type',
'path'
];
/**
* Model Boot.
@@ -20,7 +37,7 @@ class AnalyticsRequest extends Model
{
parent::boot();
static::creating(function (AnalyticsRequest $analytics) {
static::creating(function (AnalyticsItemRequest $analytics) {
if (isset($analytics->session_id) !== true) {
$request = request();
if ($request !== null) {

View File

@@ -10,13 +10,23 @@ class AnalyticsSession extends Model
{
use HasFactory;
/**
* The attributes that are mass assignable.
*
* @var array<int, string>
*/
protected $fillable = [
'ip',
'useragent',
];
/**
* Returns the related requests for this session.
*
* @return Illuminate\Database\Eloquent\Relations\HasMany
*/
public function requests(): HasMany {
return $this->hasMany(AnalyticsRequest::class, 'session_id', 'id');
return $this->hasMany(AnalyticsItemRequest::class, 'session_id', 'id');
}
}