--- #################### 注册中心 + 配置中心相关配置 ####################

spring:
  cloud:
    nacos:
      server-addr: ${NACOS_SERVER_ADDR:prod-nacos.example.com:8848} # Nacos 服务器地址（支持环境变量，格式：IP:端口）
      username: ${NACOS_USERNAME:nacos} # Nacos 账号（支持环境变量）
      password: ${NACOS_PASSWORD:nacos} # Nacos 密码（支持环境变量）
      discovery:
        enabled: true
        namespace: prod # 命名空间（生产环境）
        group: DEFAULT_GROUP # 使用的 Nacos 配置分组
        metadata:
          version: 1.0.0 # 服务实例的版本号
      config:
        enabled: false
        namespace: prod # 命名空间（生产环境）
        group: DEFAULT_GROUP # 使用的 Nacos 配置分组
        file-extension: yml
        import-check:
          enabled: false # 禁用 Nacos 配置检查
    openfeign:
      enabled: true

--- #################### 数据库相关配置 ####################

spring:
  # 数据源配置项
  autoconfigure:
    exclude:
      # 不排除 XdzApiLogRpcAutoConfiguration，使用 Feign 客户端调用 business-server 的日志接口
      # 不排除 XdzSecurityRpcAutoConfiguration，使用 Feign 客户端调用 user-server 的安全接口
  datasource:
    dynamic: # 多数据源配置
      primary: master
      datasource:
        master:
          url: jdbc:mysql://${DB_URL:prod-mysql.example.com:3306}/xdz_crm?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true&rewriteBatchedStatements=true&useUnicode=true&characterEncoding=UTF-8 # 生产环境数据库地址（支持环境变量）
          driver-class-name: com.mysql.cj.jdbc.Driver
          username: ${DB_USERNAME:root} # 生产环境数据库用户名（支持环境变量）
          password: ${DB_PASSWORD:} # 生产环境数据库密码（支持环境变量，必须配置）

  # Redis 配置
  data:
    redis:
      host: ${REDIS_HOST:prod-redis.example.com} # 生产环境 Redis 地址（支持环境变量）
      port: ${REDIS_PORT:6379} # 端口（支持环境变量）
      database: ${REDIS_DATABASE:0} # 数据库索引（支持环境变量）
      password: ${REDIS_PASSWORD:} # 生产环境 Redis 密码（支持环境变量，建议开启）

--- #################### 新大洲相关配置 ####################

xdz:
  security:
    mock-enable: false  # 生产环境禁用 mock
    oauth2-jwt:
      enabled: true
      public-key-path: classpath:jwt/oauth2_jwt_public_key.pem
  access-log:
    enable: false # 平台服务禁用访问日志（使用本地空实现）

--- #################### 日志配置 ####################
logging:
  level:
    root: INFO  # 生产环境使用 INFO 级别

