"""公共配置:统一从环境变量或 Flask config 读取配置项。""" import os from flask import current_app def get_config(key: str, default: str = "") -> str: """从环境变量获取配置(优先级:环境变量 > Flask config)。""" value = os.environ.get(key, "") if value: return value try: return current_app.config.get(key, default) except RuntimeError: return default def get_storage_root() -> str: """获取保险模块持久化存储根目录。 优先使用 INSURANCE_STORAGE_ROOT 环境变量, 默认为 /app/api/storage/insurance(Docker 持久化卷)。 本地开发时回退到 ./storage/insurance。 """ root = os.environ.get("INSURANCE_STORAGE_ROOT", "") if root: return root # Docker 环境 if os.path.isdir("/app/api/storage"): return "/app/api/storage/insurance" # 本地开发 return os.path.join(os.getcwd(), "storage", "insurance")