application.yml — all services:
- Replace hardcoded jdbc:mysql://39.107.53.187 with ${SPRING_DATASOURCE_URL:fallback}
- Same for SPRING_DATASOURCE_USERNAME/PASSWORD
- im-service: replace hardcoded redisdev.xuqinmin.com with ${SPRING_DATA_REDIS_*}
This ensures docker-compose environment overrides take effect; without these
placeholders, Spring Boot's relaxed binding couldn't override the YAML values
and the private deployment connected to production databases.
StoreSubmissionService.refreshStoreReviewStatus — two bugs fixed:
1. MI/UNDER_REVIEW_XIAOMI branch now guards against downgrading APPROVED state.
Xiaomi's poll API returns UNDER_REVIEW_XIAOMI when the submitted version is
not yet the live version, even after the store approves it. Previously this
caused the manual refresh to overwrite a webhook-confirmed APPROVED with
UNDER_REVIEW on every click.
2. When the poll returns APPROVED but currentSubmissionLive=false (another version
is live on the store), no longer overwrite an existing APPROVED (from webhook)
with nonCurrentRelease=true. The webhook is authoritative; the live version
difference just means distribution is pending, not that this is a non-current
release. Only adds nonCurrentRelease when transitioning FROM a non-APPROVED
state (true pre-existing detection).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
57 行
1.5 KiB
YAML
57 行
1.5 KiB
YAML
server:
|
|
port: 8082
|
|
|
|
spring:
|
|
application:
|
|
name: im-service
|
|
datasource:
|
|
url: ${SPRING_DATASOURCE_URL:jdbc:mysql://39.107.53.187:3306/xuqm_im?useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true}
|
|
username: ${SPRING_DATASOURCE_USERNAME:xuqm}
|
|
password: ${SPRING_DATASOURCE_PASSWORD:Xuqm@2026}
|
|
driver-class-name: com.mysql.cj.jdbc.Driver
|
|
hikari:
|
|
minimum-idle: 5
|
|
maximum-pool-size: 20
|
|
connection-timeout: 30000
|
|
idle-timeout: 300000
|
|
max-lifetime: 900000
|
|
jpa:
|
|
hibernate:
|
|
ddl-auto: update
|
|
show-sql: false
|
|
properties:
|
|
hibernate:
|
|
dialect: org.hibernate.dialect.MySQLDialect
|
|
data:
|
|
redis:
|
|
host: ${SPRING_DATA_REDIS_HOST:redisdev.xuqinmin.com}
|
|
port: ${SPRING_DATA_REDIS_PORT:6379}
|
|
password: ${SPRING_DATA_REDIS_PASSWORD:xuqinmin1022}
|
|
database: ${SPRING_DATA_REDIS_DATABASE:2}
|
|
timeout: 10s
|
|
lettuce:
|
|
pool:
|
|
min-idle: 0
|
|
max-idle: 8
|
|
max-active: 8
|
|
jackson:
|
|
time-zone: UTC
|
|
serialization:
|
|
write-dates-as-timestamps: false
|
|
|
|
jwt:
|
|
secret: ${XUQM_JWT_SECRET:xuqm-tenant-service-secret-key-must-be-at-least-256-bits-long-for-hmac}
|
|
expiration: 0
|
|
|
|
im:
|
|
tenant-service-url: ${TENANT_SERVICE_URL:http://127.0.0.1:9001}
|
|
internal-token: ${SDK_INTERNAL_TOKEN:xuqm-internal-token}
|
|
push-service-url: ${PUSH_SERVICE_URL:http://127.0.0.1:8083}
|
|
multi-login: true
|
|
message-history-days: 30
|
|
webhook-timeout-ms: 3000
|
|
|
|
logging:
|
|
level:
|
|
com.xuqm: DEBUG
|