From 4a9c261d05201e9e69496336d25d40b86bf8b024 Mon Sep 17 00:00:00 2001 From: xuzhiheng <2543137953@qq.com> Date: Mon, 30 Jun 2025 18:24:26 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E5=88=86=E9=85=8D=E8=BD=A6?= =?UTF-8?q?=E8=BE=86=E6=9B=B4=E6=96=B0wms=E7=B3=BB=E7=BB=9F=E5=AF=B9?= =?UTF-8?q?=E5=BA=94=E4=BB=BB=E5=8A=A1=E6=89=A7=E8=A1=8C=E8=BD=A6=E8=BE=86?= =?UTF-8?q?-1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../opentcs/common/GuestUserCredentials.java | 2 +- .../phase/assignment/OrderAssigner.java | 36 +++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/opentcs-common/src/main/java/org/opentcs/common/GuestUserCredentials.java b/opentcs-common/src/main/java/org/opentcs/common/GuestUserCredentials.java index bb3d2ea..dc797cc 100644 --- a/opentcs-common/src/main/java/org/opentcs/common/GuestUserCredentials.java +++ b/opentcs-common/src/main/java/org/opentcs/common/GuestUserCredentials.java @@ -26,5 +26,5 @@ public interface GuestUserCredentials { /** * WMS系统地址 */ - String WMS_URL = "http://192.168.124.114:2004"; + String WMS_URL = "http://192.168.124.114:2004/api/project.yueda.agv.agv/updateAgvTaskDevice"; } diff --git a/opentcs-strategies-default/src/main/java/org/opentcs/strategies/basic/dispatching/phase/assignment/OrderAssigner.java b/opentcs-strategies-default/src/main/java/org/opentcs/strategies/basic/dispatching/phase/assignment/OrderAssigner.java index 7f79346..eedeed2 100644 --- a/opentcs-strategies-default/src/main/java/org/opentcs/strategies/basic/dispatching/phase/assignment/OrderAssigner.java +++ b/opentcs-strategies-default/src/main/java/org/opentcs/strategies/basic/dispatching/phase/assignment/OrderAssigner.java @@ -7,11 +7,14 @@ import static java.util.Objects.requireNonNull; import jakarta.inject.Inject; import java.util.Collection; import java.util.Comparator; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Objects; import java.util.Optional; import java.util.stream.Collectors; +import org.opentcs.common.GuestUserCredentials; +import org.opentcs.communication.http.HttpClient; import org.opentcs.components.kernel.Router; import org.opentcs.components.kernel.services.TCSObjectService; import org.opentcs.data.model.Point; @@ -194,6 +197,22 @@ public class OrderAssigner { .sorted(orderCandidateComparator) .findFirst() .ifPresent(candidate -> assignOrder(candidate, assignmentState)); + + AssignmentCandidate assignmentCandidate = ordersSplitByFilter.get(Boolean.TRUE).stream() + .map(CandidateFilterResult::getCandidate) + .sorted(orderCandidateComparator) + .findFirst().orElse(null); + + if (assignmentCandidate != null + && assignmentCandidate.getTransportOrder().getWrappingSequence() != null) { + //已分配车辆,调用接口告诉wms系统 + HashMap dataMap = new HashMap<>(); + dataMap.put("task_code", assignmentCandidate.getTransportOrder().getWrappingSequence().getName()); + dataMap.put("vehicle_name", vehicle.getName()); + + HttpClient httpClient = new HttpClient(); + httpClient.sendCommand(GuestUserCredentials.WMS_URL, dataMap); + } } private void tryAssignVehicle( @@ -248,6 +267,23 @@ public class OrderAssigner { .sorted(Comparator.comparingLong(AssignmentCandidate::getCompleteRoutingCosts)) .findFirst() .ifPresent(candidate -> assignOrder(candidate, assignmentState)); + + AssignmentCandidate assignmentCandidate = ordersSplitByFilter.get(Boolean.TRUE).stream() + .map(CandidateFilterResult::getCandidate) + .sorted(Comparator.comparingLong(AssignmentCandidate::getCompleteRoutingCosts)) + .findFirst().orElse(null); + + if (assignmentCandidate != null + && assignmentCandidate.getVehicle() != null + && order.getWrappingSequence() != null) { + //已分配车辆,调用接口告诉wms系统 + HashMap dataMap = new HashMap<>(); + dataMap.put("task_code", order.getWrappingSequence().getName()); + dataMap.put("vehicle_name", assignmentCandidate.getVehicle().getName()); + + HttpClient httpClient = new HttpClient(); + httpClient.sendCommand(GuestUserCredentials.WMS_URL, dataMap); + } } private void assignOrder(AssignmentCandidate candidate, AssignmentState assignmentState) {