From 2c2413760b6467bf62402dba7338bd3bbcbd7341 Mon Sep 17 00:00:00 2001
From: huang <1532065656@qq.com>
Date: 星期二, 20 五月 2025 14:20:38 +0800
Subject: [PATCH] 添加产量报表功能页面

---
 JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineEdging.java |   37 ++++++++++++++++++++++---------------
 1 files changed, 22 insertions(+), 15 deletions(-)

diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineEdging.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineEdging.java
index eec1556..f448c8e 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineEdging.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineEdging.java
@@ -36,10 +36,11 @@
     LineConfigurationService lineConfigurationService;
     public static int thinness = 40;
     public static int edgSpeed = 40;
-    public static Long machineId = 6L;
+    //public static Long machineId = 6L;
     public List<Map> sendRecords = new ArrayList<>();
-
-    public MachineEdging(TaskingMapper taskingMapper, MachineMapper machineMapper, TaskingService taskingService, PrimitiveTaskService primitiveTaskService, LineConfigurationService lineConfigurationService){
+    public Machine thisMachine;
+    public MachineEdging(Machine machine,TaskingMapper taskingMapper, MachineMapper machineMapper, TaskingService taskingService, PrimitiveTaskService primitiveTaskService, LineConfigurationService lineConfigurationService){
+        this.thisMachine = machine;
         this.taskingMapper = taskingMapper;
         this.machineMapper = machineMapper;
         this.taskingService = taskingService;
@@ -48,8 +49,8 @@
     }
 
     public void plcStart() {
-        Machine machine=machineMapper.selectById(machineId);
-        ModbusTcp modbusTcp1 =new ModbusTcp(machine.getIp(),machine.getPort(),"PlcEdging");
+        Machine machine=machineMapper.selectById(thisMachine.getId());
+        ModbusTcp modbusTcp1 =new ModbusTcp(machine.getIp(),machine.getPort(),machine.getFileName());
         try {
             modbusTcp1.connect();
             PlcAgreement plcAgreement=modbusTcp1.getPlcAgreement("PlcEdging");
@@ -63,7 +64,6 @@
 
             PlcParameter plcRequest =plcAgreement.getPlcParameter("plcRequest");//璇锋眰瀛�
             PlcParameter mesSend =plcAgreement.getPlcParameter("mesSend");//鍙戦�佸瓧
-
 
             PlcParameter plcReport =plcAgreement.getPlcParameter("plcReport");//姹囨姤瀛�
             PlcParameter plcReportID =plcAgreement.getPlcParameter("plcReportID");//姹囨姤ID
@@ -195,13 +195,15 @@
             if(((1==plcRequest.getValueInt()&&0==mesSend.getValueInt())
                     &&"寮�宸�".equals(machine.getState())
                     &&taskingCount.size()<machine.getMaxTaskCount())){
-                Machine loadMachine=machineMapper.selectById(2L);
+                //Machine loadMachine=machineMapper.selectById(2L);
+                LineConfiguration lineConfigurationBefore=lineConfigurationService.machineLineConfigurationBefore(machine);
+                Machine loadMachine=machineMapper.selectById(lineConfigurationBefore.getMachineId());
                 Tasking tasking;
                 String scan_id="";
                 if(loadMachine.getMode()==1){
                     //鏍囧噯妯″紡  鎵惧凡棰嗗彇鏈畬鎴愮殑绗竴鏉′换鍔�
-                    LineConfiguration lineConfiguration=lineConfigurationService.machineLineConfiguration(machine);
-                    List<PrimitiveTask> findPrimitiveTasking=primitiveTaskService.findPrimitiveTasking(machine,lineConfiguration.getLineId());
+                    //LineConfiguration lineConfiguration=lineConfigurationService.machineLineConfiguration(machine);
+                    List<PrimitiveTask> findPrimitiveTasking=primitiveTaskService.findPrimitiveTasking(machine,lineConfigurationBefore.getLineId());
                     //娣诲姞鏁版嵁:
                     for(PrimitiveTask primitiveTask:findPrimitiveTasking){
                         List<Tasking> taskingTopList=taskingMapper.selectList(new QueryWrapper<Tasking>().lambda()
@@ -209,6 +211,7 @@
                         );
                         //浠诲姟鏁�>宸蹭笂鏁伴噺
                         if(taskingTopList.size()<primitiveTask.getTaskQuantity()){
+                            LineConfiguration lineConfiguration=lineConfigurationService.machineLineConfiguration(machine);
                             Tasking taskingAdd=primitiveTaskService.convertListTasking(primitiveTask,lineConfiguration.getId());
                             Integer taskSequence=1;
                             if (machine.getTodayCount()>0&&machine.getTodayCount()<5000){
@@ -226,7 +229,9 @@
                     tasking=taskingService.startMachineTask(machine);
                 }else{
                     //瀹氬埗妯″紡
-                    String PlcRequestID_=clientTCPSocket();
+                    LineConfiguration lineConfigurationAfter=lineConfigurationService.machineLineConfigurationBefore(machine);
+                    Machine scanMachine=machineMapper.selectById(lineConfigurationAfter.getMachineId());
+                    String PlcRequestID_=clientTCPSocket(scanMachine);
                     //String PlcRequestID_=",,46408889";
                     if (PlcRequestID_==null||PlcRequestID_.lastIndexOf(",")<0){
                         modbusTcp1.close();
@@ -267,13 +272,14 @@
                     modbusTcp1.close();
                     return;
                 }
+            }else if(0==plcRequest.getValueInt()){
+                errorMachine(machine,"");
             }
             //}
 
         } catch (Exception e) {
             log.info("浜や簰閫昏緫閿欒");
         }
-
         modbusTcp1.close();
         //log.info("鏃犲彲鎵ц鐨勬潯浠�");
     }
@@ -285,9 +291,9 @@
             machineMapper.updateById(machine);
         }
     }
-    public String clientTCPSocket() {
+    public String clientTCPSocket(Machine machine) {
         try {
-            Machine machine=machineMapper.selectById(4L);
+            //Machine machine=machineMapper.selectById(4L);
             Socket clientSocket = new Socket(machine.getIp(), machine.getPort());
             try {
                 clientSocket.setSoTimeout(1000);
@@ -308,11 +314,12 @@
                 clientSocket.close();
                 return receivedMessage;
             } catch (Exception e) {
-                e.printStackTrace();
+                log.info("鎵爜寮傚父");
+                //e.printStackTrace();
             }
             clientSocket.close();
         } catch (Exception e) {
-            e.printStackTrace();
+            log.info("ip鎴栫鍙e紓甯�");
         }
         return "";
     }

--
Gitblit v1.8.0