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), // 穿梭车 -------------------------------------------- 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_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),//托盘下降 // AGV ---------------------------------------------- AGV_TRANSPORT(AGV), ; 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; } }