no message
							parent
							
								
									2bdfe79e70
								
							
						
					
					
						commit
						1524f76b50
					
				| 
						 | 
				
			
			@ -121,6 +121,10 @@ public class NioF3AppServiceImpl implements NioF3AppService {
 | 
			
		|||
        //获取所有扫描的料箱号
 | 
			
		||||
        List<String> boxNos = bindLarge.getBoxAndDolly().stream().map(BoxAndDolly::getBoxNo).collect(Collectors.toList());
 | 
			
		||||
 | 
			
		||||
        //获取所有dolly
 | 
			
		||||
        List<String> dollyList = bindLarge.getBoxAndDolly().stream().map(BoxAndDolly::getDolly).collect(Collectors.toList());
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        //验证Les任务
 | 
			
		||||
        List<Les> lesList = validateLes(bindLarge.getSrcPositionCode(), boxNos);
 | 
			
		||||
        List<Long> lesIds = lesList.stream().map(Les::getId).collect(Collectors.toList());
 | 
			
		||||
| 
						 | 
				
			
			@ -142,7 +146,7 @@ public class NioF3AppServiceImpl implements NioF3AppService {
 | 
			
		|||
        }
 | 
			
		||||
 | 
			
		||||
        //下发任务
 | 
			
		||||
        kmReService.sendAgvTask(agvTask, kmReService.sendAgvTaskQYCJson(agvTask, boxNos.size(), boxNos));
 | 
			
		||||
        kmReService.sendAgvTask(agvTask, kmReService.sendAgvTaskQYCJson(agvTask, boxNos.size(), dollyList));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional;
 | 
			
		|||
import java.sql.Array;
 | 
			
		||||
import java.sql.Timestamp;
 | 
			
		||||
import java.util.*;
 | 
			
		||||
import java.util.stream.Collectors;
 | 
			
		||||
 | 
			
		||||
@Service
 | 
			
		||||
@Slf4j
 | 
			
		||||
| 
						 | 
				
			
			@ -357,19 +358,48 @@ public class KMReServiceImpl implements KMReService {
 | 
			
		|||
        missionDataObj.putAll(missionDataMap);
 | 
			
		||||
        missionDataArray.add(missionDataObj);
 | 
			
		||||
 | 
			
		||||
        String[] endSlotCodes = agvTask.getEndSlotCode().split(",");
 | 
			
		||||
        int sum = 1;
 | 
			
		||||
        for (int i = 0; i < endSlotCodes.length; i++) {
 | 
			
		||||
        List<String> stations = Arrays.stream(agvTask.getEndSlotCode().split(","))
 | 
			
		||||
                .map(String::trim)
 | 
			
		||||
                .filter(s -> !s.isEmpty())
 | 
			
		||||
                .collect(Collectors.toList());
 | 
			
		||||
        if (stations.size() == 1) {
 | 
			
		||||
            JSONObject missionDataObj2 = new JSONObject(true);
 | 
			
		||||
            Map<String, Object> missionDataMap2 = new LinkedHashMap<>();
 | 
			
		||||
            missionDataMap2.put("sequence", (sum + (i + 1)));//序号
 | 
			
		||||
            missionDataMap2.put("sequence", 2);//序号
 | 
			
		||||
            missionDataMap2.put("type", "NODE_POINT");//作业类型:点位:NODE_POINT;区域:NODE_AREA
 | 
			
		||||
            missionDataMap2.put("position", endSlotCodes[i]);//终点
 | 
			
		||||
            missionDataMap2.put("position", stations.get(0));//终点
 | 
			
		||||
            missionDataMap2.put("actionType", "TUGGER_DETACH");//动作:TUGGER_ATTACH:挂钩;TUGGER_DETACH:脱钩
 | 
			
		||||
            missionDataMap2.put("passStrategy", "AUTO");//当前任务点结束后放行策略:自动:AUTO;手动:MANUAL
 | 
			
		||||
            missionDataMap2.put("waitingMillis", 0);//自动触发离开当前任务节点的时间,默认单位:毫秒
 | 
			
		||||
            missionDataObj2.putAll(missionDataMap2);
 | 
			
		||||
            missionDataArray.add(missionDataObj2);
 | 
			
		||||
        } else {
 | 
			
		||||
            //途径点
 | 
			
		||||
            List<String> waypoints = stations.subList(0, stations.size() - 1);
 | 
			
		||||
            for (int i = 0; i < waypoints.size(); i++) {
 | 
			
		||||
                JSONObject missionDataObj3 = new JSONObject(true);
 | 
			
		||||
                Map<String, Object> missionDataMap3 = new LinkedHashMap<>();
 | 
			
		||||
                int sequence = (1 + (i + 1));
 | 
			
		||||
                missionDataMap3.put("sequence", sequence);//序号
 | 
			
		||||
                missionDataMap3.put("type", "NODE_POINT");//作业类型:点位:NODE_POINT;区域:NODE_AREA
 | 
			
		||||
                missionDataMap3.put("position", waypoints.get(i));//途径点
 | 
			
		||||
                missionDataMap3.put("actionType", "");//动作:TUGGER_ATTACH:挂钩;TUGGER_DETACH:脱钩;移动
 | 
			
		||||
                missionDataMap3.put("passStrategy", "MANUAL");//当前任务点结束后放行策略:自动:AUTO;手动:MANUAL
 | 
			
		||||
                missionDataMap3.put("waitingMillis", 0);//自动触发离开当前任务节点的时间,默认单位:毫秒
 | 
			
		||||
                missionDataObj3.putAll(missionDataMap3);
 | 
			
		||||
                missionDataArray.add(missionDataObj3);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            JSONObject missionDataObj4 = new JSONObject(true);
 | 
			
		||||
            Map<String, Object> missionDataMap4 = new LinkedHashMap<>();
 | 
			
		||||
            missionDataMap4.put("sequence", stations.size() + 1);//序号
 | 
			
		||||
            missionDataMap4.put("type", "NODE_POINT");//作业类型:点位:NODE_POINT;区域:NODE_AREA
 | 
			
		||||
            missionDataMap4.put("position", stations.get(stations.size() - 1));//终点
 | 
			
		||||
            missionDataMap4.put("actionType", "TUGGER_DETACH");//动作:TUGGER_ATTACH:挂钩;TUGGER_DETACH:脱钩
 | 
			
		||||
            missionDataMap4.put("passStrategy", "AUTO");//当前任务点结束后放行策略:自动:AUTO;手动:MANUAL
 | 
			
		||||
            missionDataMap4.put("waitingMillis", 0);//自动触发离开当前任务节点的时间,默认单位:毫秒
 | 
			
		||||
            missionDataObj4.putAll(missionDataMap4);
 | 
			
		||||
            missionDataArray.add(missionDataObj4);
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        objMap.put("missionData", missionDataArray);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue