فهرست منبع

fix: enum类序列化

370774330@qq.com 5 سال پیش
والد
کامیت
07eee072d0

+ 5 - 0
web/src/main/java/seecoder/devcloud/web/model/enums/BugListStateEnum.java

@@ -1,13 +1,18 @@
 package seecoder.devcloud.web.model.enums;
 package seecoder.devcloud.web.model.enums;
 
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+
 /**
 /**
  * @author PuHong Weng
  * @author PuHong Weng
  * @date 2021/3/21
  * @date 2021/3/21
  * @description:
  * @description:
  */
  */
 public enum  BugListStateEnum {
 public enum  BugListStateEnum {
+    @JsonProperty("已创建")
     CREATED("已创建"),
     CREATED("已创建"),
+    @JsonProperty("进行中")
     PROCESSING("进行中"),
     PROCESSING("进行中"),
+    @JsonProperty("已结束")
     FINISHED("已结束");
     FINISHED("已结束");
 
 
     private final String value;
     private final String value;

+ 4 - 0
web/src/main/java/seecoder/devcloud/web/model/enums/CommitRelatedType.java

@@ -1,5 +1,7 @@
 package seecoder.devcloud.web.model.enums;
 package seecoder.devcloud.web.model.enums;
 
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+
 /**
 /**
  * @author PuHong Weng
  * @author PuHong Weng
  * @date 2021/3/23
  * @date 2021/3/23
@@ -9,7 +11,9 @@ package seecoder.devcloud.web.model.enums;
  * 目前关联的id有两种,一种是需求的TreeId,一种是Bug List里的Bug id
  * 目前关联的id有两种,一种是需求的TreeId,一种是Bug List里的Bug id
  */
  */
 public enum CommitRelatedType {
 public enum CommitRelatedType {
+    @JsonProperty("tree_id")
     TREE_ID("tree_id"),
     TREE_ID("tree_id"),
+    @JsonProperty("bug_id")
     BUG_ID("bug_id");
     BUG_ID("bug_id");
 
 
     private final String value;
     private final String value;

+ 8 - 0
web/src/main/java/seecoder/devcloud/web/model/enums/NodeStateEnum.java

@@ -1,8 +1,16 @@
 package seecoder.devcloud.web.model.enums;
 package seecoder.devcloud.web.model.enums;
 
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+
 public enum NodeStateEnum {
 public enum NodeStateEnum {
+
+    @JsonProperty("已创建")
     CREATED("已创建"),
     CREATED("已创建"),
+
+    @JsonProperty("进行中")
     PROCESSING("进行中"),
     PROCESSING("进行中"),
+
+    @JsonProperty("已结束")
     FINISHED("已结束");
     FINISHED("已结束");
 
 
     private String value;
     private String value;

+ 6 - 0
web/src/main/java/seecoder/devcloud/web/model/enums/NodeTypeEnum.java

@@ -1,7 +1,13 @@
 package seecoder.devcloud.web.model.enums;
 package seecoder.devcloud.web.model.enums;
 
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+
 public enum NodeTypeEnum {
 public enum NodeTypeEnum {
+
+    @JsonProperty("需求")
     REQUIREMENT("需求"),
     REQUIREMENT("需求"),
+
+    @JsonProperty("任务")
     TASK("任务");
     TASK("任务");
 
 
     private String value;
     private String value;

+ 10 - 0
web/src/main/java/seecoder/devcloud/web/model/enums/OperationEnum.java

@@ -1,12 +1,22 @@
 package seecoder.devcloud.web.model.enums;
 package seecoder.devcloud.web.model.enums;
 
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+
 /**
 /**
  * TreeNode操作类型
  * TreeNode操作类型
  */
  */
 public enum  OperationEnum {
 public enum  OperationEnum {
+
+    @JsonProperty("开启")
     START("开启"),
     START("开启"),
+
+    @JsonProperty("重新开启")
     RESTART("重新开启"),
     RESTART("重新开启"),
+
+    @JsonProperty("更新")
     UPDATE("更新"),
     UPDATE("更新"),
+
+    @JsonProperty("结束")
     FINISH("结束");
     FINISH("结束");
 
 
     private String value;
     private String value;

+ 8 - 2
web/src/main/java/seecoder/devcloud/web/model/enums/PriorityEnum.java

@@ -1,24 +1,30 @@
 package seecoder.devcloud.web.model.enums;
 package seecoder.devcloud.web.model.enums;
 
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+
 /**
 /**
  * @author PuHong Weng
  * @author PuHong Weng
  * @date 2021/3/21
  * @date 2021/3/21
  * @description:
  * @description:
  */
  */
 public enum PriorityEnum {
 public enum PriorityEnum {
-
+    @JsonProperty("紧急")
     HIGH("紧急"),
     HIGH("紧急"),
 
 
+    @JsonProperty("一般")
     MIDDLE("一般"),
     MIDDLE("一般"),
 
 
+    @JsonProperty("宽松")
     LOWEST("宽松");
     LOWEST("宽松");
 
 
     private final String value;
     private final String value;
 
 
     PriorityEnum(String value) {
     PriorityEnum(String value) {
-
         this.value = value;
         this.value = value;
     }
     }
+
+
+
     @Override
     @Override
     public String toString(){
     public String toString(){
         return value;
         return value;

+ 7 - 9
web/src/main/java/seecoder/devcloud/web/model/enums/UserIdentity.java

@@ -1,18 +1,16 @@
 package seecoder.devcloud.web.model.enums;
 package seecoder.devcloud.web.model.enums;
 
 
+import com.fasterxml.jackson.annotation.JsonProperty;
+
 public enum UserIdentity {
 public enum UserIdentity {
-	/**
-	 * 学生角色
-	 */
+
+	@JsonProperty("学生")
 	STUDENT("学生"),
 	STUDENT("学生"),
-	/**
-	 * 教师角色
-	 */
+
+	@JsonProperty("教师")
 	TEACHER("教师"),
 	TEACHER("教师"),
 
 
-	/**
-	 * 管理员角色
-	 */
+	@JsonProperty("管理员")
 	ADMIN("管理员");
 	ADMIN("管理员");
 
 
 	private final String name;
 	private final String name;

+ 6 - 1
web/src/main/java/seecoder/devcloud/web/model/vo/pipeline/PipelineCreateVO.java

@@ -1,6 +1,7 @@
 package seecoder.devcloud.web.model.vo.pipeline;
 package seecoder.devcloud.web.model.vo.pipeline;
 
 
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.Data;
 
 
 import javax.validation.constraints.Pattern;
 import javax.validation.constraints.Pattern;
@@ -14,12 +15,16 @@ import javax.validation.constraints.Pattern;
 @ApiModel("流水线创建表单信息")
 @ApiModel("流水线创建表单信息")
 public class PipelineCreateVO {
 public class PipelineCreateVO {
 
 
+    @ApiModelProperty("项目id")
     private Integer projectId;
     private Integer projectId;
 
 
+    @ApiModelProperty("流水线id")
     private Integer pipelineId;
     private Integer pipelineId;
 
 
-    @Pattern(regexp = "^\\w{3,20}$", message = "流水线名只能为长度为3-20且由数字、26个英文字母或者下划线组成的字符串")
+    @ApiModelProperty(value = "流水线名称,只能为长度为3-30且由数字、26个英文字母或者下划线组成的字符串")
+    @Pattern(regexp = "^\\w{3,30}$", message = "流水线名只能为长度为3-30且由数字、26个英文字母或者下划线组成的字符串")
     private String name;
     private String name;
 
 
+    @ApiModelProperty("模板名称")
     private String templateName;
     private String templateName;
 }
 }

+ 1 - 2
web/src/main/java/seecoder/devcloud/web/service/impl/user/UserServiceImpl.java

@@ -33,8 +33,7 @@ public class UserServiceImpl implements UserService, UserDetailsService {
 	@Override
 	@Override
 	public UserVO createGitlabUser(GitlabUserCreateVO vo) throws ServiceException {
 	public UserVO createGitlabUser(GitlabUserCreateVO vo) throws ServiceException {
 		try {
 		try {
-			//todo 增加user id
-			seecoderGitlabApi.createGitlabUser(vo.getUsername(),vo.getPassword(),vo.getEmail());
+			seecoderGitlabApi.createGitlabUser(getLoginUser().getId(),vo.getUsername(),vo.getPassword(),vo.getEmail());
 		} catch (SeecoderGitlabException e) {
 		} catch (SeecoderGitlabException e) {
 			throw new ServiceException("创建gitlab用户失败",e);
 			throw new ServiceException("创建gitlab用户失败",e);
 		}
 		}

+ 2 - 2
web/src/main/resources/application-wph.yml

@@ -39,8 +39,8 @@ seecoder:
   mail:
   mail:
     from: 370774330@qq.com
     from: 370774330@qq.com
   git:
   git:
-    password: mock
-    username: mock
+    username: root
+    password: rootroot
   docker:
   docker:
     host: unix:///var/run/docker.sock
     host: unix:///var/run/docker.sock
     registry: 192.168.99.105:30060
     registry: 192.168.99.105:30060

+ 23 - 2
web/src/test/java/seecoder/devcloud/web/DevcloudWebApplicationTests.java

@@ -1,10 +1,31 @@
 package seecoder.devcloud.web;
 package seecoder.devcloud.web;
 
 
-import org.junit.jupiter.api.Test;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+import seecoder.devcloud.web.model.enums.PriorityEnum;
 
 
+@RunWith(SpringRunner.class)
 @SpringBootTest
 @SpringBootTest
-class DevcloudWebApplicationTests {
+@MapperScan(basePackages = {"seecoder.devcloud.web.dao"})
+public class DevcloudWebApplicationTests {
 
 
 
 
+    @Test
+    public void testEnum(){
+        
+        ObjectMapper mapper = new ObjectMapper();
+        try {
+            String s = mapper.writeValueAsString(PriorityEnum.HIGH);
+            System.out.println(s);
+            System.out.println(mapper.readValue(s,PriorityEnum.class));
+        } catch (JsonProcessingException e) {
+            e.printStackTrace();
+        }
+    }
+
 }
 }