"""
config.py - 환경 설정 및 DB 연결
"""
import os
import pymysql

# ---- DB 설정 (운영 시 환경변수로 override) ----
DB_CONFIG = {
    "host":     os.getenv("CQ_DB_HOST", "127.0.0.1"),
    "port":     int(os.getenv("CQ_DB_PORT", "3306")),
    "user":     os.getenv("CQ_DB_USER", "root"),
    "password": os.getenv("CQ_DB_PASS", ""),
    "database": os.getenv("CQ_DB_NAME", "cosmetics_qpred"),
    "charset":  "utf8mb4",
    "cursorclass": pymysql.cursors.DictCursor,
}

MODEL_DIR  = os.getenv("CQ_MODEL_DIR", os.path.join(os.path.dirname(__file__), "..", "model"))
MODEL_PATH = os.path.join(MODEL_DIR, "quality_model.pkl")
MODEL_VER  = "1.0.0"

# 예측 대상 물성 항목
REG_TARGETS = ["ph", "hardness", "specific_grav", "content_pct", "viscosity"]
# DB 컬럼 ↔ 예측 컬럼 매핑 (cq_quality 컬럼명)
QUALITY_COLS = {
    "ph": "ph", "hardness": "hardness", "specific_grav": "specific_grav",
    "content_pct": "content_pct", "viscosity": "viscosity",
}


def get_conn():
    """MySQL 연결 반환 (호출측에서 close 책임)"""
    return pymysql.connect(**DB_CONFIG)
