提交 385a4d52 authored 作者: 马晨俊's avatar 马晨俊

将依赖分离成一个新的表

上级 7f744813
......@@ -27,8 +27,6 @@ public class ReportEntity {
private Report.DatabaseType databaseType;//数据库类型
private int fileNum;
private long lineNum;
@Column(columnDefinition = "text")
private String dependence;
private Report.Separate isSeparate;//前后端是否分离
private String compileFilePath;//项目编译文件,如果是maven项目,用maven编译,那么就是pom.xml
public Report.DependenceManagement dependenceManagement;//版本管理方式
......
......@@ -17,6 +17,7 @@ public class Dependency {
private String groupId;
private String artifactId;
private String version;
private Integer reportId;
/*依赖类型,默认类型是jar。它通常表示依赖的文件的扩展名,但也有例外。一个类型可以被映射成另外一个扩展
名或分类器。类型经常和使用的打包方式对应,尽管这也有例外。一些类型的例子:jar,war,ejb-client和test-jar。
如果设置extensions为 true,就可以在plugin里定义新的类型。所以前面的类型的例子不完整
......
package com.zjty.adaptationmaster.adaptor.repository;
import com.zjty.adaptationmaster.adaptor.entity.pomEntity.SecondFloor.Dependency;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
public interface PomDependencyDao extends JpaRepository<Dependency,Integer> {
List<Dependency> findAllByReportIdEquals(Integer id);
}
......@@ -5,6 +5,7 @@ import com.zjty.adaptationmaster.adaptor.entity.Project;
import com.zjty.adaptationmaster.adaptor.entity.Report;
import com.zjty.adaptationmaster.adaptor.entity.ReportEntity;
import com.zjty.adaptationmaster.adaptor.entity.pomEntity.SecondFloor.Dependency;
import com.zjty.adaptationmaster.adaptor.repository.PomDependencyDao;
import com.zjty.adaptationmaster.adaptor.repository.ProjectDao;
import com.zjty.adaptationmaster.adaptor.repository.ReportDao;
import com.zjty.adaptationmaster.adaptor.service.InspectService;
......@@ -26,7 +27,8 @@ public class InspectServiceImpl implements InspectService {
private ProjectDao projectDao;
@Autowired
private ReportDao reportDao;
@Autowired
private PomDependencyDao pomDependencyDao;
@Transactional
@Override
......@@ -51,27 +53,27 @@ public class InspectServiceImpl implements InspectService {
reportEntity.setFramework(report.getFramework());
reportEntity.setIsSeparate(report.getIsSeparate());
reportEntity.setLanguage(report.getLanguage());
reportEntity.setPackagePath(report.getPackagePath());
List<Dependency> dependencies = report.getDependencies();
String s = JSON.toJSONString(dependencies);
List<Inspector.Warn> warnList = report.getWarnList();
String s1 = JSON.toJSONString(warnList);
reportEntity.setWarnList(s1);
List<String> jarPath = report.getJarPath();
String s2 = JSON.toJSONString(jarPath);
reportEntity.setJarPath(s2);
reportEntity.setDependence(s);
if(report.getPackagePath() == null){
report.setPackagePath(project.getCodeUrl());
reportEntity.setPackagePath(project.getCodeUrl());
}
Project one = projectDao.getOne(project.getId());
ReportEntity reportEntitySave = reportDao.save(reportEntity);
Project one = projectDao.getOne(project.getId());
List<Dependency> dependencies = report.getDependencies();
for (Dependency dependency : dependencies) {
dependency.setReportId(reportEntitySave.getId());
}
pomDependencyDao.saveAll(dependencies);
one.setReport(reportEntitySave);
report.setId(reportEntitySave.getId());
return ServerResponse.success(report);
return ServerResponse.success(reportEntitySave);
}else{
return ServerResponse.error("未上传源代码");
}
......@@ -81,9 +83,10 @@ public class InspectServiceImpl implements InspectService {
public Report getReportById(Integer id) {
ReportEntity one = reportDao.getOne(id);
Report report = new Report();
List<Dependency> allByReportIdEquals = pomDependencyDao.findAllByReportIdEquals(id);
report.setId(one.getId());
List<Dependency> dependencies = JSON.parseArray(one.getDependence(), Dependency.class);
report.setDependencies(dependencies);
report.setDependencies(allByReportIdEquals);
report.setDatabaseType(one.getDatabaseType());
report.setLanguage(one.getLanguage());
report.setPackagePath(one.getPackagePath());
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论