|
@@ -122,18 +122,6 @@ public class TaskWorkNode {
|
|
|
@Autowired
|
|
|
private BomProcedureProductionresourceService bomProcedureProductionresourceService;
|
|
|
|
|
|
-// private String url = "http://127.0.0.1:8764/task/testTask";
|
|
|
-//
|
|
|
-// private String plcURL = "http://192.168.170.202:8089";
|
|
|
-//
|
|
|
-// private String agvURL = "http://localhost:9099/api/authority/mock/mockWms";
|
|
|
-// //质量中心
|
|
|
-// private String ZK_ip_zlzx = "192.168.170.61";
|
|
|
-// //柔性
|
|
|
-// private String ZK_ip_rxx = "192.168.170.71";
|
|
|
-// //智能单元
|
|
|
-// private String ZK_ip_zndy = "192.168.170.81";
|
|
|
-
|
|
|
//总控端口
|
|
|
private final String ZK_port = "120";
|
|
|
|
|
@@ -200,7 +188,7 @@ public class TaskWorkNode {
|
|
|
//插入执行日志
|
|
|
AAutoNodeLog log = new AAutoNodeLog();
|
|
|
if (autoNodeLogList == null || autoNodeLogList.size() == 0) {
|
|
|
- log.setTaskNodeId(taskNode.getId()).setAutoNodeId(taskNode.getTaskId()).setOrderId(tTask.getOrderId())
|
|
|
+ log.setTaskNodeId(taskNode.getId()).setAutoNodeId(taskNode.getAutoNode().getId()).setOrderId(tTask.getOrderId())
|
|
|
.setTaskId(tTask.getId()).setExeStatus("2").setStartTime(new Date()).setFeedbackFile(fileName);
|
|
|
} else {
|
|
|
log = autoNodeLogList.get(0);
|
|
@@ -313,8 +301,7 @@ public class TaskWorkNode {
|
|
|
jsonObject.put("uid", taskNode.getCreateUser() + "");
|
|
|
//jsonParam.put("url",deviceUrl);
|
|
|
//jsonParam.put("port",devicePort);
|
|
|
- jsonObject.put("url", taskNode.getTaskId());
|
|
|
- jsonObject.put("port", taskNode.getTaskId());
|
|
|
+
|
|
|
|
|
|
//业务回调数据
|
|
|
JSONObject bizJsonObject = new JSONObject();
|
|
@@ -487,7 +474,7 @@ public class TaskWorkNode {
|
|
|
*/
|
|
|
private Map getCheckCon(TaskNode taskNode, TTask task, Map<String, Object> dataMap) {
|
|
|
logger.info("=============进入条件检测==============" + taskNode);
|
|
|
- //业务类型
|
|
|
+ //业务类型(区分正常设备节点和线边库节点)
|
|
|
String bizType = dataMap.get("bizType") == null ? "" : dataMap.get("bizType").toString();
|
|
|
//具体的搬运类型
|
|
|
String carryType = dataMap.get("carryType") == null ? "" : dataMap.get("carryType").toString();
|
|
@@ -519,8 +506,8 @@ public class TaskWorkNode {
|
|
|
nodeOperationService = new AGVNodeServiceImpl();
|
|
|
} else if ("3" == category) {
|
|
|
//默认示范线设备
|
|
|
- map.put("robotType", DictionaryKey.LINE_ROBOT_NODES.get(robotType));
|
|
|
- //map.put("robotType", DictionaryKey.YJ_ROBOT_NODES.get(robotType));
|
|
|
+ //map.put("robotType", DictionaryKey.LINE_ROBOT_NODES.get(robotType));
|
|
|
+ map.put("robotType", DictionaryKey.YJ_ROBOT_NODES.get(robotType));
|
|
|
nodeOperationService = new RobotNodeServiceImpl();
|
|
|
} else if("4" == category){
|
|
|
nodeOperationService = new OtherNodeServiceImpl();
|
|
@@ -732,7 +719,9 @@ public class TaskWorkNode {
|
|
|
*/
|
|
|
public Map checkXbkCon(TaskNode taskNode,TTask task, Map<String, Object> map){
|
|
|
Storge xbkStorage = workpieceService.getWorkPieceStock(taskNode.getId(),false);
|
|
|
+ //判断线边库是否被锁定占用
|
|
|
if(xbkStorage.getLockStatus()=="1"){
|
|
|
+ //线边库已经释放锁定 不需要相关操作
|
|
|
map.put("msg", DictionaryKey.NodeException.RUNNING_FALSE);
|
|
|
map.put("result", false);
|
|
|
}else{
|
|
@@ -747,22 +736,28 @@ public class TaskWorkNode {
|
|
|
map.put("msg", DictionaryKey.NodeException.RUNNING_FALSE);
|
|
|
return map;
|
|
|
}
|
|
|
+ //获取目标设备的点位信息
|
|
|
ProductionresourcePosition resourcePosition = productionresourcePositionService.getOne(new LbqWrapper<ProductionresourcePosition>().eq(ProductionresourcePosition::getResourceId, targetId));
|
|
|
Productionresource productionresource = productionresourceService.getOne(new QueryWrap<Productionresource>().eq("id", targetId));
|
|
|
//任意设备条件判断
|
|
|
boolean bool = resourcePosition!=null && resourcePosition.getLockStatus() == "1" && resourcePosition.getStatus() == "1" && resourcePosition.getHaveGoods() == "0";
|
|
|
if(productionresource.getModuleDesc()=="接驳位"){
|
|
|
- //锁定对象是接驳位
|
|
|
+ //目标对象是接驳位
|
|
|
String[] jbwarr = new String[]{productionresource.getCode()};
|
|
|
+ //获取托盘的库位
|
|
|
Map plateMap = storgeService.getPlateStorgeByNo(jbwarr, task.getCompleteBatchNo());
|
|
|
Storge plantStorge = plateMap.get("storge") == null ? null : (Storge) plateMap.get("storge");
|
|
|
bool = bool && (plantStorge!=null );
|
|
|
+ }else{
|
|
|
+ Storge storge = storgeService.getById(resourcePosition.getStorgeId());
|
|
|
+ bool = bool && (storge!=null && storge.getLockStatus() == "1");
|
|
|
}
|
|
|
if(bool){
|
|
|
//实现移动操作到具体设备
|
|
|
-
|
|
|
//线边库解锁
|
|
|
storgeService.unlockStorge(xbkStorage);
|
|
|
+ //更新workpiece的库位信息
|
|
|
+
|
|
|
}else{
|
|
|
map.put("msg", DictionaryKey.NodeException.RESOURCE_LOCK);
|
|
|
}
|