添加设备

This commit is contained in:
2025-06-30 16:59:12 +08:00
parent 0969a7cd1f
commit eac1b2e016
21 changed files with 567 additions and 162 deletions

View File

@ -0,0 +1,35 @@
package com.fuyuanshen.equipment.enums;
/**
* @author: 默苍璃
* @date: 2025-06-1818:17
*/
public enum BindingStatusEnum {
UNBOUND(0, "未绑定"), BOUND(1, "已绑定");
private final int code;
private final String description;
BindingStatusEnum(int code, String description) {
this.code = code;
this.description = description;
}
public int getCode() {
return code;
}
public String getDescription() {
return description;
}
public static BindingStatusEnum fromCode(int code) {
for (BindingStatusEnum status : values()) {
if (status.getCode() == code) {
return status;
}
}
throw new IllegalArgumentException("Invalid binding status code: " + code);
}
}

View File

@ -0,0 +1,45 @@
package com.fuyuanshen.equipment.enums;
import com.fasterxml.jackson.annotation.JsonValue;
/**
* 通讯方式枚举
*
* @author: 默苍璃
* @date: 2025-06-2414:11
*/
public enum CommunicationModeEnum {
FOUR_G(0, "4G"),
BLUETOOTH(1, "蓝牙");
private final int value;
private final String label;
CommunicationModeEnum(int value, String label) {
this.value = value;
this.label = label;
}
@JsonValue
public int getValue() {
return value;
}
public String getLabel() {
return label;
}
/**
* 根据值获取标签
*/
public static String getLabelByValue(int value) {
for (CommunicationModeEnum mode : values()) {
if (mode.getValue() == value) {
return mode.getLabel();
}
}
return null;
}
}

View File

@ -0,0 +1,44 @@
package com.fuyuanshen.equipment.enums;
/**
* 设备有效性状态枚举
*
* @author: 默苍璃
* @date: 2025-06-2113:26
*/
public enum DeviceActiveStatusEnum {
INACTIVE(0, "无效"), ACTIVE(1, "有效");
private final Integer code;
private final String description;
DeviceActiveStatusEnum(Integer code, String description) {
this.code = code;
this.description = description;
}
public Integer getCode() {
return code;
}
public String getDescription() {
return description;
}
/**
* 根据 code 获取描述
*
* @param code 状态码
* @return 描述信息
*/
public static String getDescriptionByCode(Integer code) {
for (DeviceActiveStatusEnum status : values()) {
if (status.getCode().equals(code)) {
return status.getDescription();
}
}
return null;
}
}

View File

@ -0,0 +1,45 @@
package com.fuyuanshen.equipment.enums;
/**
* @author: 默苍璃
* @date: 2025-06-1918:50
*/
public enum DeviceAuthorizationStatus {
/**
* 未授权
*/
UNAUTHORIZED(0),
/**
* 已授权
*/
AUTHORIZED(1);
private final int value;
DeviceAuthorizationStatus(int value) {
this.value = value;
}
public int getValue() {
return value;
}
/**
* 根据整数值获取对应的枚举值
*
* @param value 整数值0 或 1
* @return 对应的 DeviceAuthorizationStatus 枚举
* @throws IllegalArgumentException 如果值不是 0 或 1
*/
public static DeviceAuthorizationStatus fromValue(int value) {
for (DeviceAuthorizationStatus status : values()) {
if (status.getValue() == value) {
return status;
}
}
throw new IllegalArgumentException("Invalid device authorization status value: " + value);
}
}

View File

@ -0,0 +1,51 @@
package com.fuyuanshen.equipment.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 设备状态枚举
*
* @author: 默苍璃
* @date: 2025-06-1916:02
*/
@Getter
@AllArgsConstructor
public enum DeviceStatusEnum {
/**
* 失效
*/
INVALID(0, "失效"),
/**
* 正常
*/
NORMAL(1, "正常");
/**
* 状态码
*/
private final Integer code;
/**
* 描述
*/
private final String description;
/**
* 根据状态码获取描述
*
* @param code 状态码
* @return 描述
*/
public static String getDescriptionByCode(Integer code) {
for (DeviceStatusEnum status : DeviceStatusEnum.values()) {
if (status.getCode().equals(code)) {
return status.getDescription();
}
}
return null;
}
}

View File

@ -0,0 +1,48 @@
package com.fuyuanshen.equipment.enums;
import com.fasterxml.jackson.annotation.JsonValue;
/**
* 用户类型枚举
*
* @author: 默苍璃
* @date: 2025-06-1811:14
*/
public enum UserType {
APP(0, "APP"), MINI_PROGRAM(1, "小程序");
private final int value;
private final String description;
UserType(int value, String description) {
this.value = value;
this.description = description;
}
@JsonValue
public int getValue() {
return value;
}
public String getDescription() {
return description;
}
/**
* 根据值获取对应的枚举
*
* @param value 枚举值
* @return 对应的枚举对象
*/
public static UserType fromValue(int value) {
for (UserType userType : values()) {
if (userType.getValue() == value) {
return userType;
}
}
throw new IllegalArgumentException("Invalid user type value: " + value);
}
}