From f44f00034483637a48c4cfedf7b6e93b83c8c6af Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期四, 30 十月 2025 03:36:24 +0800
Subject: [PATCH] 1、 中空理片笼任务优化:进片调度增加限制,避免重复生成调度任务

---
 hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcScreenTask.java |   93 +++++++++++++++++++++++-----------------------
 1 files changed, 46 insertions(+), 47 deletions(-)

diff --git a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcScreenTask.java b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcScreenTask.java
index d5d59a5..0f51673 100644
--- a/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcScreenTask.java
+++ b/hangzhoumesParent/moduleService/TemperingGlassModule/src/main/java/com/mes/job/PlcScreenTask.java
@@ -1,18 +1,20 @@
 package com.mes.job;
+
 import cn.hutool.json.JSONObject;
 import com.mes.order.entity.Orders;
 import com.mes.order.service.OrdersService;
 import com.mes.pp.entity.OptimizeProject;
-import com.mes.pp.entity.request.AwaitingRepair;
 import com.mes.pp.entity.request.Reportingdamage;
 import com.mes.pp.service.OptimizeProjectService;
 import com.mes.pp.service.ReportingWorkService;
-import com.mes.tools.WebSocketServer;
+import com.mes.tools.WebSocketUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
-import java.util.ArrayList;
+
+import javax.annotation.Resource;
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
 import java.util.List;
 
 /**
@@ -25,64 +27,61 @@
     @Autowired
     private ReportingWorkService reportingWorkService;
     @Autowired
-    private  OptimizeProjectService optimizeProjectService;
+    private OptimizeProjectService optimizeProjectService;
     @Autowired
     private OrdersService ordersService;
+    @Resource
+    private WebSocketUtils webSocketUtils;
     /**
      * fixedRate : 涓婁竴涓皟鐢ㄥ紑濮嬪悗鍐嶆璋冪敤鐨勫欢鏃讹紙涓嶇敤绛夊緟涓婁竴娆¤皟鐢ㄥ畬鎴愶級
      * fixedDelay : 涓婁竴涓皟鐢ㄧ粨鏉熷悗鍐嶆璋冪敤鐨勫欢鏃�
      */
 
-    @Scheduled(fixedDelay = 2000)
-    public void screenHome(){
+//    @Scheduled(fixedDelay = 10000)
+    public void screenHome() {
         JSONObject jsonObject = new JSONObject();
-        //姝e湪绛夊緟杩涚墖鐨勭幓鐠�
         Reportingdamage reportingdamage = new Reportingdamage();
-        reportingdamage.setReportingWorkTime("2024-05-11");
-        //鑾峰彇鍒囧壊淇℃伅
-        reportingdamage.setThisProcess("鍒囧壊");
-        List<Reportingdamage> cutting = reportingWorkService.selectDamage(reportingdamage);
-        jsonObject.append("cutting", cutting);
-        //鑾峰彇纾ㄨ竟淇℃伅
-        reportingdamage.setThisProcess("纾ㄨ竟");
-        List<Reportingdamage> edging = reportingWorkService.selectDamage(reportingdamage);
-        jsonObject.append("edging", edging);
-        //鑾峰彇閽㈠寲淇℃伅
-        reportingdamage.setThisProcess("閽㈠寲");
-        List<Reportingdamage> tempering = reportingWorkService.selectDamage(reportingdamage);
-        jsonObject.append("tempering", tempering);
-        //鑾峰彇澶硅兌淇℃伅
-        reportingdamage.setThisProcess("澶硅兌");
-        List<Reportingdamage> doubling = reportingWorkService.selectDamage(reportingdamage);
-        jsonObject.append("doubling", doubling);
-        //鑾峰彇涓┖淇℃伅
-        reportingdamage.setThisProcess("涓┖");
-        List<Reportingdamage> hollow = reportingWorkService.selectDamage(reportingdamage);
-        jsonObject.append("hollow", hollow);
-        //鑾峰彇鍖呰淇℃伅
-        reportingdamage.setThisProcess("鍖呰");
-        List<Reportingdamage> packaging = reportingWorkService.selectDamage(reportingdamage);
-        jsonObject.append("packaging", packaging);
+        // 鑾峰彇褰撳墠鏃ユ湡
+        LocalDate today = LocalDate.now();
+        // 璁$畻鏈�杩戜竷澶╃殑寮�濮嬫棩鏈�
+        LocalDate startOfPeriod = today.minusDays(6); // 7澶╃殑鑼冨洿鍖呮嫭浠婂ぉ锛屾墍浠ュ噺鍘�6澶�
+        // 鏈�杩戜竷澶╃殑缁撴潫鏃ユ湡灏辨槸浠婂ぉ
+        LocalDate endOfPeriod = today;
+        // 鏍煎紡鍖栨棩鏈熶负瀛楃涓�
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+        String startOfPeriodStr = startOfPeriod.format(formatter);
+        String endOfPeriodStr = endOfPeriod.format(formatter);
+        // 璁剧疆涓烘渶杩戜竷澶╃殑鏃堕棿鑼冨洿
+//        reportingdamage.setReportingWorkTime("2024-05-11");
+        reportingdamage.setReportingWorkTime(startOfPeriodStr);
+        reportingdamage.setReportingWorkTime2(endOfPeriodStr);
+        //鎵囧舰鍥惧悇璁惧鐨勫姞宸ョ牬鎹熸暟閲�
+//        List<Reportingdamage> device = reportingWorkService.selectDamage(reportingdamage);
+//        jsonObject.append("device", device);
+
         //鑾峰彇娆$牬鏈ˉ淇℃伅
-        List<AwaitingRepair>awaitingRepairs = reportingWorkService.selectAwaitingRepair();
-        jsonObject.append("awaitingRepairs", awaitingRepairs);
+//        List<AwaitingRepair> awaitingRepairs = reportingWorkService.selectAwaitingRepair();
+//        jsonObject.append("awaitingRepairs", awaitingRepairs);
         //鑾峰彇姝e湪杩涜鐨勫伐绋�
-        List<OptimizeProject>optimizeProjects= optimizeProjectService.getDoingTask();
+        List<OptimizeProject> optimizeProjects = optimizeProjectService.getDoingTask();
         jsonObject.append("DoingTask", optimizeProjects);
         //鑾峰彇褰撳墠璁㈠崟
-        List<Orders>orders=ordersService.selectOrders();
+        List<Orders> orders = ordersService.selectOrders();
         jsonObject.append("orders", orders);
 
-        ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("screen");
-        if (sendwServer != null) {
-            for (WebSocketServer webserver : sendwServer) {
-                if (webserver != null) {
-                    webserver.sendMessage(jsonObject.toString());
-                } else {
-                    log.info("Home is closed");
-                }
-            }
-        }
+        /*鐜板満瑙勫垝鍥炬樉绀�*/
+
+        webSocketUtils.sendToWeb("screen", jsonObject);
+//        ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("screen");
+//        if (sendwServer != null) {
+//            for (WebSocketServer webserver : sendwServer) {
+//                if (webserver != null) {
+//                    webserver.sendMessage(jsonObject.toString());
+//                } else {
+//                    log.info("Home is closed");
+//                }
+//            }
+//        }
     }
 
 }
\ No newline at end of file

--
Gitblit v1.8.0