server:
  port: 8844
spring:
  application:
    name: tulingmall-order-curr
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848
#  datasource:
#    url: jdbc:mysql://192.168.65.223:3306/tl_mall_order?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8
#    username: tlmall
#    password: tlmall123
#    druid:
#      initial-size: 5 #连接池初始化大小
#      min-idle: 10 #最小空闲连接数
#      max-active: 20 #最大连接数
#      web-stat-filter:
#        exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*" #不统计这些请求数据
#      stat-view-servlet: #访问监控网页的登录用户名和密码
#        login-username: druid
#        login-password: druid
  #分库分表配置
  shardingsphere:
    #数据源配置
    datasource:
      names: ds-master,ds-slave
      ds-master:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://localhost:3306/tl_mall_order?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=true
        initialSize: 5
        minIdle: 10
        maxActive: 30
        validationQuery: SELECT 1 FROM DUAL
        username: root
        password: 123456
      ds-slave:
        type: com.alibaba.druid.pool.DruidDataSource
        driver-class-name: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://localhost:3306/tl_mall_order_slave?serverTimezone=UTC&useSSL=false&useUnicode=true&characterEncoding=UTF-8&allowPublicKeyRetrieval=true
        initialSize: 5
        minIdle: 10
        maxActive: 30
        validationQuery: SELECT 1 FROM DUAL
        username: root
        password: 123456
    sharding:
      default-data-source-name: ds-master
      default-database-strategy:
        none:
      tables:
        oms_order:
          actual-data-nodes: ds-master.oms_order_$->{0..31}
          table-strategy:
            complex:
              sharding-columns: id,member_id
              algorithm-class-name: com.tuling.tulingmall.ordercurr.sharding.OmsOrderShardingAlgorithm
#          key-generator:
#            column: id
#            type: CUSTOM
#            props:
#              worker.id: 123
#              redis:
#                prefix: 'order_id_prefix:'
        oms_order_item:
          actual-data-nodes: ds-master.oms_order_item_$->{0..31}
          table-strategy:
            complex:
              sharding-columns: order_id
              algorithm-class-name: com.tuling.tulingmall.ordercurr.sharding.OmsOrderItemShardingAlgorithm
#          key-generator:
#            column: id
#            type: SNOWFLAKE
#            props:
#              worker.id: 123
      binding-tables: oms_order,oms_order_item
      broadcastTables:
        - oms_company_address
        - oms_order_operate_history
        - oms_order_return_apply
        - oms_order_return_reason
        - oms_order_setting
    #读写分离配置
    masterSlaveRules:
      name: ds_ms
      masterDataSourceName: ds-master
      slaveDataSourceNames: [ds-slave]
      loadBalanceAlgorithmType: ROUND_ROBIN
    props:
      sql:
        show: true

#  redis:
#    host: 192.168.65.153 #Redis服务器地址
#    database: 0 # Redis数据库索引（默认为0）
#    port: 6379 # Redis服务器连接端口
#    password: tlmall # Redis服务器连接密码（默认为空）
#    jedis:
#      pool:
#        max-active: 8 # 连接池最大连接数（使用负值表示没有限制）
#        max-wait: -1ms # 连接池最大阻塞等待时间（使用负值表示没有限制）
#        max-idle: 8 # 连接池中的最大空闲连接
#        min-idle: 0 # 连接池中的最小空闲连接
#    timeout: 3000ms # 连接超时时间（毫秒）
#  rabbitmq:
#    host: 192.168.65.232
#    port: 5672
#    virtual-host: /
#    username: admin
#    password: admin
#    publisher-confirms: true #如果对异步消息需要回调必须设置为true
#  application:
#    name: tulingmall-order
#  cloud:
#    nacos:
#      discovery:
#        server-addr: 192.168.65.232:8848
  main:
    allow-bean-definition-overriding: true


#feign:
#  client:
#    config:
#      default:
#        loggerLevel: full
#        requestInterceptors:
#          - com.tuling.tulingmall.feignapi.interceptor.HeaderInterceptor
#        readTimeout: 3000
#        connectTimeout: 3000
#logging:
#  level:
#    com:
#      tuling:
#        tulingmall:
#          feignapi:
#            ums:
#              UmsMemberReceiveAddressFeignApi: debug

# 自定义redis键值
#redis:
#  key:
#    prefix:
#      authCode: "portal:authCode:"
#      orderId: "portal:orderId:"
#    expire:
#      authCode: 90 # 验证码超期时间

#支付-当面付qrcode存储与访问路径设置
#trade:
#  zhifu:
#    qrcode:
#      aliPayPath: /alipay
#      weChatPath: /wechat
#      storePath: C:/temp/qr-code
#      httpBasePath: /static/qrcode
#      paySuccessCallBack: http://yangguo.natapp1.cc/order/paySuccess


#rocketmq:
#  name-server: 192.168.65.164:9876 #连接超时时间
#  producer:
#    send-message-timeout: 30000 #发送消息超时时间
#    group: order-group
#  tulingmall:
#    scheduleTopic: order-status-check #定时任务
#    cancelGroup: cancel-order #消费组业务逻辑,取消超时未支付订单
#    transGroup: cart-delete #事务消息群组
#    transTopic: order-cart #订单-购物车主题
#    asyncOrderTopic: async-order #异步订单topic
#    asyncOrderGroup: async-order-group #异步下单消息消费