From 706eabba4750cf92282378ae5d2414f497a4578c Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期四, 08 一月 2026 12:51:23 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/utils/Utils.java | 33 +++++++++++++++++++++++++++++++++
1 files changed, 33 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index 6fd6c90..f2c7d43 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -11,9 +11,11 @@
import com.core.exception.CoolException;
import com.zy.asrs.entity.BasCrnp;
import com.zy.asrs.entity.BasDualCrnp;
+import com.zy.asrs.entity.BasStationDevice;
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.service.BasCrnpService;
import com.zy.asrs.service.BasDualCrnpService;
+import com.zy.asrs.service.BasStationDeviceService;
import com.zy.asrs.service.WrkMastService;
import com.zy.common.model.NavigateNode;
import com.zy.common.utils.NavigateUtils;
@@ -168,6 +170,18 @@
NavigateUtils navigateUtils = SpringUtils.getBean(NavigateUtils.class);
WrkMastService wrkMastService = SpringUtils.getBean(WrkMastService.class);
BasCrnpService basCrnpService = SpringUtils.getBean(BasCrnpService.class);
+ BasStationDeviceService basStationDeviceService = SpringUtils.getBean(BasStationDeviceService.class);
+
+ List<BasStationDevice> stationDevices = basStationDeviceService.selectList(new EntityWrapper<BasStationDevice>().eq("station_id", stationId));
+ boolean hasConfig = !stationDevices.isEmpty();
+ List<Integer> allowedCrnNos = new ArrayList<>();
+ if (hasConfig) {
+ for (BasStationDevice sd : stationDevices) {
+ if (SlaveType.Crn.toString().equals(sd.getDeviceType())) {
+ allowedCrnNos.add(sd.getDeviceNo());
+ }
+ }
+ }
Integer currentCircleTaskCrnNo = null;
Object object = redisUtil.get(RedisKeyType.CURRENT_CIRCLE_TASK_CRN_NO.key);
@@ -216,6 +230,9 @@
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;
@@ -277,6 +294,18 @@
NavigateUtils navigateUtils = SpringUtils.getBean(NavigateUtils.class);
WrkMastService wrkMastService = SpringUtils.getBean(WrkMastService.class);
BasDualCrnpService basDualCrnpService = SpringUtils.getBean(BasDualCrnpService.class);
+ BasStationDeviceService basStationDeviceService = SpringUtils.getBean(BasStationDeviceService.class);
+
+ List<BasStationDevice> stationDevices = basStationDeviceService.selectList(new EntityWrapper<BasStationDevice>().eq("station_id", stationId));
+ boolean hasConfig = !stationDevices.isEmpty();
+ List<Integer> allowedCrnNos = new ArrayList<>();
+ if (hasConfig) {
+ for (BasStationDevice sd : stationDevices) {
+ if (SlaveType.Crn.toString().equals(sd.getDeviceType())) {
+ allowedCrnNos.add(sd.getDeviceNo());
+ }
+ }
+ }
Wrapper<BasDualCrnp> wrapper = new EntityWrapper<BasDualCrnp>()
.eq("in_enable", "Y")
@@ -304,6 +333,10 @@
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;
--
Gitblit v1.9.1