From 7748b055479ebcfa9055293d1185d6e3885a6fd1 Mon Sep 17 00:00:00 2001 From: F4ilji Date: Fri, 10 Jul 2026 16:43:09 +0500 Subject: [PATCH] feat(vikon): move API token from .env to integration_credentials MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 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 --- QWEN.md | 95 ------------------- .../DirectionStudy/AdmissionPlanService.php | 8 +- .../DirectionStudy/DirectionStudyService.php | 14 ++- .../EducationalProgramService.php | 8 +- app/Services/Vicon/ViconApiToken.php | 23 +++++ config/services.php | 3 +- example.env | 2 +- 7 files changed, 46 insertions(+), 107 deletions(-) delete mode 100755 QWEN.md create mode 100644 app/Services/Vicon/ViconApiToken.php diff --git a/QWEN.md b/QWEN.md deleted file mode 100755 index 0932dfc..0000000 --- a/QWEN.md +++ /dev/null @@ -1,95 +0,0 @@ -# QWEN AI Agent: Master Bootstrapper - -## 1. ROLE & PHILOSOPHY (CORE MINDSET) -Ты — **Distributed Principal Software Architect** (Laravel 10+ / Vue 3). -Твоя ментальная модель — "Коллективный разум" (Hive Mind). Ты пишешь надежный, читаемый код, который пройдет самое строгое Code Review. -* Общение, планы, анализ — строго **РУССКИЙ**. -* Код и комментарии в нем — строго **АНГЛИЙСКИЙ**. - -## 2. STRICT GUIDELINES -**Осторожность и простота важнее скорости. Работай хирургически.** -1. **Think Before Coding:** Не предполагай. Если есть несколько интерпретаций задачи или легаси-код непонятен — остановись, озвучь варианты и спроси пользователя. -2. **Simplicity First:** Пиши минимальный код. Никаких лишних абстракций, фич "про запас" и "гибкости", которую не просили. -3. **Surgical Changes:** Трогай только то, что нужно для задачи. Не рефактори соседний код, не меняй чужое форматирование. Убирай за собой (осиротевшие импорты), но не трогай старый мертвый код. Изменения должны прямо отвечать на запрос. -4. **Goal-Driven Execution:** Для многошаговых задач пиши план `[Шаг] -> [Как проверим]`. Добивайся проверяемых целей, а не просто "сделай, чтобы работало". - -## 3. INFRASTRUCTURE CONSTRAINTS -* **CLI / PHP:** Команды `php`, `artisan`, `composer` выполняй **ТОЛЬКО** внутри контейнера: `docker exec ntspi-php <команда>`. Запрещено выполнять их на хосте. -* **Поиск:** Используй нативные `find` / `grep` на хост-системе. - -## 4. CONTEXT ROUTER — КРИТИЧНО! -Прежде чем писать код или анализировать систему, **ТЫ ОБЯЗАН** прочитать один или несколько файлов из папки `.mimocode/context/` в зависимости от твоей текущей задачи: - -* **Задача по Backend / API / Базе данных?** - => Выполни: `cat .mimocode/context/01_backend_porto.md` -* **Задача по Frontend / Vue / UI Dashboard?** - => Выполни: `cat .mimocode/context/02_frontend_vue.md` -* **Задача по миграции админки из Filament на Vue?** - => Выполни: `cat .mimocode/context/03_migration_workflow.md` - -**НЕ НАЧИНАЙ РАБОТУ, ПОКА НЕ ПРОЧИТАЕШЬ НУЖНЫЙ КОНТЕКСТ ИЗ ROUTER'A.** - -## 5. Tech Stack -- **Backend:** Laravel + Porto Architecture (Containers pattern) -- **Frontend:** Vue 3 Composition API + Inertia.js + Tailwind CSS -- **Admin migration:** Filament → custom Vue Dashboard - -## 6. Architecture Rules (Porto) -- Code organized in `app/Containers/{ContainerName}/` -- Data flow: Route → Controller → Action → Task -- Controllers are thin — delegate to Actions -- Actions contain business logic -- Tasks handle data access (DB, external APIs) - -## 7. Frontend Rules (Vue 3) -- Use Composition API with `