Browse Source

Agv Event 体系

master
修宁 6 months ago
parent
commit
87033a4eec
  1. 26
      servo/src/main/java/com/galaxis/rcs/ptr/PtrAgvItem.java
  2. 16
      servo/src/main/java/com/yvan/logisticsModel/LogisticsRuntime.java

26
servo/src/main/java/com/galaxis/rcs/ptr/PtrAgvItem.java

@ -12,16 +12,12 @@ import com.galaxis.rcs.ptr.receiveEntity.base.CurBatteryData;
import com.galaxis.rcs.ptr.sendEntity.RcsConfigMessage; import com.galaxis.rcs.ptr.sendEntity.RcsConfigMessage;
import com.galaxis.rcs.ptr.sendEntity.RcsSRMessage; import com.galaxis.rcs.ptr.sendEntity.RcsSRMessage;
import com.galaxis.rcs.ptr.sendEntity.RcsSetLocationMessage; import com.galaxis.rcs.ptr.sendEntity.RcsSetLocationMessage;
import com.google.common.base.Joiner;
import com.google.common.collect.Queues; import com.google.common.collect.Queues;
import com.yvan.LccUtils;
import com.yvan.event.AgvEventType;
import com.yvan.logisticsModel.ExecutorItem; import com.yvan.logisticsModel.ExecutorItem;
import com.yvan.logisticsModel.LogisticsRuntime; import com.yvan.logisticsModel.LogisticsRuntime;
import com.yvan.logisticsModel.StaticItem; import com.yvan.logisticsModel.StaticItem;
import lombok.SneakyThrows; import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.clever.core.BannerUtils;
import org.clever.data.redis.Redis; import org.clever.data.redis.Redis;
import org.clever.data.redis.RedisAdmin; import org.clever.data.redis.RedisAdmin;
@ -86,7 +82,7 @@ public abstract class PtrAgvItem extends ExecutorItem {
final Cl2DeviceConnector cl2DeviceConnector = new Cl2DeviceConnector(this.runtime); final Cl2DeviceConnector cl2DeviceConnector = new Cl2DeviceConnector(this.runtime);
final AmrMessageHandler amrMessageHandler; public final AmrMessageHandler amrMessageHandler;
/** /**
* 连接器线程 * 连接器线程
@ -338,16 +334,16 @@ public abstract class PtrAgvItem extends ExecutorItem {
} }
} }
BannerUtils.printConfig(log, "updatePosition", new String[]{ // BannerUtils.printConfig(log, "updatePosition", new String[]{
"logicX: " + logicX, // "logicX: " + logicX,
"logicY: " + logicY, // "logicY: " + logicY,
"direction: " + direction, // "direction: " + direction,
"finishTargetIndex: " + finishTargetIndex, // "finishTargetIndex: " + finishTargetIndex,
"runningDeviceSize:" + (this.runningDeviceTaskList == null ? "null" : this.runningDeviceTaskList.size()), // "runningDeviceSize:" + (this.runningDeviceTaskList == null ? "null" : this.runningDeviceTaskList.size()),
"planTask:" + (this.planTaskSequence == null ? "null" : // "planTask:" + (this.planTaskSequence == null ? "null" :
("\n" + Joiner.on("\n").join((List) this.planTaskSequence.toPrettyMap().get("items"))) // ("\n" + Joiner.on("\n").join((List) this.planTaskSequence.toPrettyMap().get("items")))
) // )
}); // });
if (needCompute && this.runningDeviceTaskList.size() > 0) { if (needCompute && this.runningDeviceTaskList.size() > 0) {
int index = this.runningDeviceTaskList.size() - 1; int index = this.runningDeviceTaskList.size() - 1;

16
servo/src/main/java/com/yvan/logisticsModel/LogisticsRuntime.java

@ -11,6 +11,7 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps; import com.google.common.collect.Maps;
import com.google.common.collect.Sets; import com.google.common.collect.Sets;
import com.yvan.event.AgvEventManager; import com.yvan.event.AgvEventManager;
import com.yvan.event.AgvEventType;
import com.yvan.mqtt.FrontendMessagePushService; import com.yvan.mqtt.FrontendMessagePushService;
import com.yvan.redis.LccRedisService; import com.yvan.redis.LccRedisService;
import com.yvan.workbench.model.entity.LccProject; import com.yvan.workbench.model.entity.LccProject;
@ -121,6 +122,21 @@ public class LogisticsRuntime {
this.envId = env.getEnvId(); this.envId = env.getEnvId();
this.isVirtual = env.getIsVirtual(); this.isVirtual = env.getIsVirtual();
this.serverId = serverId; this.serverId = serverId;
this.setupEventHandle();
}
private void setupEventHandle() {
eventManager.subscribe((AgvEventType type, Object... args) -> {
ExecutorItem sender = (ExecutorItem) args[0];
String[] eventArgs = new String[args.length - 1];
for (int i = 1; i < args.length; i++) {
eventArgs[i - 1] = Conv.asString(args[i]);
}
BannerUtils.printConfig(log, this.projectUuid + "(" + this.envId + ") " + type + " AGV:" + sender.getId(), eventArgs);
});
} }
/** /**

Loading…
Cancel
Save