Compare commits

..

No commits in common. '6ebf8d906afc94fd87ef5f1ef79274299c0216e3' and 'fb81a13b9d9b0caee74b41086e446cef5827adc8' have entirely different histories.

  1. 4
      src/main/java/com/keyware/composeanalysis/service/impl/AnalysisTaskServiceImpl.java
  2. 4
      src/main/java/com/keyware/composeanalysis/task/CodeBlockAnalysisTask.java
  3. 2
      src/main/java/com/keyware/composeanalysis/task/LineAnalysisTask.java
  4. 2
      src/main/java/com/keyware/composeanalysis/task/PorjectAnalysisTask.java
  5. 8
      src/main/resources/application.yaml

@ -71,7 +71,7 @@ public class AnalysisTaskServiceImpl extends ServiceImpl<AnalyzeTaskMapper, Anal
//开始分析前,将成分分析的状态为 进行中
LambdaUpdateWrapper<AnalysisTask> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(AnalysisTask::getId, analysisTask.getId())
updateWrapper.set(AnalysisTask::getId, analysisTask.getId())
.set(AnalysisTask::getComposeFlag, AnalysisStatusEnum.ANALYSISING.getCode());
this.update(null,updateWrapper);
@ -89,7 +89,7 @@ public class AnalysisTaskServiceImpl extends ServiceImpl<AnalyzeTaskMapper, Anal
checkProjectIfOpen(mongoTemplate,analysisTask);
//修改成分分析状态为完成
updateWrapper.eq(AnalysisTask::getId, analysisTask.getId())
updateWrapper.set(AnalysisTask::getId, analysisTask.getId())
.set(AnalysisTask::getComposeFlag, AnalysisStatusEnum.ANALYSIS_DONE.getCode())
.set(AnalysisTask::getOpenType, analysisTask.getOpenType());
this.update(null,updateWrapper);

@ -190,10 +190,8 @@ public class CodeBlockAnalysisTask extends IAnalysisTask {
matchCodeBlockLineCount += traitsFeatureMd5AndFeatureLineNumMap.get(matchFeatureMd5);
}
//特征行总数
int totalFeatureLineCount = traitsFeatureMd5AndFeatureLineNumMap.values().stream().mapToInt(Integer::intValue).sum();
//计算文件的总体特征相似度
BigDecimal featureSimilarity = new BigDecimal(matchCodeBlockLineCount).divide(new BigDecimal(totalFeatureLineCount), 4, RoundingMode.HALF_UP).multiply(new BigDecimal(100)).setScale(2);
BigDecimal featureSimilarity = new BigDecimal(matchCodeBlockLineCount).divide(new BigDecimal(analysisFile.getCodeRowNum()), 4, RoundingMode.HALF_UP).multiply(new BigDecimal(100)).setScale(2);
//计算文件的总体开源率
BigDecimal openRate = new BigDecimal(matchedLineRowsNum.size()).divide(new BigDecimal(analysisFile.getCodeRowNum()), 4, RoundingMode.HALF_UP).multiply(new BigDecimal(100)).setScale(2);

@ -1,5 +1,6 @@
package com.keyware.composeanalysis.task;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.lang.Pair;
@ -141,6 +142,7 @@ public class LineAnalysisTask extends IAnalysisTask {
return;
}
//保存所有匹配的行数信息,方便统计总的匹配行数
Set<String> matchedFeatureMd5 = new HashSet<>();

@ -87,7 +87,7 @@ public class PorjectAnalysisTask {
AnalysisLogUtil.insert(mongoTemplate, "成分分析失败:" + e.getStackTrace());
log.error("项目级分析失败,项目名称:" + analysisTask.getFileName(), e);
LambdaUpdateWrapper<AnalysisTask> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(AnalysisTask::getId, analysisTask.getId())
updateWrapper.set(AnalysisTask::getId, analysisTask.getId())
.set(AnalysisTask::getAnalysisStatus, AnalysisStatusEnum.FAIL_ANALYSIS.getCode());
analysisService.update(null,updateWrapper);
}

@ -4,11 +4,11 @@ spring:
cloud:
nacos:
discovery:
server-addr: 172.16.36.7:8848
namespace: 85e3c56e-90d3-4192-9913-4bdfb16b3db1
server-addr: 127.0.0.1:8848
namespace: 4ce70f33-8b88-4931-a88c-2b68e7259bd7
config:
server-addr: 172.16.36.7:8848
namespace: 85e3c56e-90d3-4192-9913-4bdfb16b3db1
server-addr: 127.0.0.1:8848
namespace: 4ce70f33-8b88-4931-a88c-2b68e7259bd7
file-extension: yaml
config:
import: nacos:compose-analysis-dev.yaml

Loading…
Cancel
Save