update
This commit is contained in:
@@ -279,6 +279,20 @@ public class V1RequestHandler
|
||||
"/peripheralJobs/dispatcher/trigger",
|
||||
this::handlePostPeripheralJobsDispatchTrigger
|
||||
);
|
||||
//新建接口,接收平台异步响应
|
||||
service.post(
|
||||
"/vehicles/receiveCallback",
|
||||
this::handlePostReceiveCallback
|
||||
);
|
||||
}
|
||||
|
||||
private Object handlePostReceiveCallback(Request request, Response response)
|
||||
throws KernelRuntimeException {
|
||||
response.type(HttpConstants.CONTENT_TYPE_TEXT_PLAIN_UTF8);
|
||||
vehicleHandler.postReceiveCallback(
|
||||
request.body()
|
||||
);
|
||||
return "";
|
||||
}
|
||||
|
||||
private Object handlePostDispatcherTrigger(Request request, Response response)
|
||||
|
||||
@@ -4,6 +4,8 @@ package org.opentcs.kernel.extensions.servicewebapi.v1;
|
||||
|
||||
import static java.util.Objects.requireNonNull;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import jakarta.annotation.Nullable;
|
||||
import jakarta.inject.Inject;
|
||||
import java.util.Comparator;
|
||||
@@ -13,6 +15,9 @@ import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
import org.opentcs.access.KernelServicePortal;
|
||||
import org.opentcs.access.rmi.KernelServicePortalBuilder;
|
||||
import org.opentcs.common.GuestUserCredentials;
|
||||
import org.opentcs.components.kernel.services.RouterService;
|
||||
import org.opentcs.components.kernel.services.VehicleService;
|
||||
import org.opentcs.data.ObjectUnknownException;
|
||||
@@ -31,6 +36,7 @@ import org.opentcs.kernel.extensions.servicewebapi.v1.binding.GetVehicleResponse
|
||||
import org.opentcs.kernel.extensions.servicewebapi.v1.binding.PostVehicleRoutesRequestTO;
|
||||
import org.opentcs.kernel.extensions.servicewebapi.v1.binding.PutVehicleAllowedOrderTypesTO;
|
||||
import org.opentcs.kernel.extensions.servicewebapi.v1.binding.PutVehicleEnergyLevelThresholdSetTO;
|
||||
import org.opentcs.manage.AdapterManage;
|
||||
|
||||
/**
|
||||
* Handles requests related to vehicles.
|
||||
@@ -59,6 +65,29 @@ public class VehicleHandler {
|
||||
this.executorWrapper = requireNonNull(executorWrapper, "executorWrapper");
|
||||
}
|
||||
|
||||
/**
|
||||
* 接收平台异步回调处理
|
||||
*/
|
||||
public void postReceiveCallback(Object data) {
|
||||
System.out.println("jsonObject-----ssss: " + data.toString());
|
||||
|
||||
//截取平台响应的字符串
|
||||
// String jsonStr = data.toString().split("=", 2)[1];
|
||||
String jsonStr = data.toString();
|
||||
JSONObject jsonObject = JSON.parseObject(jsonStr);
|
||||
String name = jsonObject.getString("name");
|
||||
Integer type = jsonObject.getInteger("type");
|
||||
|
||||
//将数据更新到线程安全的集合中,防止线程阻塞
|
||||
AdapterManage.setAdapterStatus(name);
|
||||
if (type == 1) {
|
||||
AdapterManage.setAdapterVehicleModel(name, jsonStr);
|
||||
} else if (type == 5) {
|
||||
//动作完成上报
|
||||
AdapterManage.setActionStatus(name);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Find all vehicles orders and filters depending on the given parameters.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user