package com.mh.user.constants; import com.mh.user.factory.*; import com.mh.user.strategy.*; /** * @author LJF * @version 1.0 * @project CHWS * @description 设备枚举类 * @date 2024-03-19 10:06:29 */ public enum DeviceStrategyEnum { WtMeterEnum("水表", WtMeterStrategy.getInstance()), EleMeterEnum("电表", EleMeterStrategy.getInstance()), PressureTransEnum("压变", PressureTransStrategy.getInstance()), HeatPumpEnum("热泵", HeatPumpStrategy.getInstance()), TempControlEnum("温控", TempControlStrategy.getInstance()), BackTempControlEnum("回水温控", BackTempControlStrategy.getInstance()), TimeControlEnum("时控", TimeControlStrategy.getInstance()), ALitaTimeControlEnum("阿丽塔时控", TimeControlStrategy.getInstance()), WaterLevelSwitchEnum("水位开关", WaterLevelSwitchStrategy.getInstance()), StatusCheckEnum("状态检测", StatusCheckStrategy.getInstance()), TempTransEnum("温度变送器", TempTransStrategy.getInstance()), HeatPumpStatusEnum("热泵状态", HeatPumpStatusStrategy.getInstance()); private String deviceType; private DeviceStrategy deviceStrategy; private DeviceStrategyEnum(String deviceType, DeviceStrategy deviceStrategy) { this.deviceType = deviceType; this.deviceStrategy = deviceStrategy; } public String getDeviceType() { return deviceType; } public void setDeviceType(String deviceType) { this.deviceType = deviceType; } public DeviceStrategy getDeviceStrategy() { return deviceStrategy; } public void setDeviceStrategy(DeviceStrategy deviceStrategy) { this.deviceStrategy = deviceStrategy; } public static DeviceStrategy getDeviceStrategy(String deviceType) { for (DeviceStrategyEnum deviceEnum : DeviceStrategyEnum.values()) { if (deviceEnum.getDeviceType().equals(deviceType)) { return deviceEnum.getDeviceStrategy(); } } return null; } }