Browse Source

修改bug

姚云青 3 years ago
parent
commit
dfda63280a

+ 4 - 3
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/mq/TaskWorkNode.java

@@ -777,13 +777,14 @@ public class TaskWorkNode {
 
             if (count == 0) {//第一步的时候锁定资源
                 //目标地址和类型
-                targetStorge = workpieceService.getWorkPieceTargetStock(taskNode.getId());
+                Map returnMap = getTargetStorge(taskNode, taskNode.getFindAgvFlag(), zone);
+                targetStorge = returnMap.get("store") == null ? null : (Storge) returnMap.get("store");
                 robotList = productionresourcePositionService.getFreeProductionresourcePositionByIds(new String[]{taskNode.getResourceId().toString()});
-                //目标地址和类型
-                jqrStorge = storgeService.getById(robotList.get(0).getStorgeId());
 
                 dataMap.put("method", "GetServoStacker");
                 if (logical(robotList, targetStorge, dataMap) != null) {
+                    //目标地址和类型
+                    jqrStorge = storgeService.getById(robotList.get(0).getStorgeId());
                     Storge startStore = workpieceService.getWorkPieceStock(taskNode.getCompleteBatchNo(), false);
 
                     dataMap.put("fromStorge", startStore);

+ 11 - 6
imcs-admin-boot/imcs-business-biz/src/main/java/com/github/zuihou/business/util/MsgUtil.java

@@ -189,22 +189,26 @@ public class MsgUtil implements ApplicationContextAware {
             }
 
 
-            jsonObject.put("taskNodeId",nextTaskNode.getId().toString());
             if(callBackJson.containsKey(YunjianConstant.YUNJIAN_XBKFLAG)){//临时存放到了线边库,向虚拟线边库发一个MQ。
-                if(callBackJson.containsKey(YunjianConstant.YUNJIAN_ROBORT_CACHE_FLAG)){//带缓存位机器人的多步骤执行
                     int count =  callBackJson.getString(taskNode.getId().toString()+"count")==null?0:Integer.parseInt(callBackJson.getString(taskNode.getId().toString()+"count"));
                     int limit =5;
-                    if(count<limit){//
+                    if(!callBackJson.containsKey(YunjianConstant.YUNJIAN_ROBORT_CACHE_FLAG)) {
+                        limit =2;
+                    }
+
+                    if(count<limit-1){//
                         count = ++count;
-                        jsonObject.put(taskNode.getId().toString()+"count",count);
                         //把当前节点推送到mq
                         jsonObject.put("taskNodeId",taskNode.getId().toString());
+                        jsonObject.put(taskNode.getId().toString()+"count",count);
                         jsonObject.put("bizType",BizConstant.MQ_TASK_NODE_TYPE_XBK);
                         dynamicRabbitMq.sendMsg(taskNode.getResourceId().toString(),jsonObject.toString());
                         return;
+                    }else{
+                        jsonObject.put("taskNodeId",nextTaskNode.getId().toString());
+                        jsonObject.put("bizType", BizConstant.MQ_TASK_NODE_TYPE_COMMON);
+                        dynamicRabbitMq.sendMsg(nextTaskNode.getResourceId().toString(),jsonObject.toString());
                     }
-                }
-                dynamicRabbitMq.sendMsg(nextTaskNode.getResourceId().toString(),jsonObject.toString());
             }else{
                 jsonObject.put("bizType", BizConstant.MQ_TASK_NODE_TYPE_COMMON);
                 if(callBackJson.containsKey(YunjianConstant.YUNJIAN_ROBORT_CACHE_FLAG)){//带缓存位机器人的多步骤执行
@@ -219,6 +223,7 @@ public class MsgUtil implements ApplicationContextAware {
                         return;
                     }
                 }
+                jsonObject.put("taskNodeId",nextTaskNode.getId().toString());
                 dynamicRabbitMq.sendMsg(nextTaskNode.getResourceId().toString(),jsonObject.toString());
             }
         }