zhanghaijun 2 роки тому
батько
коміт
91737d27d3

+ 17 - 0
train-server/src/main/java/top/haijunit/train/domain/constant/DirectionEnum.java

@@ -1,8 +1,13 @@
 package top.haijunit.train.domain.constant;
 
+import com.baomidou.mybatisplus.annotation.EnumValue;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
+import java.util.Objects;
+
 /**
  * @author zhanghaijun
  * @date 2023/11/8 12:09
@@ -14,6 +19,18 @@ public enum DirectionEnum {
     top("top", "上行,从右向左"),
     down("down", "下行,从左向右");
 
+    @JsonValue
+    @EnumValue
     private final String code;
     private final String describe;
+
+    @JsonCreator(mode = JsonCreator.Mode.DELEGATING)
+    public static DirectionEnum getByValue(String value) {
+        for (DirectionEnum genderEnum : values()) {
+            if (Objects.equals(genderEnum.getCode(), value)) {
+                return genderEnum;
+            }
+        }
+        return null;
+    }
 }

+ 17 - 0
train-server/src/main/java/top/haijunit/train/domain/constant/SignEnum.java

@@ -1,8 +1,13 @@
 package top.haijunit.train.domain.constant;
 
+import com.baomidou.mybatisplus.annotation.EnumValue;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
+import java.util.Objects;
+
 /**
  * @author zhanghaijun
  * @date 2023/11/8 11:54
@@ -16,6 +21,18 @@ public enum SignEnum {
     ForkSign("forkSign", "道岔"),
     StopSign("stopSign", "停车标");
 
+    @JsonValue
+    @EnumValue
     private final String code;
     private final String describe;
+
+    @JsonCreator(mode = JsonCreator.Mode.DELEGATING)
+    public static SignEnum getByValue(String value) {
+        for (SignEnum genderEnum : values()) {
+            if (Objects.equals(genderEnum.getCode(), value)) {
+                return genderEnum;
+            }
+        }
+        return null;
+    }
 }

+ 17 - 0
train-server/src/main/java/top/haijunit/train/domain/constant/StatusEnum.java

@@ -1,8 +1,13 @@
 package top.haijunit.train.domain.constant;
 
+import com.baomidou.mybatisplus.annotation.EnumValue;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
+import java.util.Objects;
+
 /**
  * @author zhanghaijun
  * @date 2023/11/11 10:25
@@ -15,6 +20,18 @@ public enum StatusEnum {
     Valid("valid","有效"),
     Disable("disable","禁用");
 
+    @JsonValue
+    @EnumValue
     private final String code;
     private final String describe;
+
+    @JsonCreator(mode = JsonCreator.Mode.DELEGATING)
+    public static StatusEnum getByValue(String value) {
+        for (StatusEnum genderEnum : values()) {
+            if (Objects.equals(genderEnum.getCode(), value)) {
+                return genderEnum;
+            }
+        }
+        return null;
+    }
 }

+ 37 - 0
train-server/src/main/java/top/haijunit/train/domain/constant/UserStatusEnum.java

@@ -0,0 +1,37 @@
+package top.haijunit.train.domain.constant;
+
+import com.baomidou.mybatisplus.annotation.EnumValue;
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Objects;
+
+/**
+ * @author zhanghaijun
+ * @date 2023/11/11 12:50
+ * @description 用户状态枚举
+ */
+@Getter
+@AllArgsConstructor
+public enum UserStatusEnum{
+
+    Valid(1, "有效"),
+    Disable(2, "禁用");
+
+    @JsonValue
+    @EnumValue
+    private final Integer code;
+    private final String describe;
+
+    @JsonCreator(mode = JsonCreator.Mode.DELEGATING)
+    public static UserStatusEnum getByValue(Integer value) {
+        for (UserStatusEnum genderEnum : values()) {
+            if (Objects.equals(genderEnum.getCode(), value)) {
+                return genderEnum;
+            }
+        }
+        return null;
+    }
+}

+ 3 - 0
train-server/src/main/java/top/haijunit/train/domain/entity/UserEntity.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import top.haijunit.mybatis.domain.BaseEntity;
+import top.haijunit.train.domain.constant.UserStatusEnum;
 
 /**
  * @author zhanghaijun
@@ -23,4 +24,6 @@ public class UserEntity extends BaseEntity {
     private String username;
 
     private String email;
+
+    private UserStatusEnum status;
 }

+ 2 - 0
train-server/src/main/java/top/haijunit/train/service/UserService.java

@@ -4,6 +4,7 @@ import cn.hutool.core.util.RandomUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
+import top.haijunit.train.domain.constant.UserStatusEnum;
 import top.haijunit.train.domain.entity.UserEntity;
 import top.haijunit.train.mapper.UserMapper;
 
@@ -24,6 +25,7 @@ public class UserService {
         UserEntity user = new UserEntity();
         user.setUsername(RandomUtil.randomString(4));
         user.setEmail(RandomUtil.randomString(4) + "@qq.com");
+        user.setStatus(UserStatusEnum.Valid);
         userMapper.insert(user);
         return userMapper.selectList(new QueryWrapper<>());
     }