# 项目相关配置
vetti:
  # 名称
  name: Vetti
  # 版本
  version: 3.9.0
  # 版权年份
  copyrightYear: 2025
  # 文件路径 示例（ Windows配置D:/vetti/uploadPath，Linux配置 /home/vetti/uploadPath）
  profile: ./uploadPath
  # 获取ip地址开关
  addressEnabled: false
  # 验证码类型 math 数字计算 char 字符验证
  captchaType: math
  # 国际化默认语言环境
  international:
    enable: true

# Spring配置
spring:
  # 资源信息
  messages:
    # 国际化资源文件路径
    basename: i18n/messages
  profiles:
    active: druid
  # 文件上传
  servlet:
    multipart:
      # 单个文件大小
      max-file-size: 10MB
      # 设置总上传的文件大小
      max-request-size: 20MB
  # 服务模块
  devtools:
    restart:
      # 热部署开关
      enabled: true
  mvc:
    async:
      request-timeout: 120000

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

# MyBatis配置
mybatis:
  # 搜索指定包别名
  typeAliasesPackage: com.vetti.**.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 start #################################
# Swagger配置
swagger:
  # 是否开启swagger
  enabled: true
  # 请求前缀
  pathMapping: /prod-api
#################################### Swagger end ###################################

server:
  error:
    include-stacktrace: never  # 永不输出 trace 信息

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