package com.zy.acs.manager.manager.enums; import com.zy.acs.framework.common.SpringUtils; import com.zy.acs.manager.common.exception.BusinessException; import com.zy.acs.manager.manager.entity.AgvSts; import com.zy.acs.manager.manager.service.AgvStsService; import java.util.EnumMap; import java.util.Map; public enum AgvStsType { IDLE, DISABLED, ; AgvStsType() { } private static final Map cache = new EnumMap<>(AgvStsType.class); public long val() { return cache.computeIfAbsent(this, key -> { AgvStsService service = SpringUtils.getBean(AgvStsService.class); AgvSts agvSts = service.selectByUuid(this.toString()); if (agvSts == null) { throw new BusinessException("AgvStsType Error!"); } return agvSts.getId(); }); } }