Просмотр исходного кода

feat: 增加controller和相应测试

181250114 4 лет назад
Родитель
Сommit
dd0a3c7655

+ 34 - 0
src/main/java/com/seecoder/dataanalysis/controller/DevcloudController.java

@@ -0,0 +1,34 @@
+package com.seecoder.dataanalysis.controller;
+
+import com.seecoder.dataanalysis.analysis.DevcloudDataAnalysisService;
+import com.seecoder.dataanalysis.vo.ResponseVO;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author Peng Yiyan
+ * @since 2022/03/25
+ */
+@RestController
+@RequestMapping("/devcloud")
+public class DevcloudController {
+    private final DevcloudDataAnalysisService devcloudDataAnalysisService;
+
+    @Autowired
+    public DevcloudController(DevcloudDataAnalysisService devcloudDataAnalysisService){
+        this.devcloudDataAnalysisService = devcloudDataAnalysisService;
+    }
+
+    @GetMapping("/getStudentAnalysis")
+    public ResponseVO getStudentAnalysis(@RequestParam(value = "user_id") Integer user_id){
+        return ResponseVO.buildSuccess(devcloudDataAnalysisService.getStudentAnalysis(user_id));
+    }
+
+    @GetMapping("/getGroupAnalysis")
+    public ResponseVO getGroupAnalysis(@RequestParam(value = "project_id") Integer project_id){
+        return ResponseVO.buildSuccess(devcloudDataAnalysisService.getGroupAnalysis(project_id));
+    }
+}

+ 48 - 0
src/main/java/com/seecoder/dataanalysis/vo/ResponseVO.java

@@ -0,0 +1,48 @@
+package com.seecoder.dataanalysis.vo;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+@NoArgsConstructor
+@AllArgsConstructor
+@Accessors(chain = true)
+@Data
+public class ResponseVO {
+    /**
+     * 调用是否成功
+     */
+    private Boolean success;
+
+    /**
+     * 返回的提示信息
+     */
+    private String message;
+
+    /**
+     * 内容
+     */
+    private Object content;
+
+    public static ResponseVO buildSuccess() {
+        ResponseVO response = new ResponseVO();
+        response.setSuccess(true);
+        return response;
+    }
+
+    public static ResponseVO buildSuccess(Object content) {
+        ResponseVO response = new ResponseVO();
+        response.setContent(content);
+        response.setSuccess(true);
+        return response;
+    }
+
+    public static ResponseVO buildFailure(String message) {
+        ResponseVO response = new ResponseVO();
+        response.setSuccess(false);
+        response.setMessage(message);
+        System.out.println(message);
+        return response;
+    }
+}

+ 15 - 6
src/test/java/com/seecoder/dataanalysis/devcloud/impl/DevcloudDataAnalysisServiceImplTest.java

@@ -3,6 +3,7 @@ package com.seecoder.dataanalysis.devcloud.impl;
 import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.annotation.JsonProperty;
 import com.seecoder.dataanalysis.analysis.DevcloudDataAnalysisService;
+import com.seecoder.dataanalysis.controller.DevcloudController;
 import com.seecoder.dataanalysis.data.dao.devcloud.DevcloudInfoDao;
 import com.seecoder.dataanalysis.data.dao.eval.UserDao;
 import com.seecoder.dataanalysis.data.entity.devcloud.*;
@@ -43,6 +44,8 @@ public class DevcloudDataAnalysisServiceImplTest {
     private DevcloudInfoDao devcloudInfoDao;
     @Autowired
     private UserDao userDao;
+    @Autowired
+    private DevcloudController devcloudController;
 
     @Test
     void testEnum(){
@@ -103,12 +106,12 @@ public class DevcloudDataAnalysisServiceImplTest {
     void type101(){
         CommitInfoDTO commitInfoDTO = new CommitInfoDTO();
         commitInfoDTO.setProjectId(13);
-        commitInfoDTO.setCommitId("aaaa123456");
+        commitInfoDTO.setCommitId("aaaa123456789");
         commitInfoDTO.setCommitName("我超");
         commitInfoDTO.setCommitTime("2022-03-19");
         commitInfoDTO.setMessage("feat: 完善购物功能");
         commitInfoDTO.setUserId(4);
-        commitInfoDTO.setType("bug_list");
+        commitInfoDTO.setType("BUG_ID");
 
         devcloudDataAnalysisService.updateDevInfoType101(commitInfoDTO);
     }
@@ -250,15 +253,21 @@ public class DevcloudDataAnalysisServiceImplTest {
 
     @Test
     void testStudent(){
-        FormatStudent formatStudent = devcloudDataAnalysisService.getStudentAnalysis(4);
-        FormatStudent formatStudent1 = devcloudDataAnalysisService.getStudentAnalysis(3);
+//        FormatStudent formatStudent = devcloudDataAnalysisService.getStudentAnalysis(4);
+//        FormatStudent formatStudent1 = devcloudDataAnalysisService.getStudentAnalysis(3);
+        FormatStudent formatStudent = (FormatStudent) devcloudController.getStudentAnalysis(4).getContent();
+
         formatStudent.display();
-        formatStudent1.display();
+//        formatStudent1.display();
+
     }
 
     @Test
     void testGroup(){
-        FormatGroup formatGroup = devcloudDataAnalysisService.getGroupAnalysis(12);
+//        FormatGroup formatGroup = devcloudDataAnalysisService.getGroupAnalysis(12);
+
+        FormatGroup formatGroup = (FormatGroup)devcloudController.getGroupAnalysis(12).getContent();
+
         formatGroup.display();
     }
 }