# 项目相关配置
ruoyi:
  # 名称
  name: airport
  # 版本
  version: 3.9.0
  # 版权年份
  copyrightYear: 2025
  # 文件路径 示例（ Windows配置D:/ruoyi/uploadPath，Linux配置 /home/ruoyi/uploadPath）
  profile: /home/airport/uploadPath-haikou
  # 获取ip地址开关
  addressEnabled: false
  # 验证码类型 math 数字计算 char 字符验证
  captchaType: math

# 开发环境配置
server:
  # 服务器的HTTP端口，默认为8080
  port: 8088
  servlet:
    # 应用的访问路径
    context-path: /
  # Undertow 服务器配置
  undertow:
    # URI编码
    url-charset: UTF-8
    # HTTP请求头最大大小（解决文件名过长问题）
    max-http-header-size: 65536
    # 设置IO线程数，它主要执行非阻塞的任务
    io-threads: 16
    # 阻塞任务线程池，当执行类似servlet请求阻塞操作，undertow会从这个线程池中取得线程
    worker-threads: 256
    # 以下的配置会影响buffer，这些buffer会用于服务器连接的IO操作
    # 每块buffer的空间大小，越小空间被利用越充分
    buffer-size: 1024
    # 每个区分配的buffer数量，所以pool的大小是buffer-size * buffers-per-region
    # buffers-per-region: 1024
    # 是否分配的直接内存(NIO直接分配的堆外内存)
    direct-buffers: true

# 日志配置
logging:
  level:
    com.sundot.airport: debug
    org.springframework: warn
    # 打印完整SQL和参数
    com.sundot.airport.attendance.mapper: debug

# 用户配置
user:
  password:
    # 密码最大错误次数
    maxRetryCount: 5
    # 密码锁定时间（默认10分钟）
    lockTime: 10

# Spring配置
spring:
  # 资源信息
  messages:
    # 国际化资源文件路径
    basename: i18n/messages
  profiles:
    active: druid
  # 文件上传
  servlet:
    multipart:
      # 单个文件大小
      max-file-size: 10MB
      # 设置总上传的文件大小
      max-request-size: 20MB
  # 服务模块
  devtools:
    restart:
      # 热部署开关
      enabled: true
  # redis 配置
  redis:
    # 地址
#    host: 192.168.3.222
    host: 127.0.0.1
    # 端口，默认为6379
    port: 6379
    # 数据库索引 测试是4库
    database: 2
    # 密码
    password: Qwer+1234
    # 连接超时时间
    timeout: 10s
    lettuce:
      pool:
        # 连接池中的最小空闲连接
        min-idle: 0
        # 连接池中的最大空闲连接
        max-idle: 8
        # 连接池的最大数据库连接数
        max-active: 8
        # #连接池最大阻塞等待时间（使用负值表示没有限制）
        max-wait: -1ms
  config:
    import: classpath:level-config.yml

# token配置
token:
  # 令牌自定义标识
  header: Authorization
  # 令牌密钥
  secret: abcdefghijklmnopqrstuvwxyz
  # 令牌有效期（默认30分钟）
  expireTime: 30

# MyBatis配置
mybatis:
  # 搜索指定包别名
  typeAliasesPackage: com.sundot.airport.**.domain
  # 配置mapper的扫描，找到所有的mapper.xml映射文件
  mapperLocations: classpath*:mapper/**/*Mapper.xml
  # 加载全局的配置文件
  configLocation: classpath:mybatis/mybatis-config.xml

# MyBatis Plus配置
mybatis-plus:
  # 搜索指定包别名
  typeAliasesPackage: com.sundot.airport.**.domain
  # 配置mapper的扫描，找到所有的mapper.xml映射文件
  mapperLocations: classpath*:mapper/**/*Mapper.xml
  # 加载全局的配置文件
  configLocation: classpath:mybatis/mybatis-config.xml

# PageHelper分页插件
pagehelper:
  helperDialect: mysql
  supportMethodsArguments: true
  params: count=countSql

# Swagger配置
swagger:
  # 是否开启swagger
  enabled: true
  # 请求前缀
  pathMapping: /dev-api

# 防止XSS攻击
xss:
  # 过滤开关
  enabled: true
  # 排除链接（多个用逗号分隔）
  excludes: /system/notice
  # 匹配链接
  urlPatterns: /system/*,/monitor/*,/tool/*

# 阿里云短信配置
aliyun:
  sms:
    # AccessKey ID
    accessKeyId: LTAI5t8wXQNPkEQxEk1vvUay
    # AccessKey Secret
    accessKeySecret: RIRVNNt5IjJ0VJqSszHk3RYZG9xAdA
    # 短信签名名称
    signName: 北京阳光汇点数码科技
    # 短信模板 CODE
    templateCode: SMS_503630027
    # 是否启用短信登录
    enabled: true