#
Junjie
2026-01-12 074851753d1187d4e547966d643f4323c6b002bd
src/main/java/com/zy/asrs/utils/Utils.java
@@ -195,8 +195,14 @@
            if (currentCircleTaskCrnNo != null) {
                currentCircleTaskCrnNo = currentCircleTaskCrnNo + 1;
                BasCrnp basCrnp = basCrnpService.selectOne(new EntityWrapper<BasCrnp>().eq("crn_no", currentCircleTaskCrnNo));
                List<WrkMast> currentCrnTask = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("crn_no", currentCircleTaskCrnNo));
                BasCrnp basCrnp = basCrnpService.selectOne(new EntityWrapper<BasCrnp>()
                        .eq("crn_no", currentCircleTaskCrnNo)
                        .eq("in_enable", "Y")
                        .eq("status", 1)
                );
                List<WrkMast> currentCrnTask = wrkMastService.selectList(new EntityWrapper<WrkMast>()
                        .eq("crn_no", currentCircleTaskCrnNo)
                );
                if (currentCrnTask.size() <= 1) {
                    if (basCrnp != null) {
                        List<List<Integer>> rowList = basCrnp.getControlRows$();
@@ -230,9 +236,6 @@
            List<BasCrnp> enabledCrnps = new ArrayList<>();
            for (BasCrnp basCrnp : baseList) {
                if (hasConfig && !allowedCrnNos.contains(basCrnp.getCrnNo())) {
                    continue;
                }
                CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, basCrnp.getCrnNo());
                if (crnThread == null) {
                    continue;
@@ -274,12 +277,21 @@
            enabledCrnps.sort(Comparator.comparingInt(o -> map.getOrDefault(o.getCrnNo(), 0)));
            List<Integer> recommendList = new ArrayList<>();
            List<Integer> baseRowList = new ArrayList<>();
            for (BasCrnp basCrnp : enabledCrnps) {
                List<List<Integer>> rowList = basCrnp.getControlRows$();
                for (List<Integer> rows : rowList) {
                    list.addAll(rows);
                    if(allowedCrnNos.contains(basCrnp.getCrnNo())) {
                        recommendList.addAll(rows);
                    }else {
                        baseRowList.addAll(rows);
                    }
                }
            }
            list.addAll(recommendList);
            list.addAll(baseRowList);
        } catch (Exception e) {
            e.printStackTrace();
        }
@@ -333,10 +345,6 @@
            List<BasDualCrnp> enabledCrnps = new ArrayList<>();
            for (BasDualCrnp basDualCrnp : baseList) {
                if (hasConfig && !allowedCrnNos.contains(basDualCrnp.getCrnNo())) {
                    continue;
                }
                DualCrnThread dualCrnThread = (DualCrnThread) SlaveConnection.get(SlaveType.DualCrn, basDualCrnp.getCrnNo());
                if (dualCrnThread == null) {
                    continue;
@@ -378,12 +386,21 @@
            enabledCrnps.sort(Comparator.comparingInt(o -> map.getOrDefault(o.getCrnNo(), 0)));
            List<Integer> recommendList = new ArrayList<>();
            List<Integer> baseRowList = new ArrayList<>();
            for (BasDualCrnp basDualCrnp : enabledCrnps) {
                List<List<Integer>> rowList = basDualCrnp.getControlRows$();
                for (List<Integer> rows : rowList) {
                    list.addAll(rows);
                    if(allowedCrnNos.contains(basDualCrnp.getCrnNo())) {
                        recommendList.addAll(rows);
                    }else {
                        baseRowList.addAll(rows);
                    }
                }
            }
            list.addAll(recommendList);
            list.addAll(baseRowList);
        } catch (Exception e) {
            e.printStackTrace();
        }