package com.zy.asrs.wcs.core.model.enums;
|
|
import com.zy.asrs.framework.common.SpringUtils;
|
import com.zy.asrs.framework.exception.CoolException;
|
import com.zy.asrs.wcs.core.entity.MotionCtg;
|
import com.zy.asrs.wcs.core.service.MotionCtgService;
|
|
import static com.zy.asrs.wcs.core.model.enums.DeviceCtgType.*;
|
|
public enum MotionCtgType {
|
|
// 输送线 --------------------------------------------
|
CONVEYOR_INBOUND(CONVEYOR),
|
|
CONVEYOR_INBOUND_TO_LIFT(CONVEYOR),
|
|
CONVEYOR_OUTBOUND(CONVEYOR),
|
|
CONVEYOR_OUTBOUND_FROM_LIFT(CONVEYOR),
|
|
// 堆垛机 --------------------------------------------
|
|
// 提升机 --------------------------------------------
|
LIFT_MOVE(LIFT),
|
LIFT_WITH_GOODS(LIFT),
|
LIFT_WITH_SHUTTLE(LIFT),
|
LIFT_WITH_GOODS_AND_SHUTTLE(LIFT),
|
LIFT_TRANSPORT_TO_CONVEYOR(LIFT),
|
LIFT_MISSION_COMPLETE(LIFT),
|
LIFT_LOCK(LIFT),
|
LIFT_UNLOCK(LIFT),
|
LIFT_SHUTTLE_ARRIVAL(LIFT),
|
LIFT_SHUTTLE_LEAVE(LIFT),
|
|
// 穿梭车 --------------------------------------------
|
SHUTTLE_MOVE(SHUTTLE),
|
SHUTTLE_MOVE_LIFT_PALLET(SHUTTLE),//穿梭车顶升并移动
|
SHUTTLE_MOVE_DOWN_PALLET(SHUTTLE),//穿梭车移动并托盘下降
|
SHUTTLE_MOVE_FROM_LIFT(SHUTTLE),
|
SHUTTLE_MOVE_TO_LIFT(SHUTTLE),
|
SHUTTLE_MOVE_FROM_CONVEYOR(SHUTTLE),
|
SHUTTLE_MOVE_TO_CONVEYOR(SHUTTLE),
|
SHUTTLE_MOVE_STANDBY(SHUTTLE),
|
|
SHUTTLE_MOVE_FROM_LIFT_TO_CONVEYOR(SHUTTLE),
|
|
SHUTTLE_TRANSPORT(SHUTTLE),
|
SHUTTLE_TRANSPORT_FROM_LIFT(SHUTTLE),
|
SHUTTLE_TRANSPORT_TO_LIFT(SHUTTLE),
|
SHUTTLE_TRANSPORT_FROM_CONVEYOR(SHUTTLE),
|
SHUTTLE_TRANSPORT_TO_CONVEYOR(SHUTTLE),
|
|
SHUTTLE_CHARGE_ON(SHUTTLE),
|
SHUTTLE_CHARGE_OFF(SHUTTLE),
|
|
SHUTTLE_PALLET_LIFT(SHUTTLE),//托盘顶升
|
SHUTTLE_PALLET_DOWN(SHUTTLE),//托盘下降
|
|
SHUTTLE_UPDATE_LOCATION(SHUTTLE),//小车坐标更新
|
|
// AGV ----------------------------------------------
|
AGV_TRANSPORT(AGV),
|
|
// MAP ----------------------------------------------
|
MAP_LOCK_PATH(MAP),//地图锁定路径
|
MAP_UNLOCK_PATH(MAP),//地图解锁路径
|
|
;
|
|
public DeviceCtgType deviceCtg;
|
|
MotionCtgType(DeviceCtgType deviceCtg) {
|
this.deviceCtg = deviceCtg;
|
}
|
|
public long val() {
|
MotionCtgService service = SpringUtils.getBean(MotionCtgService.class);
|
MotionCtg entity = service.selectByFlag(this.toString());
|
if (entity == null) {
|
throw new CoolException("MotionCtgType Error!");
|
}
|
return entity.getId();
|
}
|
|
public static MotionCtgType get(String el) {
|
for (MotionCtgType value : MotionCtgType.values()) {
|
if (el.equals(value.toString())) {
|
return value;
|
}
|
}
|
return null;
|
}
|
|
|
}
|