config.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. from pathlib import Path
  2. from typing import Dict, List
  3. from enum import Enum
  4. import json
  5. class Settings:
  6. BASE_PATH = Path(__file__).parent.parent.parent.absolute()
  7. CONFIG_PATH = BASE_PATH / 'Config.json'
  8. API_PREFIX: str = "/api" # 通用前缀
  9. DATA_DIR = BASE_PATH / "Data"
  10. SCORE_CONFIG_PATH = BASE_PATH / "app/core/scoring_config.json"
  11. # 缺陷图片存储位置
  12. DEFECT_IMAGE_DIR = BASE_PATH / "DefectImage"
  13. # 分数计算接口url
  14. SCORE_UPDATE_SERVER_URL = "http://127.0.0.1:7754"
  15. SCORE_RECALCULATE_ENDPOINT = f"{SCORE_UPDATE_SERVER_URL}/api/card_score/score_recalculate"
  16. # 分数计算配置接口
  17. SCORE_SERVER_CONFIG_URL = f"{SCORE_UPDATE_SERVER_URL}/api/config/scoring_config"
  18. # 评级后台接口url
  19. RATING_SERVER_URL = "http://192.168.77.89:8090"
  20. RATING_REPORT_SAVE_API = f"{RATING_SERVER_URL}/rating/card/ratingReport/save"
  21. # --- 数据库配置 ---
  22. DB_NAME = 'card_score_gray_database'
  23. DB_CARD_TABLE_NAME = 'cards'
  24. DB_IMAGE_TABLE_NAME = 'card_images'
  25. DB_GRAY_IMAGE_TABLE_NAME = 'card_gray_images' # 灰度图表名
  26. DATABASE_CONFIG: Dict[str, str] = {
  27. 'user': 'root',
  28. 'password': '123456',
  29. 'host': '127.0.0.1',
  30. }
  31. # 连接到指定数据库的配置
  32. DATABASE_CONFIG_WITH_DB: Dict[str, str] = {
  33. **DATABASE_CONFIG,
  34. 'database': DB_NAME
  35. }
  36. def set_config(self):
  37. with open(self.CONFIG_PATH, 'r') as f:
  38. config_json = json.load(f)
  39. self.DATABASE_CONFIG = config_json["mysql_config"]
  40. self.DB_NAME = config_json["database_name"]
  41. settings = Settings()
  42. print(f"项目根目录: {settings.BASE_PATH}")
  43. print(f"数据存储目录: {settings.DATA_DIR}")