|
|
@@ -250,7 +250,9 @@ public class QuotaService {
|
|
|
}
|
|
|
|
|
|
// 5. 调支付宝 alipay.ebpp.invoice.expensecontrol.quota.modify (ADD/DEDUCT)
|
|
|
- if (diff.compareTo(BigDecimal.ZERO) != 0) {
|
|
|
+ // 仅当 quota_id 是支付宝侧真实 ID(以"20"开头的时间戳格式)时才同步
|
|
|
+ boolean isAlipayQuotaId = quotaId != null && quotaId.matches("^20\\d{26,}$");
|
|
|
+ if (diff.compareTo(BigDecimal.ZERO) != 0 && isAlipayQuotaId) {
|
|
|
try {
|
|
|
AlipayEbppInvoiceExpensecontrolQuotaModifyModel model =
|
|
|
new AlipayEbppInvoiceExpensecontrolQuotaModifyModel();
|
|
|
@@ -283,6 +285,8 @@ public class QuotaService {
|
|
|
log.error("支付宝额度调整异常", e);
|
|
|
throw new BusinessException(500, "支付宝额度调整异常: " + e.getMessage());
|
|
|
}
|
|
|
+ } else if (diff.compareTo(BigDecimal.ZERO) != 0) {
|
|
|
+ log.info("本地额度调整(无支付宝quota_id,仅更新本地): quotaId={}, diff={}", quotaId, diff);
|
|
|
}
|
|
|
|
|
|
// 6. 更新本地额度记录(同时更新 totalAmount 和 availableAmount)
|