Parcourir la source

feat: 增加新建项目时的入库

181250114 il y a 4 ans
Parent
commit
63fcabd9ab

+ 6 - 0
src/main/java/com/seecoder/dataanalysis/analysis/DevcloudDataAnalysisService.java

@@ -74,6 +74,12 @@ public interface DevcloudDataAnalysisService {
      */
     ProjectRelate updateDevInfoType109(RelateProjectDTO relateProjectDTO);
 
+    /**
+     * op_type=110 新建项目时,将项目的基本信息存储在分析系统中
+     * @param projectDTO op_type=110的日志
+     */
+    Project updateDevInfoType110(ProjectDTO projectDTO);
+
     /**
      * 根据学生id,分析并返回学生的个人情况
      * @param user_id 学生的用户id

+ 21 - 9
src/main/java/com/seecoder/dataanalysis/analysis/impl/DevcloudDataAnalysisServiceImpl.java

@@ -319,15 +319,6 @@ public class DevcloudDataAnalysisServiceImpl implements DevcloudDataAnalysisServ
 
         List<TreeNodeInfo> treeNodeInfoList = devcloudInfo.getTreeNodeList();
         List<Integer> nodeIds = treeNodeDeletionDTO.getNodeIds();
-//        for(int i=0;i<treeNodeInfoList.size();i++){
-//            for(int j=0;j<nodeIds.size();j++){
-//                if(treeNodeInfoList.get(i).getNodeId().equals(nodeIds.get(j))){
-//                    treeNodeInfoList.remove(i);
-//                    i--;
-//                    break;
-//                }
-//            }
-//        }
         for(int i=0;i<nodeIds.size();i++){
             Integer nodeId = nodeIds.get(i);
             for(int j=0;j<treeNodeInfoList.size();j++){
@@ -410,6 +401,27 @@ public class DevcloudDataAnalysisServiceImpl implements DevcloudDataAnalysisServ
         return projectRelate;
     }
 
+    @Override
+    public Project updateDevInfoType110(ProjectDTO projectDTO){
+        Integer projectId = projectDTO.getProjectId();
+        Project project;
+
+        Optional<Project> result = projectDao.findById(projectId);
+        if(!result.isPresent()){
+            project = new Project();
+        }else {
+            System.out.println("请勿重复添加项目");
+            return projectDao.findById(projectId).get();
+        }
+
+        project.setProjectId(projectId);
+        project.setProjectName(projectDTO.getProjectName());
+        project.setDescription(projectDTO.getDescription());
+
+        projectDao.save(project);
+        return project;
+    }
+
 
     @Override
     public FormatStudent getStudentAnalysis(Integer user_id){

+ 3 - 7
src/main/java/com/seecoder/dataanalysis/data/entity/devcloud/Project.java

@@ -28,8 +28,8 @@ public class Project {
     /**
      * 项目名称
      */
-    @Field("name")
-    private String name;
+    @Field("project_name")
+    private String projectName;
 
     /**
      * 项目描述
@@ -37,9 +37,5 @@ public class Project {
     @Field("description")
     private String description;
 
-    /**
-     * 项目Url
-     */
-    @Field("git_remote_url")
-    private String gitRemoteUrl;
+
 }

+ 22 - 0
src/main/java/com/seecoder/dataanalysis/vo/devcloud/ProjectDTO.java

@@ -0,0 +1,22 @@
+package com.seecoder.dataanalysis.vo.devcloud;
+
+import com.alibaba.fastjson.annotation.JSONField;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class ProjectDTO {
+
+    @JSONField(name = "project_id")
+    private Integer projectId;
+
+    @JSONField(name = "project_name")
+    private String projectName;
+
+    @JSONField(name = "description")
+    private String description;
+
+}

+ 16 - 0
src/test/java/com/seecoder/dataanalysis/devcloud/impl/DevcloudDataAnalysisServiceImplTest.java

@@ -160,4 +160,20 @@ public class DevcloudDataAnalysisServiceImplTest {
 
         devcloudDataAnalysisService.updateDevInfoType109(relateProjectDTO);
     }
+
+    @Test
+    void type110(){
+        ProjectDTO projectDTO1 = new ProjectDTO();
+        projectDTO1.setProjectId(12);
+        projectDTO1.setProjectName("ddl_backEnd");
+        projectDTO1.setDescription("aaaaaaaa");
+
+        ProjectDTO projectDTO2 = new ProjectDTO();
+        projectDTO2.setProjectId(13);
+        projectDTO2.setProjectName("ddl_frontEnd");
+        projectDTO2.setDescription("aaaaaaaa");
+
+        devcloudDataAnalysisService.updateDevInfoType110(projectDTO1);
+        devcloudDataAnalysisService.updateDevInfoType110(projectDTO2);
+    }
 }