"""配置:从环境变量读,别把密码写死在代码里。""" import os class Settings: # 本地联调功能开关。生产环境保持关闭。 DEV_MODE = os.getenv("DEV_MODE", "false").lower() == "true" # MySQL(状态中心自己的库) MYSQL_DSN = os.getenv( "MYSQL_DSN", "mysql+pymysql://root:root@127.0.0.1:3306/rpa_center?charset=utf8mb4", ) # Oracle(他们的货品主数据,只读)。拿到真实连接串后填这里。 # 形如: username/password@host:1521/service_name ORACLE_DSN = os.getenv("ORACLE_DSN", "") ORACLE_USER = os.getenv("ORACLE_USER", "") ORACLE_PASSWORD = os.getenv("ORACLE_PASSWORD", "") # Oracle 货品主数据表(真实表名/列名拿到后改这里,先按设计文档 A~G 列占位) ORACLE_GOODS_TABLE = os.getenv("ORACLE_GOODS_TABLE", "GOODS_MASTER") ORACLE_COL_COMMON_NAME = os.getenv("ORACLE_COL_COMMON_NAME", "COMMON_NAME") # 通用名 ORACLE_COL_APPROVAL_NO = os.getenv("ORACLE_COL_APPROVAL_NO", "APPROVAL_NO") # 批准文号 ORACLE_COL_SPEC = os.getenv("ORACLE_COL_SPEC", "SPEC") # 规格 ORACLE_COL_UNIT = os.getenv("ORACLE_COL_UNIT", "BASE_UNIT") # 基本单位 ORACLE_COL_MANUFACTURER = os.getenv("ORACLE_COL_MANUFACTURER", "MANUFACTURER")# 生产厂家 ORACLE_COL_GOODS_ID = os.getenv("ORACLE_COL_GOODS_ID", "GOODS_ID") # 货品ID ORACLE_COL_GOODS_CODE = os.getenv("ORACLE_COL_GOODS_CODE", "GOODS_CODE") # 货品编码 # 对码货品主数据是否开工时全量 load 进内存(几万行推荐 True,快) MATCH_LOAD_INTO_MEMORY = os.getenv("MATCH_LOAD_INTO_MEMORY", "true").lower() == "true" # RPA 回调鉴权 token AGENT_TOKEN = os.getenv("AGENT_TOKEN", "dev-agent-token") # 合同审批等待(CONTRACT_APPROVE_WAIT):按业务方案定时查,不连续轮询。 # 到点由调度器触发 RPA 去查一次审批状态,没过就再排下一次。 CONTRACT_WAIT_INTERVAL_MIN = int(os.getenv("CONTRACT_WAIT_INTERVAL_MIN", "30")) # 每次间隔(分钟),业务方案≈半小时 CONTRACT_WAIT_MAX_CHECKS = int(os.getenv("CONTRACT_WAIT_MAX_CHECKS", "8")) # 最多查几次,超了升级OPS(8次≈4小时) settings = Settings()