QrcodePaymentTimeoutConfig.java:默认值、范围、配置读写和异常回退。QrcodePaymentHttpClientFactory.java:创建只覆盖读取超时的扫码支付客户端。InputQrcodePaymentTimeoutPop.java:校验 1~100 秒输入,不直接持久化。input_qrcode_payment_timeout_pop_layout.xml:输入弹框布局。Constants、RetrofitClient、RetrofitRequest。FragmentPayment、支付设置布局和字符串资源。MainActivity、QuotaActivity、QuotaNoKeyboardActivity、FreeActivity、FreeNoKeyboardActivity。NewQuotaActivity。PaymentManager。文件:Constants.java、新增 QrcodePaymentTimeoutConfig.java 和对应测试。
Constants 增加统一支付类型常量和偏好键。MIN=1、MAX=100、DEFAULT=30、读写和校验。git diff --check。./gradlew :app:testDebugUnitTest --tests com.cpt.cusumption.utils.QrcodePaymentTimeoutConfigTest
文件:新增 QrcodePaymentHttpClientFactory.java 和测试,修改 RetrofitClient.java。
baseClient.newBuilder() 的专用客户端工厂,非法超时回退 30 秒。RetrofitClient 增加 createApiWithReadTimeout,不写入全局 Retrofit 缓存。./gradlew :app:testDebugUnitTest \ --tests com.cpt.cusumption.utils.QrcodePaymentTimeoutConfigTest \ --tests com.cpt.cusumption.network.QrcodePaymentHttpClientFactoryTest
文件:RetrofitRequest.java 和 5 个当前可达支付页面。
orderPayment,内部转发到新四参数重载并默认不使用扫码超时。useQrcodePaymentTimeout,扫码时读取最新配置并创建专用 API。MainActivity 改用 Constants.PAYMENT_TYPE_QR_CODE。NewQuotaActivity 和 PaymentManager 无差异。git diff -- app/src/main/java/com/cpt/cusumption/activity/NewQuotaActivity.java \ app/src/main/java/com/cpt/cusumption/utils/PaymentManager.java ./gradlew :app:compileDebugJavaWithJavac
文件:新增输入弹框 Java/XML,修改字符串资源。
newInstance 接收当前值,非法参数回退 30。文件:fragment_payment_layout.xml、FragmentPayment.java。
:app:testDebugUnitTest。:app:compileDebugJavaWithJavac。git diff --check,检查排除文件无差异。在 zhctprompt/work_android/CusumptionMachine/change_records/ 创建同名 Markdown 和 HTML,记录背景、实际文件、配置边界、5 个覆盖页面、排除项、验证结果和限制。
2026-09-16-qrcode-payment-http-timeout-config.md。每个任务只执行只读状态和差异检查。不要暂存、提交或推送,除非用户后续明确授权。