# --- Рекомендуемый вариант: ОБЩИЙ кластер (Postgres_TG_Bots) --- # Скопируйте в backend/.env и задайте минимум DATABASE_URL + JWT_SECRET. # Не оставляйте в .env устаревший DB_PORT=5433, если пользуетесь 5432 — иначе, # при отсутствии/ошибке в DATABASE_URL пул уйдёт на DB_* и снова «не туда». # # Как в HR_TG_Bot: тот же Postgres (Postgres_TG_Bots/docker-compose.dev.yml), # отдельная база clinic_tests (не путать с hr_bot_test). # Локально (порт 5432, как в Postgres_TG_Bots на хосте): # # Backend в Docker рядом с HR: хост — container_name Postgres, порт 5432 внутри сети: # DATABASE_URL=postgresql://hr_bot_user:hrbot123@hr_postgres_dev:5432/clinic_tests # # Базу clinic_tests создают один раз (от суперпользователя контейнера): # psql "postgresql://hr_bot_user:hrbot123@localhost:5432/postgres" -c "CREATE DATABASE clinic_tests;" # # Если DATABASE_URL НЕ задан, берутся DB_* (fallback). Для общего кластера задавайте DATABASE_URL. # DB_HOST=localhost # DB_PORT=5432 # DB_NAME=clinic_tests # DB_USER=developer # DB_PASSWORD=dev_password DATABASE_URL=postgresql://hr_bot_user:hrbot123@localhost:5432/clinic_tests JWT_SECRET=change_me_in_production # Порт HTTP API (как в docker-compose: 3001) # PORT=3001 # A.1: HR login (Werkzeug password, staff by web_login = username в public.users) # В Docker (docker-compose.dev.yml) по умолчанию HR_AUTH=1 и HR_DATABASE_URL на hr_bot_test. # HR_AUTH=1 # HR_DATABASE_URL=postgresql://hr_bot_user:hrbot123@localhost:5432/hr_bot_test # V.8: API/UI назначения (POST /api/tests/:id/assign, каталог в карточке). В NODE_ENV=development # включено без этого флага. В production: CLINIC_ASSIGNMENT_ENABLED=1 # CLINIC_ASSIGNMENT_ENABLED=1 # D.3 — генерация черновика из импорта (POST /api/tests/import/document), OpenAI-совместимый API # DEEPSEEK_API_KEY= → по умолчанию https://api.deepseek.com/v1, модель deepseek-chat # OPENAI_API_KEY= → https://api.openai.com/v1, модель gpt-4o-mini (если нет ключа DeepSeek) # LLM_BASE_URL= → переопределить (без /chat/completions) # LLM_MODEL= # LLM_NO_JSON=1 → убрать response_format, если API не принимает json_object # DEEPSEEK_API_KEY= # OPENAI_API_KEY=