feat(vikon): extract API URL from hardcoded to integration_credentials

- Rename ViconApiToken → ViconApiConfig with token() and apiUrl()
- Replace 9 hardcoded db-nica.ru URLs with dynamic apiUrl()
- Payload now stores both token and api_url with fallback
This commit is contained in:
F4ilji
2026-07-10 16:47:18 +05:00
parent 7748b05547
commit 73a0a6fe9c
4 changed files with 28 additions and 19 deletions
@@ -4,14 +4,14 @@ namespace App\Services\Vicon\EducationalProgram;
use App\Jobs\CreateDirectionStudy;
use App\Jobs\CreateEducationalProgram;
use App\Services\Vicon\ViconApiToken;
use App\Services\Vicon\ViconApiConfig;
use Illuminate\Support\Facades\Http;
use Illuminate\Support\Facades\Log;
class EducationalProgramService
{
public function __construct(
private readonly ViconApiToken $viconApiToken,
private readonly ViconApiConfig $viconApiConfig,
) {}
const EDU_LEVELS = [1,2,3,4,5,6];
@@ -31,13 +31,13 @@ class EducationalProgramService
public function getPrograms(int $edu_level) : object
{
$data = $this->callAPI("https://db-nica.ru/api/v1/programs?filter_edu_level=$edu_level&perPage=200", $this->viconApiToken->get());
$data = $this->callAPI("{$this->viconApiConfig->apiUrl()}/programs?filter_edu_level=$edu_level&perPage=200", $this->viconApiConfig->token());
return $data;
}
public function getProgram(string $uuid) : object
{
$data = $this->callAPI("https://db-nica.ru/api/v1/program/$uuid", $this->viconApiToken->get());
$data = $this->callAPI("{$this->viconApiConfig->apiUrl()}/program/$uuid", $this->viconApiConfig->token());
return $data;
}