File "ModelController-20260128160338.php"
Full Path: /var/www/html/back/app/Http/Controllers/Api/V1/ModelController-20260128160338.php
File size: 1.85 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace App\Http\Controllers\Api\V1;
use App\Http\Controllers\Api\ApiController;
use App\Http\Resources\Permissions\PermissionsTypResource;
use App\Models\System;
use App\Repositories\Model\Interfaces\ModelInterface;
use App\Services\Model\ModelService;
use Illuminate\Http\Request;
class ModelController extends ApiController
{
private $modelPepository;
public function __construct(protected ModelService $modelService, ModelInterface $repository)
{
$this->modelPepository = $repository;
}
public function index()
{
return System::query()->get();
}
public function show($modelId)
{
return System::query()->find($modelId);
}
public function permissionsType()
{
return new PermissionsTypResource([]);
}
public function getTable($modelId, Request $request)
{
$type = $request->input('activeTab');
$model = $this->modelPepository->getModel($modelId);
if ($type == 'score') {
$data = $this->modelService->getAccounts($modelId);
}
if ($type == 'counterparty') {
$data = $this->modelService->getCounterparties($modelId);
}
if ($type == 'organization') {
$data = $this->modelService->getOrganizations($modelId);
}
if ($type == 'integration') {
$data = $this->modelService->getIntegrations($modelId);
}
return [
'model_data' => [
'name' => $model->name,
'description' => $model->description,
'month_end' => $model->month_end,
'day_payment' => $model->day_payment,
],
'data' => $data,
];
}
public function update($modelId, Request $request)
{
return $this->modelPepository->update($modelId, $request->toArray());
}
}