feat(vikon): move API token from .env to integration_credentials

- Rename VICON_TOKEN → VIKON_API_TOKEN in .env and config
- Add ViconApiToken service reading from integration_credentials table
- Update 3 Vicon services to use ViconApiToken instead of config()
- Config/env kept as fallback for clean migration
This commit is contained in:
F4ilji
2026-07-10 16:43:09 +05:00
parent 8db442a34a
commit 7748b05547
7 changed files with 46 additions and 107 deletions
@@ -2,11 +2,15 @@
namespace App\Services\Vicon\DirectionStudy;
use App\Services\Vicon\ViconApiToken;
use Illuminate\Support\Facades\Http;
use Illuminate\Support\Facades\Log;
class DirectionStudyService
{
public function __construct(
private readonly ViconApiToken $viconApiToken,
) {}
const EDU_LEVELS = [1, 2, 3, 4, 5, 6];
public function getAllNaprsUuid() : array
@@ -40,31 +44,31 @@ class DirectionStudyService
public function getNaprs(int $edu_level): object
{
$data = $this->callAPI("https://db-nica.ru/api/v1/naprs?perPage=200&filter_edu_level=$edu_level", config('services.vicon.token'));
$data = $this->callAPI("https://db-nica.ru/api/v1/naprs?perPage=200&filter_edu_level=$edu_level", $this->viconApiToken->get());
return $data;
}
public function getNapr(string $uuid): object
{
$data = $this->callAPI("https://db-nica.ru/api/v1/napr/$uuid", config('services.vicon.token'));
$data = $this->callAPI("https://db-nica.ru/api/v1/napr/$uuid", $this->viconApiToken->get());
return $data;
}
public function getPrograms(int $edu_level): object
{
$data = $this->callAPI("https://db-nica.ru/api/v1/programs?filter_edu_level=$edu_level&perPage=200", config('services.vicon.token'));
$data = $this->callAPI("https://db-nica.ru/api/v1/programs?filter_edu_level=$edu_level&perPage=200", $this->viconApiToken->get());
return $data;
}
public function getProgram(string $uuid): object
{
$data = $this->callAPI("https://db-nica.ru/api/v1/program/$uuid", config('services.vicon.token'));
$data = $this->callAPI("https://db-nica.ru/api/v1/program/$uuid", $this->viconApiToken->get());
return $data;
}
public function getProgramDocs(string $uuid): object
{
$data = $this->callAPI("https://db-nica.ru/api/v1/program/$uuid/edu-docs?perPage=200", config('services.vicon.token'));
$data = $this->callAPI("https://db-nica.ru/api/v1/program/$uuid/edu-docs?perPage=200", $this->viconApiToken->get());
return $data;
}