#
luxiaotao1123
2024-12-06 1d7711fbd1d6fa4cb0cbf2d52052b3cf582d1b75
#
1个文件已修改
31 ■■■■ 已修改文件
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
@@ -109,7 +109,7 @@
            }
            // deprecate jam
            if (this.isJamBeDeprecatedByAvo(segment.getId())) {
            if (this.isExpiredJamByAvo(segment.getId())) {
                mainService.settleSegmentList(Utils.singletonList(segment), null);
                return;
            }
@@ -625,12 +625,31 @@
        return false;
    }
    private boolean isJamBeDeprecatedByAvo(Long avoSeg) {
        return 0 < jamService.count(new LambdaQueryWrapper<Jam>()
    /**
     * 1. the jam was deprecated
     * 2. the jam segment is finished
     *
     * all these by avoid segment
     */
    private boolean isExpiredJamByAvo(Long avoSeg) {
        List<Jam> jamList = jamService.list(new LambdaQueryWrapper<Jam>()
//                .eq(Jam::getAvoAgv, avoAgv)
                .eq(Jam::getAvoSeg, avoSeg)
                .eq(Jam::getState, JamStateType.DEPRECATED.toString())
        );
                .eq(Jam::getAvoSeg, avoSeg));
        if (Cools.isEmpty(jamList)) {
            return false;
        }
        if (jamList.size() > 1) {
            log.error("AvoSeg[id = {}] seg data has exception, result in two jams", avoSeg);
        }
        Jam jam = jamList.get(0);
        if (jam.getState().equals(JamStateType.DEPRECATED.toString())) {
            return true;
        }
        Segment jamSegment = segmentService.getById(jam.getJamSeg());
        if (jamSegment.getState().equals(SegmentStateType.FINISH.toString())) {
            return true;
        }
        return false;
    }
}