package com.zy.acs.manager.core.constant; import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import static com.zy.acs.manager.core.constant.AreaConstant.*; import static com.zy.acs.manager.core.constant.AreaDisableConstant.*; @Component public class AgvAreaDispatcher { public static final Map> AGV_AREA = new ConcurrentHashMap<>(); public static final Map> AGV_DISABLE_AREA = new ConcurrentHashMap<>(); @PostConstruct public void init() { this.initEnableArea(); this.initDisableArea(); } public void initEnableArea() { for (String agv : AgvGroupConstant.FIRST_AGV_GROUP) { AGV_AREA.put(agv, FAR_LEFT_AREA); } for (String agv : AgvGroupConstant.SECOND_AGV_GROUP) { AGV_AREA.put(agv, LEFT_AREA); } for (String agv : AgvGroupConstant.THIRD_AGV_GROUP) { AGV_AREA.put(agv, MIDDLE_AREA); } for (String agv : AgvGroupConstant.FOURTH_AGV_GROUP) { AGV_AREA.put(agv, RIGHT_AREA); } for (String agv : AgvGroupConstant.FIFTH_AGV_GROUP) { AGV_AREA.put(agv, FAR_RIGHT_AREA); } } public void initDisableArea() { for (String agv : AgvGroupConstant.FIRST_AGV_GROUP) { AGV_DISABLE_AREA.put(agv, FAR_LEFT_DISABLE_AREA); } for (String agv : AgvGroupConstant.SECOND_AGV_GROUP) { AGV_DISABLE_AREA.put(agv, LEFT_DISABLE_AREA); } for (String agv : AgvGroupConstant.THIRD_AGV_GROUP) { AGV_DISABLE_AREA.put(agv, MIDDLE_DISABLE_AREA); } for (String agv : AgvGroupConstant.FOURTH_AGV_GROUP) { AGV_DISABLE_AREA.put(agv, RIGHT_DISABLE_AREA); } for (String agv : AgvGroupConstant.FIFTH_AGV_GROUP) { AGV_DISABLE_AREA.put(agv, FAR_RIGHT_DISABLE_AREA); } } }