From 935275e79de8415ee3ca0b9a45da548aa6a2ee34 Mon Sep 17 00:00:00 2001
From: huang <1532065656@qq.com>
Date: 星期一, 30 六月 2025 08:21:36 +0800
Subject: [PATCH] 更新最新代码,上片页面领取任务传递固定值修改为动态获取线路
---
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/TaskingLog.java | 9 +
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineLoad.java | 9
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/PrimitiveTask.java | 11 +
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/KBBTJPDrawingBP.java | 7
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineDispensing.java | 235 +++++++++++++++++++++++++++++++++
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/AppRunnerConfig.java | 6
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineEdging.java | 2
JiuMuMesParent/common/servicebase/src/main/java/com/mes/service/ModbusTcp.java | 14 -
UI-Project/src/views/MechanicalArm/mechanicalArm.vue | 3
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/LineConfigurationService.java | 2
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/LineConfigurationServiceImpl.java | 30 +++
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/PrimitiveTaskController.java | 67 +++++++++
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/KBBTJPDrawingBPServiceImpl.java | 6
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/Tasking.java | 13 +
UI-Project/src/views/MechanicalReport/mechanicalReport.vue | 1
UI-Project/src/views/KanbanDisplay2/kanbanDisplay2.vue | 2
16 files changed, 381 insertions(+), 36 deletions(-)
diff --git a/JiuMuMesParent/common/servicebase/src/main/java/com/mes/service/ModbusTcp.java b/JiuMuMesParent/common/servicebase/src/main/java/com/mes/service/ModbusTcp.java
index 335a30a..6248f29 100644
--- a/JiuMuMesParent/common/servicebase/src/main/java/com/mes/service/ModbusTcp.java
+++ b/JiuMuMesParent/common/servicebase/src/main/java/com/mes/service/ModbusTcp.java
@@ -2,23 +2,18 @@
import com.mes.tools.HexConversion;
import com.mes.utils.HexUtil;
-import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j;
-import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
-import java.net.UnknownHostException;
-import java.text.SimpleDateFormat;
import java.util.Arrays;
-import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
-import static com.mes.tools.HexConversion.*;
+import static com.mes.tools.HexConversion.intToBytesDesc;
@Component
@Slf4j
@@ -46,7 +41,7 @@
public void connect(){
try {
this.socket=new Socket(Ip,Port);
- this.socket.setSoTimeout(1000);
+ this.socket.setSoTimeout(300);
}catch (Exception e) {
log.info("The IP address of the host cannot be determined:{}",e.getMessage());
}
@@ -102,7 +97,10 @@
bit[0]=Byte.parseByte(fontBitString[plcParameter.getAddressLength()]);
plcParameter.setReadByte(bit);
}else{
- plcParameter.setReadByte(Arrays.copyOfRange(content,plcParameter.getAddressStart(),(plcParameter.getAddressStart()+plcParameter.getAddressLength())));
+ String plcAddressBegin = plcAgreement.plcAddressBegin;
+ Integer addressIndex = plcParameter.getAddressStart();
+ int address = addressIndex -HexUtil.hexToInt(plcAddressBegin)*2;
+ plcParameter.setReadByte(Arrays.copyOfRange(content,address,(address+plcParameter.getAddressLength())));
}
}
return true;
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/AppRunnerConfig.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/AppRunnerConfig.java
index ce70431..bade8c2 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/AppRunnerConfig.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/AppRunnerConfig.java
@@ -1,7 +1,6 @@
package com.mes;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.mes.common.*;
import com.mes.md.entity.Machine;
import com.mes.md.mapper.MachineMapper;
import com.mes.md.mapper.PrimitiveTaskMapper;
@@ -17,7 +16,6 @@
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
-import java.util.ArrayList;
import java.util.List;
@Slf4j
@@ -45,6 +43,7 @@
List<Machine> machineListFlipSlice =machineMapper.selectList(new QueryWrapper<Machine>().lambda().eq(Machine::getName,"缈荤墖").eq(Machine::getState,"寮�宸�"));
List<Machine> machineListMarking =machineMapper.selectList(new QueryWrapper<Machine>().lambda().eq(Machine::getName,"鑷姩鎵撴爣鏈�").eq(Machine::getState,"寮�宸�"));
List<Machine> machineListSilkScreen =machineMapper.selectList(new QueryWrapper<Machine>().lambda().eq(Machine::getName,"鑷姩涓濆嵃鏈�").eq(Machine::getState,"寮�宸�"));
+// List<Machine> machineDispensing =machineMapper.selectList(new QueryWrapper<Machine>().lambda().eq(Machine::getName,"鑷姩鐐硅兌鏈�").eq(Machine::getState,"寮�宸�"));
List<Machine> machineListRotate =machineMapper.selectList(new QueryWrapper<Machine>().lambda().eq(Machine::getName,"鏃嬭浆鍙�").eq(Machine::getState,"寮�宸�"));
List<Machine> machineListLamination =machineMapper.selectList(new QueryWrapper<Machine>().lambda().eq(Machine::getName,"鑷姩璐磋啘鏈�").eq(Machine::getState,"寮�宸�"));
for (Machine item:machineListLoad){
@@ -62,6 +61,9 @@
for (Machine item:machineListSilkScreen){
new MachineSilkScreen(item,machineMapper,taskingService).start();
}
+// for (Machine item:machineDispensing){
+// new MachineDispensing(item,machineMapper,taskingService).start();
+// }
for (Machine item:machineListRotate){
new MachineRotate(item,machineMapper,taskingService).start();
}
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/PrimitiveTaskController.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/PrimitiveTaskController.java
index 2076533..a9f3de8 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/PrimitiveTaskController.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/controller/PrimitiveTaskController.java
@@ -4,7 +4,9 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.mes.md.entity.KBBTJPDrawingBP;
import com.mes.md.entity.PrimitiveTask;
+import com.mes.md.entity.TaskingLog;
import com.mes.md.mapper.KBBTJPDrawingBPMapper;
+import com.mes.md.mapper.TaskingLogMapper;
import com.mes.md.service.KBBTJPDrawingBPService;
import com.mes.md.service.PrimitiveTaskService;
import com.mes.md.service.TaskingLogService;
@@ -38,6 +40,8 @@
KBBTJPDrawingBPMapper kBBTJPDrawingBPMapper;
@Autowired
TaskingLogService taskingLogService;
+ @Autowired
+ TaskingLogMapper taskingLogMapper;
@ApiOperation("鏌ヨ褰撳墠璁惧锛屾湭瀹屽伐鐘舵�佺殑绾夸笂浠诲姟")
@PostMapping("/selectPrimitiveTask")
@@ -161,5 +165,68 @@
}
return Result.build(200,"鎴愬姛",resultDate);
}
+
+ @ApiOperation("鏌ヨ 瀹屾垚閲� m虏 鐗囨暟")
+ @PostMapping("/findFinishQuantity")
+ @ResponseBody
+ public Result findFinishQuantity(@RequestBody Map<String, String> map) {
+
+ Calendar cal = Calendar.getInstance();
+ //璁剧疆褰撳墠鏃堕棿
+ cal.setTime(new Date());
+ cal.set(Calendar.HOUR_OF_DAY, 0);
+ cal.set(Calendar.MINUTE, 0);
+ cal.set(Calendar.SECOND, 0);
+ cal.set(Calendar.MILLISECOND, 0);
+
+ //cal.add(Calendar.DATE, 1-dayCount);
+ cal.set(Calendar.DAY_OF_MONTH, 1);
+ Date startDate = cal.getTime();
+
+ // 鑾峰彇褰撴湀鏈�鍚庝竴澶�
+ Calendar lastDayCal = (Calendar) cal.clone();
+ lastDayCal.add(Calendar.MONTH, 1);
+ lastDayCal.add(Calendar.DATE, -1);
+ Date endDate = lastDayCal.getTime();
+
+ // 鑾峰彇褰撴湀澶╂暟
+ int dayCount = lastDayCal.get(Calendar.DAY_OF_MONTH);
+
+ QueryWrapper<TaskingLog> queryWrapper = new QueryWrapper<>();
+ queryWrapper.select("CAST(operation_record_time AS DATE) AS CreateDate,ifNull(sum(task_quantity),0) as task_quantity_sum,ifNull(sum(length*width*task_quantity)/1000000,0) as area_sum")
+ .ge("operation_record_time",startDate).le("operation_record_time",endDate).eq("work_state","瀹屽伐").groupBy("CAST(operation_record_time AS DATE)")
+ .orderByAsc("CAST(operation_record_time AS DATE)");;
+ List<Map> list=taskingLogMapper.selectMaps((QueryWrapper)queryWrapper);
+ List<Map> resultDate=new ArrayList<>();
+
+ // 閲嶇疆鏃ュ巻鍒板綋鏈堢涓�澶�
+ cal.setTime(startDate);
+
+ for (int i=0;i<dayCount;i++){
+ Date thisdate=cal.getTime();
+ cal.add(Calendar.DATE, 1);
+ Map thisMap=new HashMap<>();
+
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ String dateString = sdf.format(thisdate);
+ thisMap.put("CreateDate",dateString);
+// if(list.size()>0){
+// log.info("瀵规瘮:{},{},{}",list.get(0).get("CreateDate"),dateString,list.get(0).get("CreateDate").toString().equals(dateString));
+// }
+
+ if (list.size()>0&&list.get(0).get("CreateDate").toString().equals(dateString)){
+ thisMap.put("task_quantity_sum",list.get(0).get("task_quantity_sum"));
+ thisMap.put("area_sum",list.get(0).get("area_sum"));
+ list.remove(0);
+ }else{
+ thisMap.put("task_quantity_sum",0);
+ thisMap.put("area_sum",0);
+ }
+ resultDate.add(thisMap);
+ }
+
+ return Result.build(200,"鎴愬姛",resultDate);
+
+ }
}
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/KBBTJPDrawingBP.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/KBBTJPDrawingBP.java
index c963702..fc5b8c3 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/KBBTJPDrawingBP.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/KBBTJPDrawingBP.java
@@ -4,7 +4,6 @@
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
-import io.swagger.models.auth.In;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -175,6 +174,12 @@
@TableField(value = "OrderNo")
private String OrderNo;
+ /**
+ * 浜у搧绫诲瀷
+ */
+ @TableField(value = "JPZX")
+ private Integer JPZX;
+
//
// @TableField(value = "report_line")
// private int reportLine;
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/PrimitiveTask.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/PrimitiveTask.java
index 1086153..055286c 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/PrimitiveTask.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/PrimitiveTask.java
@@ -3,11 +3,11 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
-import java.io.Serializable;
-import java.util.Date;
-
import lombok.Data;
import lombok.EqualsAndHashCode;
+
+import java.io.Serializable;
+import java.util.Date;
/**
* <p>
@@ -182,4 +182,9 @@
*/
private Integer loadCount;
+ /**
+ * 浜у搧绫诲瀷
+ */
+ @TableField(value = "JPZX")
+ private Integer JPZX;
}
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/Tasking.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/Tasking.java
index bd8b58f..23d5f7f 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/Tasking.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/Tasking.java
@@ -1,12 +1,13 @@
package com.mes.md.entity;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
-import java.io.Serializable;
-import java.util.Date;
-
import lombok.Data;
import lombok.EqualsAndHashCode;
+
+import java.io.Serializable;
+import java.util.Date;
/**
* <p>
@@ -191,4 +192,10 @@
*/
private String warehouse;
+ /**
+ * 浜у搧绫诲瀷
+ */
+ @TableField(value = "JPZX")
+ private Integer JPZX;
+
}
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/TaskingLog.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/TaskingLog.java
index d95a001..78fc72d 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/TaskingLog.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/entity/TaskingLog.java
@@ -1,7 +1,6 @@
package com.mes.md.entity;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -186,4 +185,10 @@
*/
private Integer isSend;
+ /**
+ * 浜у搧绫诲瀷
+ */
+ @TableField(value = "JPZX")
+ private Integer JPZX;
+
}
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/LineConfigurationService.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/LineConfigurationService.java
index 93d28b3..16228c5 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/LineConfigurationService.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/LineConfigurationService.java
@@ -1,7 +1,6 @@
package com.mes.md.service;
import com.github.yulichang.base.MPJBaseService;
-import com.mes.md.entity.Line;
import com.mes.md.entity.LineConfiguration;
import com.mes.md.entity.Machine;
@@ -16,5 +15,6 @@
public interface LineConfigurationService extends MPJBaseService<LineConfiguration> {
LineConfiguration machineLineConfiguration(Machine machine);
LineConfiguration machineLineConfigurationBefore(Machine machine);
+ LineConfiguration machineLineConfigurationBeforeEdg(Machine machine);
LineConfiguration machineLineConfigurationAfter(Machine machine);
}
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/KBBTJPDrawingBPServiceImpl.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/KBBTJPDrawingBPServiceImpl.java
index 47a9aba..c9a2d7a 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/KBBTJPDrawingBPServiceImpl.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/KBBTJPDrawingBPServiceImpl.java
@@ -2,19 +2,15 @@
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
-import com.mes.md.entity.EdgeGrindingLog;
import com.mes.md.entity.KBBTJPDrawingBP;
import com.mes.md.entity.PrimitiveTask;
import com.mes.md.entity.Tasking;
-import com.mes.md.mapper.EdgeGrindingLogMapper;
import com.mes.md.mapper.KBBTJPDrawingBPMapper;
import com.mes.md.mapper.PrimitiveTaskMapper;
-import com.mes.md.service.EdgeGrindingLogService;
import com.mes.md.service.KBBTJPDrawingBPService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -99,6 +95,7 @@
primitiveTask.setSilkScreenY(kBBTJPDrawingBP.getSilkScreenY()==null?0:kBBTJPDrawingBP.getSilkScreenY());
primitiveTask.setTaskSequence(kBBTJPDrawingBP.getTaskSequence());
primitiveTask.setTaskQuantity(kBBTJPDrawingBP.getTaskQuantity());
+ primitiveTask.setJPZX(kBBTJPDrawingBP.getJPZX());
primitiveTask.setR_1_1(kBBTJPDrawingBP.getR_1_1()==null?0:kBBTJPDrawingBP.getR_1_1());
primitiveTask.setR_1_2(kBBTJPDrawingBP.getR_1_2()==null?0:kBBTJPDrawingBP.getR_1_2());
primitiveTask.setR_2_1(kBBTJPDrawingBP.getR_2_1()==null?0:kBBTJPDrawingBP.getR_2_1());
@@ -138,6 +135,7 @@
tasking.setSilkScreenY(kBBTJPDrawingBP.getSilkScreenY()==null?0:kBBTJPDrawingBP.getSilkScreenY());
tasking.setTaskSequence(kBBTJPDrawingBP.getTaskSequence());
tasking.setTaskQuantity(kBBTJPDrawingBP.getTaskQuantity());
+ tasking.setJPZX(kBBTJPDrawingBP.getJPZX());
tasking.setR_1_1(kBBTJPDrawingBP.getR_1_1()==null?0:kBBTJPDrawingBP.getR_1_1());
tasking.setR_1_2(kBBTJPDrawingBP.getR_1_2()==null?0:kBBTJPDrawingBP.getR_1_2());
tasking.setR_2_1(kBBTJPDrawingBP.getR_2_1()==null?0:kBBTJPDrawingBP.getR_2_1());
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/LineConfigurationServiceImpl.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/LineConfigurationServiceImpl.java
index a38036c..10cfde4 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/LineConfigurationServiceImpl.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/LineConfigurationServiceImpl.java
@@ -2,13 +2,10 @@
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
-import com.mes.md.entity.Line;
import com.mes.md.entity.LineConfiguration;
import com.mes.md.entity.Machine;
import com.mes.md.mapper.LineConfigurationMapper;
-import com.mes.md.mapper.LineMapper;
import com.mes.md.service.LineConfigurationService;
-import com.mes.md.service.LineService;
import org.springframework.stereotype.Service;
import java.util.List;
@@ -63,6 +60,33 @@
return null;
}
+
+ /**
+ * 纾ㄨ竟璇嗗埆涓婄墖璁惧閰嶇疆
+ * @param machine
+ * @return
+ */
+ @Override
+ public LineConfiguration machineLineConfigurationBeforeEdg(Machine machine){
+ List<LineConfiguration> machineLineConfiguration=baseMapper.selectJoinList(LineConfiguration.class,new MPJLambdaWrapper<LineConfiguration>()
+ .selectAll(LineConfiguration.class)
+ .eq(LineConfiguration::getMachineId,machine.getId()));
+ if(!machineLineConfiguration.isEmpty()){
+ List<LineConfiguration> machineLineConfigurationBefore=baseMapper.selectJoinList(LineConfiguration.class,new MPJLambdaWrapper<LineConfiguration>()
+ .selectAll(LineConfiguration.class)
+ .eq(LineConfiguration::getLineId,machineLineConfiguration.get(0).getLineId())
+ .eq(LineConfiguration::getIsStart,1)
+ .lt(LineConfiguration::getProcessSequence,machineLineConfiguration.get(0).getProcessSequence())
+ .orderByDesc(LineConfiguration::getProcessSequence));
+ if (!machineLineConfigurationBefore.isEmpty()){
+ return machineLineConfigurationBefore.get(1);
+ }
+
+ }
+ return null;
+
+ }
+
/**
* @param machine 褰撳墠璁惧鐨勪笅涓�璁惧閰嶇疆
* @return
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineDispensing.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineDispensing.java
new file mode 100644
index 0000000..88cf2b7
--- /dev/null
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineDispensing.java
@@ -0,0 +1,235 @@
+//package com.mes.plcTaskThread;
+//
+//import com.mes.md.entity.Machine;
+//import com.mes.md.entity.Tasking;
+//import com.mes.md.mapper.MachineMapper;
+//import com.mes.md.service.TaskingService;
+//import com.mes.service.ModbusTcp;
+//import com.mes.service.PlcAgreement;
+//import com.mes.service.PlcParameter;
+//import com.mes.utils.HexUtil;
+//import lombok.extern.slf4j.Slf4j;
+//
+//import java.text.SimpleDateFormat;
+//import java.util.*;
+//
+//@Slf4j
+//public class MachineDispensing extends Thread {
+//
+//
+// private MachineMapper machineMapper;
+// private TaskingService taskingService;
+// public static Long machineId = 16L;
+// public List<Map> sendRecords = new ArrayList<>();
+// public Machine thisMachine;
+//
+// public MachineDispensing(Machine machine, MachineMapper machineMapper, TaskingService taskingService) {
+// this.thisMachine = machine;
+// this.machineMapper = machineMapper;
+// this.taskingService = taskingService;
+// }
+//
+// public void plcStart() {
+// Machine machine = machineMapper.selectById(thisMachine.getId());
+// String fileName = machine.getFileName();
+// ModbusTcp modbusTcp1 = new ModbusTcp(machine.getIp(), machine.getPort(), fileName);
+// modbusTcp1.connect();
+// PlcAgreement plcAgreement = modbusTcp1.getPlcAgreement(fileName);
+// try {
+// if (!modbusTcp1.read(plcAgreement)) {
+// log.info("閫氳璇诲彇鏂版暟鎹け璐�");
+// modbusTcp1.close();
+// return;
+// }
+// PlcParameter plcRequest = plcAgreement.getPlcParameter("plcRequest");//璇锋眰瀛�
+// PlcParameter plcRequestID = plcAgreement.getPlcParameter("plcRequestID");//璇锋眰ID
+// PlcParameter mesSend = plcAgreement.getPlcParameter("mesSend");//鍙戦�佸瓧
+// PlcParameter mesSendID = plcAgreement.getPlcParameter("mesSendID");//鍙戦�両D
+//// PlcParameterInfo drawingMark =plcParameterObject.getPlcParameter("drawingGlue");//鐐硅兌鍥剧焊鍦板潃
+// PlcParameter JPZX = plcAgreement.getPlcParameter("JPZX");//绫诲瀷
+// PlcParameter thickness = plcAgreement.getPlcParameter("thickness");//鍘�
+// PlcParameter side1 = plcAgreement.getPlcParameter("side1");//涓嬭竟
+// PlcParameter side2 = plcAgreement.getPlcParameter("side2");//鍙宠竟
+// PlcParameter side3 = plcAgreement.getPlcParameter("side3");//涓婅竟
+// PlcParameter side4 = plcAgreement.getPlcParameter("side4");//宸﹁竟
+// PlcParameter R_angle1_1 = plcAgreement.getPlcParameter("R_angle1_1");//R瑙�1-1
+// PlcParameter R_angle1_2 = plcAgreement.getPlcParameter("R_angle1_2");//R瑙�1-2
+// PlcParameter R_angle2_1 = plcAgreement.getPlcParameter("R_angle2_1");//R瑙�2-1
+// PlcParameter R_angle2_2 = plcAgreement.getPlcParameter("R_angle2_2");//R瑙�2-2
+// PlcParameter R_angle3_1 = plcAgreement.getPlcParameter("R_angle3_1");//R瑙�3-1
+// PlcParameter R_angle3_2 = plcAgreement.getPlcParameter("R_angle3_2");//R瑙�3-2
+// PlcParameter R_angle4_1 = plcAgreement.getPlcParameter("R_angle4_1");//R瑙�4-1
+// PlcParameter R_angle4_2 = plcAgreement.getPlcParameter("R_angle4_2");//R瑙�4-2
+//
+// PlcParameter plcReport = plcAgreement.getPlcParameter("plcReport");//姹囨姤瀛�
+// PlcParameter plcReportID = plcAgreement.getPlcParameter("plcReportID");//姹囨姤ID
+// PlcParameter mesConfirm = plcAgreement.getPlcParameter("mesConfirm");//纭瀛�
+// PlcParameter mesConfirmID = plcAgreement.getPlcParameter("mesConfirmID");//纭ID
+// PlcParameter machineStatusWord = plcAgreement.getPlcParameter("machineStatusWord");
+// if (machine.getIsLog() > 0) {
+// modbusTcp1.consoleLogInfo(plcAgreement);
+// }
+//
+// if (0 == plcRequest.getValueInt() && 1 == mesSend.getValueInt()) {
+// log.info("1.鍙戦�佸瓧缃浂");
+// //鍙戦�佸瓧缃�0
+// String send = HexUtil.intTo2ByteHex(0);
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesSend.getAddressStart() / 2));
+// log.info("鍙戦�佸瓧 娓呯┖鎴愬姛锛涘唴瀹癸細{},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesSend.getAddressStart()));
+// modbusTcp1.close();
+// return;
+// }
+// if (0 == plcReport.getValueInt() && 0 != mesConfirm.getValueInt()) {
+// log.info("2.纭瀛楃疆闆�");
+// //鍙戦�佸瓧缃�0
+// String send = HexUtil.intTo2ByteHex(0);
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart() / 2));
+// log.info("浠诲姟瀹屾垚 娓呯┖鎴愬姛锛涘唴瀹癸細{},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart()));
+// modbusTcp1.close();
+// return;
+// }
+// if (1 == plcReport.getValueInt() && 0 == mesConfirm.getValueInt()) {
+// int finishCount = taskingService.finishMachineTask(machine);
+// log.info("3銆佷换鍔″畬鎴�");
+// if (finishCount > 0) {//鏈変换鍔�
+// String send = HexUtil.intTo2ByteHex(1);
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart() / 2));
+// log.info("浠诲姟瀹屾垚 鎴愬姛 鍐呭锛歿},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart()));
+// modbusTcp1.close();
+// return;
+// }
+// String send = HexUtil.intTo2ByteHex(1);
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart() / 2));
+// log.info("浠诲姟瀹屾垚 寮傚父鎴愬姛 鍐呭锛歿},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart()));
+// modbusTcp1.close();
+// return;
+// }
+// if (4 == plcReport.getValueInt() && 0 == mesConfirm.getValueInt()) {
+// int finishCount = taskingService.glassDownLineOne(machine);
+// if (finishCount > 0) {//鏈変换鍔�
+// log.info("4銆佷汉宸ユ嬁璧�");
+// String send = HexUtil.intTo2ByteHex(4);
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart() / 2));
+// log.info("浜哄伐鎷胯蛋鍙戦�佹姤鏂囧唴瀹癸細{},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart()));
+// modbusTcp1.close();
+// return;
+// }
+// String send = HexUtil.intTo2ByteHex(4);
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart() / 2));
+// log.info("浜哄伐鎷胯蛋寮傚父 鍙戦�佹姤鏂囧唴瀹癸細{},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart()));
+// modbusTcp1.close();
+// return;
+// }
+// if (2 == plcReport.getValueInt() && 0 == mesConfirm.getValueInt()) {
+// int finishCount = taskingService.loseMachineTask(machine);
+// if (finishCount > 0) {//鏈変换鍔�
+// log.info("2銆侀噸鍙�");
+// String send = HexUtil.intTo2ByteHex(2);
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart() / 2));
+// log.info("閲嶅彂鍙戦�佹姤鏂囧唴瀹癸細{},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart()));
+// modbusTcp1.close();
+// return;
+// } else {
+// log.info("2銆佸紓甯搁噸鍙�");
+// String send = HexUtil.intTo2ByteHex(2);
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart() / 2));
+// log.info("寮傚父閲嶅彂鍙戦�佹姤鏂囧唴瀹癸細{},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart()));
+// modbusTcp1.close();
+// return;
+// }
+// }
+//
+// if (3 == plcReport.getValueInt() && 0 == mesConfirm.getValueInt()) {
+// int finishCount = taskingService.finishMachineTask(machine);
+// if (finishCount > 0) {//鏈変换鍔�
+// log.info("3銆佽澶囦笂浜哄伐鐐圭牬鎹�");
+// String send = HexUtil.intTo2ByteHex(3);
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart() / 2));
+// log.info("浜哄伐鐐圭牬鎹熷彂閫佹姤鏂囧唴瀹癸細{},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart()));
+// modbusTcp1.close();
+// return;
+// } else {
+// //鏄惁鑷姩娓呴櫎鐮存崯
+// log.info("3銆佹棤鏁堢牬鎹� 锛堟病鏈夋壘鍒版ID鐨勭幓鐠冿級");
+// String send = HexUtil.intTo2ByteHex(3);
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart() / 2));
+// log.info("鍙戦�佹姤鏂囧唴瀹癸細{},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesConfirm.getAddressStart()));
+// modbusTcp1.close();
+// //modbusTcp1.close();
+// return;
+// }
+// }
+// List<Tasking> taskingCount = taskingService.findMachineWorkStateTask(machine, "姝e湪宸ヤ綔");
+// if ((1 == plcRequest.getValueInt() && 0 == mesSend.getValueInt())
+// && "寮�宸�".equals(machine.getState())
+// && taskingCount.size() < machine.getMaxTaskCount()) {
+// Tasking tasking = taskingService.startMachineTask(machine);
+// if (tasking != null) {
+// log.info("4銆佸彂閫佷换鍔� 浠诲姟鏁版嵁锛歿}, 璁惧鐘舵��:{}, ", machine, tasking);
+// String send =
+// HexUtil.intTo2ByteHex(1) +
+// HexUtil.intTo2ByteHex(tasking.getTaskSequence().intValue())+
+// HexUtil.intTo2ByteHex(tasking.getJPZX()) +
+// HexUtil.intTo2ByteHex(tasking.getThickness().intValue()) +
+// HexUtil.intTo2ByteHex(tasking.getWidth().intValue()) + // side1 涓嬭竟 = 瀹藉害
+// HexUtil.intTo2ByteHex(tasking.getLength().intValue()) + // side2 鍙宠竟 = 闀垮害
+// HexUtil.intTo2ByteHex(tasking.getWidth().intValue()) + // side3 涓婅竟 = 瀹藉害
+// HexUtil.intTo2ByteHex(tasking.getLength().intValue()) + // side4 宸﹁竟 = 闀垮害
+// HexUtil.intTo2ByteHex((int) ((tasking.getR_1_1() != null ? tasking.getR_1_1() : 0.0) * 10)) +
+// HexUtil.intTo2ByteHex((int) ((tasking.getR_1_2() != null ? tasking.getR_1_2() : 0.0) * 10)) +
+// HexUtil.intTo2ByteHex((int) ((tasking.getR_2_1() != null ? tasking.getR_2_1() : 0.0) * 10)) +
+// HexUtil.intTo2ByteHex((int) ((tasking.getR_2_2() != null ? tasking.getR_2_2() : 0.0) * 10)) +
+// HexUtil.intTo2ByteHex((int) ((tasking.getR_3_1() != null ? tasking.getR_3_1() : 0.0) * 10)) +
+// HexUtil.intTo2ByteHex((int) ((tasking.getR_3_2() != null ? tasking.getR_3_2() : 0.0) * 10)) +
+// HexUtil.intTo2ByteHex((int) ((tasking.getR_4_1() != null ? tasking.getR_4_1() : 0.0) * 10)) +
+// HexUtil.intTo2ByteHex((int) ((tasking.getR_4_2() != null ? tasking.getR_4_2() : 0.0) * 10)) ;
+// modbusTcp1.writeString(send, HexUtil.intTo2ByteHex(mesSend.getAddressStart() / 2));
+// log.info("鍙戦�佷换鍔″彂閫佹姤鏂囧唴瀹癸細{},鍙戦�佽捣濮嬪湴鍧�:{}", send, HexUtil.intTo2ByteHex(mesSend.getAddressStart()));
+// modbusTcp1.close();
+// SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+// String sendRecord = df.format(new Date()) + " " +
+// tasking.getGlassId() + "-" +
+// tasking.getLength() + "-" +
+// tasking.getWidth() + "-" +
+// tasking.getThickness() + "-" +
+// tasking.getR_1_1() + "-" +
+// tasking.getR_1_2() + "-" +
+// tasking.getR_2_1() + "-" +
+// tasking.getR_2_2() + "-" +
+// tasking.getR_3_1() + "-" +
+// tasking.getR_3_2() + "-" +
+// tasking.getR_4_1() + "-" +
+// tasking.getR_4_2() + "-" +
+// tasking.getJPZX();
+// if (sendRecords.size() > 7) {
+// sendRecords.remove(0);
+// }
+// Map sendContentMap = new HashMap();
+// sendContentMap.put("sendContent", sendRecord);
+// sendRecords.add(sendContentMap);
+// return;
+// }
+// }
+// //}
+//
+// } catch (Exception e) {
+// log.info("浜や簰閫昏緫閿欒");
+// }
+//
+// modbusTcp1.close();
+// //log.info("鏃犲彲鎵ц鐨勬潯浠�");
+// }
+//
+//
+// @Override
+// public void run() {
+// while (this != null) {
+// try {
+// Thread.sleep(1000);
+// plcStart();
+// } catch (InterruptedException e) {
+// e.printStackTrace();
+// }
+// }
+// }
+//}
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 f448c8e..68f44f0 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
@@ -196,7 +196,7 @@
&&"寮�宸�".equals(machine.getState())
&&taskingCount.size()<machine.getMaxTaskCount())){
//Machine loadMachine=machineMapper.selectById(2L);
- LineConfiguration lineConfigurationBefore=lineConfigurationService.machineLineConfigurationBefore(machine);
+ LineConfiguration lineConfigurationBefore=lineConfigurationService.machineLineConfigurationBeforeEdg(machine);
Machine loadMachine=machineMapper.selectById(lineConfigurationBefore.getMachineId());
Tasking tasking;
String scan_id="";
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineLoad.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineLoad.java
index d72f449..0234a10 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineLoad.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/plcTaskThread/MachineLoad.java
@@ -1,10 +1,8 @@
package com.mes.plcTaskThread;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.mes.md.entity.LineConfiguration;
import com.mes.md.entity.Machine;
import com.mes.md.entity.PrimitiveTask;
-import com.mes.md.entity.Tasking;
import com.mes.md.mapper.MachineMapper;
import com.mes.md.mapper.PrimitiveTaskMapper;
import com.mes.md.mapper.TaskingMapper;
@@ -17,8 +15,9 @@
import com.mes.utils.HexUtil;
import lombok.extern.slf4j.Slf4j;
-import java.text.SimpleDateFormat;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
@Slf4j
public class MachineLoad extends Thread{
@@ -50,7 +49,7 @@
Machine machine=machineMapper.selectById(thisMachine.getId());
ModbusTcp modbusTcp1 =new ModbusTcp(machine.getIp(),machine.getPort(),machine.getFileName());
modbusTcp1.connect();
- PlcAgreement plcAgreement=modbusTcp1.getPlcAgreement("PlcLoad");
+ PlcAgreement plcAgreement=modbusTcp1.getPlcAgreement(machine.getFileName());
try {
if(!modbusTcp1.read(plcAgreement)){
log.info("閫氳璇诲彇鏂版暟鎹け璐�");
diff --git a/UI-Project/src/views/KanbanDisplay2/kanbanDisplay2.vue b/UI-Project/src/views/KanbanDisplay2/kanbanDisplay2.vue
index b8b2c84..bb39374 100644
--- a/UI-Project/src/views/KanbanDisplay2/kanbanDisplay2.vue
+++ b/UI-Project/src/views/KanbanDisplay2/kanbanDisplay2.vue
@@ -98,7 +98,7 @@
// 璁″垝閲忔暟鎹�
const loadPlannedData = async () => {
try {
- const res = await request.post('/deviceInteraction/primitiveTask/findPlannedQuantity', {});
+ const res = await request.post('/deviceInteraction/primitiveTask/findFinishQuantity', {});
if (res.code === 200) {
// 纭繚鏁版嵁瀛樺湪
if (res.data && Array.isArray(res.data)) {
diff --git a/UI-Project/src/views/MechanicalArm/mechanicalArm.vue b/UI-Project/src/views/MechanicalArm/mechanicalArm.vue
index b3dd11f..537a641 100644
--- a/UI-Project/src/views/MechanicalArm/mechanicalArm.vue
+++ b/UI-Project/src/views/MechanicalArm/mechanicalArm.vue
@@ -87,6 +87,7 @@
socket = initializeWebSocket(socketUrl, handleMessage);// 鍒濆鍖� WebSocket锛屽苟浼犻�掓秷鎭鐞嗗嚱鏁�
//浣跨敤WebSocket鏂瑰紡灞曠ず鏁版嵁
socketDownLineTask = initializeWebSocket(socketDownLineTaskUrl, handleMessage2);// 鍒濆鍖� WebSocket锛屽苟浼犻�掓秷鎭鐞嗗嚱鏁�
+
});
//鎶ヨ鎻愮ず
const errorInfoFuntion = async (info) => {
@@ -429,7 +430,7 @@
<el-table-column prop="workState" :label="$t('glassInfo.workState')" />
<el-table-column fixed="right" :label="$t('productStock.operate')" align="center" width="70">
<template #default="scope">
- <el-button size="mini" link type="primary" plain @click="startOrStopTask(scope.row, 2, 1)">{{
+ <el-button size="mini" link type="primary" plain @click="startOrStopTask(scope.row, findMachine.id, 1)">{{
$t('functionState.getTask') }}</el-button>
</template>
</el-table-column>
diff --git a/UI-Project/src/views/MechanicalReport/mechanicalReport.vue b/UI-Project/src/views/MechanicalReport/mechanicalReport.vue
index 0fe464b..018e950 100644
--- a/UI-Project/src/views/MechanicalReport/mechanicalReport.vue
+++ b/UI-Project/src/views/MechanicalReport/mechanicalReport.vue
@@ -201,7 +201,6 @@
return time.getTime() > oneMonthLater.getTime()
}
-// 闄愬埗寮�濮嬫棩鏈熶笉鑳界缁撴潫鏃ユ湡瓒呰繃涓�涓湀
const disabledStartDate = (time) => {
if (!filterForm.value.endDate) {
return false
--
Gitblit v1.8.0