|
@@ -80,23 +80,28 @@ public class BugDataService {
|
|
|
}
|
|
|
|
|
|
public void importBugData ( long examId , long caseId){
|
|
|
- if(isImported(examId, caseId)){
|
|
|
- return ; // if have been imported , skip
|
|
|
- }
|
|
|
- bugDataDao.deleteAllByCaseIdAndExamId(caseId,examId); // delete all the report that have been in this system ;
|
|
|
+ long count = bugDataDao.countByExamIdAndCaseId(examId, caseId);
|
|
|
List<BugDTO> bugs = bugReportService.getAllBugs(examId, caseId);
|
|
|
- List<BugData> toSave = new ArrayList<>();
|
|
|
- bugs.forEach(s->{
|
|
|
- BugData tempData = BugData.builder()
|
|
|
- .caseId(caseId)
|
|
|
- .examId(examId)
|
|
|
- .status(0)
|
|
|
- .reviewTimeMillis(s.getCreateTimeMillis())
|
|
|
+
|
|
|
+ if(bugs.size()!=count){
|
|
|
+ // 报告数量不一致 , 重新引入
|
|
|
+ List<BugData> savedBugs = bugDataDao.findByExamIdAndCaseId( examId, caseId);
|
|
|
+ List<String > bugIds = savedBugs.stream().map(BugData::getBugId).collect(Collectors.toList());
|
|
|
+ List<BugData> toSave = new ArrayList<>();
|
|
|
+ bugs.forEach(s->{
|
|
|
+ if(!bugIds.contains(s.getId())){
|
|
|
+ BugData tempData = BugData.builder()
|
|
|
+ .caseId(caseId)
|
|
|
+ .examId(examId)
|
|
|
+ .status(0)
|
|
|
+ .reviewTimeMillis(s.getCreateTimeMillis())
|
|
|
// .reviewerId()
|
|
|
- .bugId(s.getId()).build();
|
|
|
- toSave.add(tempData);
|
|
|
- });
|
|
|
- bugDataDao.saveAll(toSave); // 将信息存到数据库
|
|
|
+ .bugId(s.getId()).build();
|
|
|
+ toSave.add(tempData);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ bugDataDao.saveAll(toSave); // 将信息存到数据库
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
public List<BugData> getBugDataByIds(List<String> bugIds){
|