# Filament Admin Panel

Laravel 12 + Filament 4 面板，用于统一管理知识图谱（KnowledgeServic）与题库（QuestionBankService）数据，支持 API 联调与可视化。

## 快速开始

```bash
cd FilamentAdmin
cp .env.example .env
touch database/database.sqlite
php artisan key:generate
php artisan migrate
php artisan make:filament-user --name=Admin --email=admin@example.com --password=secret123
docker compose up --build
```

- 前端入口：`http://localhost:5019/admin/login`
- 后端默认使用 `database/database.sqlite`，无需额外数据库容器。

## 配置

`.env` 中追加了：

```ini
KNOWLEDGE_API_BASE=http://kg_engine_app:5011
QUESTION_BANK_API_BASE=http://question_bank_api:6001
```

容器加入 `laradock_backend` 网络后即可直接调用现有的知识图谱与题库 API（容器名：`kg_engine_app` & `question_bank_api`）。如需调用宿主端口，可覆写为 `http://host.docker.internal:5011`/`5015`。

## Docker 说明

- `Dockerfile` 基于 `php:8.3-cli`，内置 `pdo_sqlite`、`pdo_mysql` 扩展，支持 Artisan + Composer。
- `docker-compose.yml` 仅包含单个 `filament_admin` 服务，映射 `8010:8000`，并把工作目录挂载到容器便于热更新。

## 下一步

- 编写与 `KnowledgeServic`、`QuestionBankService` 的 API client（可放在 `app/Services`）。
- 使用 Filament 的 `Resource` / `Widget` 对知识点、技能、题目进行 CRUD 与数据可视化。
- 若需对外提供 API，可新增面板或在 `routes/api.php` 中透传处理逻辑。
