fix: 控制器没有塘口时,也能打电话产生报警。

This commit is contained in:
tianyongbao
2026-06-06 09:21:51 +08:00
parent fcd5bcd032
commit f02bee1c8d
5 changed files with 436 additions and 238 deletions

View File

@@ -9,7 +9,7 @@ import org.springframework.stereotype.Component;
/**
* 支付订单补偿定时任务
* 定期扫描状态为"未支付/支付中/支付失败"但已有prepayId的订单,
* 定期扫描状态为"未支付/支付中/支付失败/已关闭"且有商户订单号的订单,
* 主动向微信支付查询实际状态,对已支付成功但回调丢失的订单进行补偿处理。
*
* 解决问题:用户实际已付款成功,但因网络/服务器等原因未收到微信支付回调通知,
@@ -27,10 +27,9 @@ public class PayOrderCompensationTask {
/**
* 每1分钟执行一次订单补偿扫描
* 查询已创建超过1分钟但未超过48小时的未完成订单
* 向微信主动查单,补偿漏掉的回调。
* 优先扫描最近订单,同时通过历史游标持续补扫老异常订单。
*/
@Scheduled(fixedDelay = 60000, initialDelay = 60000)
// @Scheduled(fixedDelay = 60000, initialDelay = 60000)
public void compensateOrders() {
try {
int count = payOrderBusinessService.compensateUnpaidOrders();
@@ -44,9 +43,9 @@ public class PayOrderCompensationTask {
/**
* 每10分钟修复一次已支付订单的设备有效期。
* 用于兜底处理历史数据或极端情况下订单成功但设备有效期未落库的问题
* 优先扫描最近成功订单,同时通过历史游标持续补扫老成功订单
*/
@Scheduled(fixedDelay = 600000, initialDelay = 120000)
// @Scheduled(fixedDelay = 600000, initialDelay = 120000)
public void repairDeviceDeadTime() {
try {
int count = payOrderBusinessService.repairPaidOrderDeviceDeadTime();