| | |
| | | case PENDING: // 待处理 - 不同步 |
| | | case ARRIVED: // 已到达 - 不同步 |
| | | default: |
| | | log.debug("新系统状态不需要同步到旧系统: {}", taskStatus.getInfo()); |
| | | // log.debug("新系统状态不需要同步到旧系统: {}", taskStatus.getInfo()); |
| | | return null; |
| | | } |
| | | } |
| | |
| | | */ |
| | | public static boolean shouldUpdateLegacyStatus(Integer newStatusCode, Integer oldStatusCode) { |
| | | if (newStatusCode == null || oldStatusCode == null) { |
| | | log.warn("状态码为空,跳过更新,新状态码: {}, 旧状态码: {}", newStatusCode, oldStatusCode); |
| | | // log.warn("状态码为空,跳过更新,新状态码: {}, 旧状态码: {}", newStatusCode, oldStatusCode); |
| | | return false; |
| | | } |
| | | |
| | | // 防止状态倒退:旧系统状态 >= 新系统要推送的状态时,不更新 |
| | | // 原因:可能是旧系统已经处理了更新的状态,而新系统由于时间差还没有同步到 |
| | | if (oldStatusCode >= newStatusCode) { |
| | | log.info("旧系统状态({}) >= 新系统目标状态({}),跳过推送,防止状态倒退," + |
| | | "旧系统: {} ({}), 新系统目标: {} ({})", |
| | | oldStatusCode, newStatusCode, |
| | | oldStatusCode, getLegacyStatusDescription(oldStatusCode), |
| | | newStatusCode, getLegacyStatusDescription(newStatusCode)); |
| | | // log.info("旧系统状态({}) >= 新系统目标状态({}),跳过推送,防止状态倒退," + |
| | | // "旧系统: {} ({}), 新系统目标: {} ({})", |
| | | // oldStatusCode, newStatusCode, |
| | | // oldStatusCode, getLegacyStatusDescription(oldStatusCode), |
| | | // newStatusCode, getLegacyStatusDescription(newStatusCode)); |
| | | return false; |
| | | } |
| | | |
| | |
| | | if (oldStatusCode >= 8) { |
| | | // 旧系统已经是完成态(8,9,10),不应该被任何中间状态覆盖 |
| | | if (newStatusCode < 8) { |
| | | log.warn("旧系统已是终态({})(:{}),拒绝推送中间状态({})(:{})", |
| | | oldStatusCode, getLegacyStatusDescription(oldStatusCode), |
| | | newStatusCode, getLegacyStatusDescription(newStatusCode)); |
| | | // log.warn("旧系统已是终态({})(:{}),拒绝推送中间状态({})(:{})", |
| | | // oldStatusCode, getLegacyStatusDescription(oldStatusCode), |
| | | // newStatusCode, getLegacyStatusDescription(newStatusCode)); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | log.debug("允许推送状态,旧系统: {} ({}), 新系统目标: {} ({})", |
| | | oldStatusCode, getLegacyStatusDescription(oldStatusCode), |
| | | newStatusCode, getLegacyStatusDescription(newStatusCode)); |
| | | |
| | | // log.debug("允许推送状态,旧系统: {} ({}), 新系统目标: {} ({})", |
| | | // oldStatusCode, getLegacyStatusDescription(oldStatusCode), |
| | | // newStatusCode, getLegacyStatusDescription(newStatusCode)); |
| | | // |
| | | return true; |
| | | } |
| | | |