diff --git a/src/main/java/com/gaotao/modules/dashboard/task/DashboardPushTask.java b/src/main/java/com/gaotao/modules/dashboard/task/DashboardPushTask.java index 318e892..f105327 100644 --- a/src/main/java/com/gaotao/modules/dashboard/task/DashboardPushTask.java +++ b/src/main/java/com/gaotao/modules/dashboard/task/DashboardPushTask.java @@ -45,6 +45,10 @@ public class DashboardPushTask { @Value("${custom.wcs-board-api}") private String wcsBoardApi; + + // 看板推送任务开关配置(所有看板共用一个开关) + @Value("${dashboard.push.enabled:true}") + private boolean dashboardPushEnabled; /** * 上次推送的数据哈希值(用于检测数据变更) @@ -65,9 +69,20 @@ public class DashboardPushTask { *
  • 如果数据变化频繁,可以缩短间隔(如2-3秒)
  • *
  • 如果数据变化不频繁,可以延长间隔(如10-15秒)
  • * + * + *

    配置开关:

    + * */ @Scheduled(fixedRate = 5000) public void pushRobotPickingData() { + // 检查总开关 + if (!dashboardPushEnabled) { + log.trace("看板推送已禁用"); + return; + } + try { // 从WCS Board API获取机械臂拣选数据 Map data = getRobotPickingDataFromWcs(); @@ -239,6 +254,12 @@ public class DashboardPushTask { */ @Scheduled(fixedRate = 5000) public void pushSlittingBoardData() { + // 检查总开关 + if (!dashboardPushEnabled) { + log.trace("看板推送已禁用"); + return; + } + try { // 从数据库视图获取分切区数据 Map data = getSlittingBoardDataFromDb(); @@ -339,6 +360,12 @@ public class DashboardPushTask { */ @Scheduled(fixedRate = 5000) public void pushWarehouse3dBoardData() { + // 检查总开关 + if (!dashboardPushEnabled) { + log.trace("看板推送已禁用"); + return; + } + try { // 从数据库获取立体仓库看板数据 Map data = getWarehouse3dBoardDataFromDb(); @@ -722,6 +749,12 @@ public class DashboardPushTask { */ @Scheduled(fixedRate = 5000) public void pushFinishedProductBoardData() { + // 检查总开关 + if (!dashboardPushEnabled) { + log.trace("看板推送已禁用"); + return; + } + try { // 从数据库视图获取成品区数据 Map data = getFinishedProductBoardDataFromDb(); @@ -818,6 +851,12 @@ public class DashboardPushTask { */ @Scheduled(fixedRate = 5000) public void pushMaterialReceivingBoardData() { + // 检查总开关 + if (!dashboardPushEnabled) { + log.trace("看板推送已禁用"); + return; + } + try { // 从数据库视图获取原材收货区数据 Map data = getMaterialReceivingBoardDataFromDb(); diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index deb510a..f4dcbfb 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -145,3 +145,8 @@ scheduler: agv: max-task-num: 10 + +# 看板推送任务配置 +dashboard: + push: + enabled: false # 看板推送任务总开关(控制所有看板,默认关闭)