|
@@ -1224,6 +1224,24 @@ public class DataDashboardService {
|
|
|
titles.add(data.getTitle());
|
|
|
poolTitles.add(data.getTitle());
|
|
|
}
|
|
|
+ // 处理均值
|
|
|
+ for (IntermediateIndicatorsExport item : result) {
|
|
|
+ // 发布未来表现
|
|
|
+ item.setT1DayAverageViewToBaseRatio(item.getT1DayAverageViewToBaseRatio() / item.getActualArticleReleaseCount());
|
|
|
+ item.setT1DayAverageMiniAppOpenRate(item.getT1DayAverageMiniAppOpenRate() / item.getActualArticleReleaseCount());
|
|
|
+ item.setT1DayAverageT0FissionRate(item.getT1DayAverageT0FissionRate() / item.getActualArticleReleaseCount());
|
|
|
+ item.setT1DayAverageFirstLayerFissionToViewBaseRatio(item.getT1DayAverageFirstLayerFissionToViewBaseRatio() / item.getActualArticleReleaseCount());
|
|
|
+ item.setT2DayAverageViewToBaseRatio(item.getT2DayAverageViewToBaseRatio() / item.getActualArticleReleaseCount());
|
|
|
+ item.setT2DayAverageT0FissionRate(item.getT2DayAverageT0FissionRate() / item.getActualArticleReleaseCount());
|
|
|
+ item.setT2DayAverageFirstLayerFissionToViewBaseRatio(item.getT2DayAverageFirstLayerFissionToViewBaseRatio() / item.getActualArticleReleaseCount());
|
|
|
+ // 发布依赖表现
|
|
|
+ item.setAverageMiniAppOpenRate(item.getAverageMiniAppOpenRate() / item.getActualArticleReleaseCount());
|
|
|
+ item.setAverageT0FissionRate(item.getAverageT0FissionRate() / item.getActualArticleReleaseCount());
|
|
|
+ item.setAverageFirstLayerFissionToViewBaseRatio(item.getAverageFirstLayerFissionToViewBaseRatio() / item.getActualArticleReleaseCount());
|
|
|
+ item.setFirstExplorationIntervalAvg(item.getFirstExplorationIntervalAvg() / item.getActualArticleReleaseCount());
|
|
|
+ // 发布表现
|
|
|
+ item.setAccountArticleRelevanceAvg(item.getAccountArticleRelevanceAvg() / item.getActualArticleReleaseCount());
|
|
|
+ }
|
|
|
|
|
|
return result;
|
|
|
}
|
|
@@ -1319,62 +1337,40 @@ public class DataDashboardService {
|
|
|
item.setT2DayViewBase(item.getViewBase());
|
|
|
item.setT1DayViewCount(item.getViewCount());
|
|
|
item.setT2DayViewCount(item.getViewCount());
|
|
|
- double t1DayAverageViewToBaseRatio = item.getT1DayAverageViewToBaseRatio();
|
|
|
if (data.getViewCount() > 0 && Objects.nonNull(data.getAvgViewCount()) && data.getAvgViewCount() > 0) {
|
|
|
double t1DayViewToBaseRatio = data.getViewCount() / data.getAvgViewCount();
|
|
|
- t1DayAverageViewToBaseRatio = (t1DayAverageViewToBaseRatio * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + t1DayViewToBaseRatio) / item.getActualArticleReleaseCount();
|
|
|
+ item.setT1DayAverageViewToBaseRatio(item.getT1DayAverageViewToBaseRatio() + t1DayViewToBaseRatio);
|
|
|
}
|
|
|
- item.setT1DayAverageViewToBaseRatio(t1DayAverageViewToBaseRatio);
|
|
|
- double t1DayAverageMiniAppOpenRate = item.getT1DayAverageMiniAppOpenRate();
|
|
|
if (data.getSecondFirstLevel() > 0 && Objects.nonNull(data.getAvgViewCount()) && data.getAvgViewCount() > 0) {
|
|
|
double t1DayMiniAppOpenRate = data.getSecondFirstLevel() / data.getAvgViewCount();
|
|
|
- t1DayAverageMiniAppOpenRate = (t1DayAverageMiniAppOpenRate * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + t1DayMiniAppOpenRate) / item.getActualArticleReleaseCount();
|
|
|
+ item.setT1DayAverageMiniAppOpenRate(item.getT1DayAverageMiniAppOpenRate() + t1DayMiniAppOpenRate);
|
|
|
}
|
|
|
- item.setT1DayAverageMiniAppOpenRate(t1DayAverageMiniAppOpenRate);
|
|
|
- double t1DayAverageT0FissionRate = item.getT1DayAverageT0FissionRate();
|
|
|
if (data.getSecondFission0() > 0 && data.getSecondFirstLevel() > 0) {
|
|
|
double t1DayT0FissionRate = data.getSecondFission0() / (double) data.getSecondFirstLevel();
|
|
|
- t1DayAverageT0FissionRate = (t1DayAverageT0FissionRate * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + t1DayT0FissionRate) / item.getActualArticleReleaseCount();
|
|
|
+ item.setT1DayAverageT0FissionRate(item.getT1DayAverageT0FissionRate() + t1DayT0FissionRate);
|
|
|
}
|
|
|
- item.setT1DayAverageT0FissionRate(t1DayAverageT0FissionRate);
|
|
|
- double t1DayAverageFirstLayerFissionToViewBaseRatio = item.getT1DayAverageFirstLayerFissionToViewBaseRatio();
|
|
|
if (data.getSecondFission0() > 0 && Objects.nonNull(data.getAvgViewCount()) && data.getAvgViewCount() > 0) {
|
|
|
double t1DayFirstLayerFissionToViewBaseRatio = data.getSecondFission0() / data.getAvgViewCount();
|
|
|
- t1DayAverageFirstLayerFissionToViewBaseRatio = (t1DayAverageFirstLayerFissionToViewBaseRatio * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + t1DayFirstLayerFissionToViewBaseRatio) / item.getActualArticleReleaseCount();
|
|
|
+ item.setT1DayAverageFirstLayerFissionToViewBaseRatio(item.getT1DayAverageFirstLayerFissionToViewBaseRatio()
|
|
|
+ + t1DayFirstLayerFissionToViewBaseRatio);
|
|
|
}
|
|
|
- item.setT1DayAverageFirstLayerFissionToViewBaseRatio(t1DayAverageFirstLayerFissionToViewBaseRatio);
|
|
|
- double t2DayAverageViewToBaseRatio = item.getT2DayAverageViewToBaseRatio();
|
|
|
if (data.getViewCount() > 0 && Objects.nonNull(data.getAvgViewCount()) && data.getAvgViewCount() > 0) {
|
|
|
double t2DayViewToBaseRatio = data.getViewCount() / data.getAvgViewCount();
|
|
|
- t2DayAverageViewToBaseRatio = (t2DayAverageViewToBaseRatio * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + t2DayViewToBaseRatio) / item.getActualArticleReleaseCount();
|
|
|
+ item.setT2DayAverageViewToBaseRatio(item.getT2DayAverageViewToBaseRatio() + t2DayViewToBaseRatio);
|
|
|
}
|
|
|
- item.setT2DayAverageViewToBaseRatio(t2DayAverageViewToBaseRatio);
|
|
|
- double t2DayAverageMiniAppOpenRate = item.getT2DayAverageMiniAppOpenRate();
|
|
|
if (data.getThirdFirstLevel() > 0 && Objects.nonNull(data.getAvgViewCount()) && data.getAvgViewCount() > 0) {
|
|
|
double t2DayMiniAppOpenRate = data.getThirdFirstLevel() / data.getAvgViewCount();
|
|
|
- t2DayAverageMiniAppOpenRate = (t2DayAverageMiniAppOpenRate * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + t2DayMiniAppOpenRate) / item.getActualArticleReleaseCount();
|
|
|
+ item.setT2DayAverageMiniAppOpenRate(item.getT2DayAverageMiniAppOpenRate() + t2DayMiniAppOpenRate);
|
|
|
}
|
|
|
- item.setT2DayAverageMiniAppOpenRate(t2DayAverageMiniAppOpenRate);
|
|
|
- double t2DayAverageT0FissionRate = item.getT2DayAverageT0FissionRate();
|
|
|
if (data.getThirdFission0() > 0 && data.getSecondFirstLevel() > 0) {
|
|
|
double t2DayT0FissionRate = data.getThirdFission0() / (double) data.getSecondFirstLevel();
|
|
|
- t2DayAverageT0FissionRate = (t2DayAverageT0FissionRate * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + t2DayT0FissionRate) / item.getActualArticleReleaseCount();
|
|
|
+ item.setT2DayAverageT0FissionRate(item.getT2DayAverageT0FissionRate() + t2DayT0FissionRate);
|
|
|
}
|
|
|
- item.setT2DayAverageT0FissionRate(t2DayAverageT0FissionRate);
|
|
|
- double t2DayAverageFirstLayerFissionToViewBaseRatio = item.getT2DayAverageFirstLayerFissionToViewBaseRatio();
|
|
|
if (data.getThirdFission0() > 0 && Objects.nonNull(data.getAvgViewCount()) && data.getAvgViewCount() > 0) {
|
|
|
double t2DayFirstLayerFissionToViewBaseRatio = data.getThirdFission0() / data.getAvgViewCount();
|
|
|
- t2DayAverageFirstLayerFissionToViewBaseRatio = (t2DayAverageFirstLayerFissionToViewBaseRatio * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + t2DayFirstLayerFissionToViewBaseRatio) / item.getActualArticleReleaseCount();
|
|
|
+ item.setT2DayAverageFirstLayerFissionToViewBaseRatio(item.getT2DayAverageFirstLayerFissionToViewBaseRatio()
|
|
|
+ + t2DayFirstLayerFissionToViewBaseRatio);
|
|
|
}
|
|
|
- item.setT2DayAverageFirstLayerFissionToViewBaseRatio(t2DayAverageFirstLayerFissionToViewBaseRatio);
|
|
|
|
|
|
// item.setT3DayViewCount(item.getT3DayViewCount());
|
|
|
// item.setT3DayFirstLayerUV(item.getT3DayFirstLayerUV());
|
|
@@ -1493,27 +1489,19 @@ public class DataDashboardService {
|
|
|
}
|
|
|
item.setRedundantFirstLayerUV(item.getRedundantFirstLayerUV() + sumFirstLevel);
|
|
|
item.setRedundantT0FissionUV(item.getRedundantT0FissionUV() + sumFission0);
|
|
|
- double averageMiniAppOpenRate = item.getAverageMiniAppOpenRate();
|
|
|
if (item.getRedundantFirstLayerUV() > 0 && item.getRedundantViewCount() > 0) {
|
|
|
double miniAppOpenRate = item.getRedundantFirstLayerUV() / (double) item.getRedundantViewCount();
|
|
|
- averageMiniAppOpenRate = (averageMiniAppOpenRate * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + miniAppOpenRate) / item.getActualArticleReleaseCount();
|
|
|
+ item.setAverageMiniAppOpenRate(item.getAverageMiniAppOpenRate() + miniAppOpenRate);
|
|
|
}
|
|
|
- item.setAverageMiniAppOpenRate(averageMiniAppOpenRate);
|
|
|
- double averageT0FissionRate = item.getAverageT0FissionRate();
|
|
|
if (item.getRedundantT0FissionUV() > 0 && item.getRedundantFirstLayerUV() > 0) {
|
|
|
double t0FissionRate = item.getRedundantT0FissionUV() / (double) item.getRedundantFirstLayerUV();
|
|
|
- averageT0FissionRate = (averageT0FissionRate * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + t0FissionRate) / item.getActualArticleReleaseCount();
|
|
|
+ item.setAverageT0FissionRate(item.getAverageT0FissionRate() + t0FissionRate);
|
|
|
}
|
|
|
- item.setAverageT0FissionRate(averageT0FissionRate);
|
|
|
- double averageFirstLayerFissionToViewBaseRatio = item.getAverageFirstLayerFissionToViewBaseRatio();
|
|
|
if (item.getRedundantViewBase() > 0 && item.getRedundantT0FissionUV() > 0) {
|
|
|
double firstLayerFissionToViewBaseRatio = item.getRedundantT0FissionUV() / (double) item.getRedundantViewBase();
|
|
|
- averageFirstLayerFissionToViewBaseRatio = (averageFirstLayerFissionToViewBaseRatio *
|
|
|
- (item.getActualArticleReleaseCount() - 1) + firstLayerFissionToViewBaseRatio) / item.getActualArticleReleaseCount();
|
|
|
+ item.setAverageFirstLayerFissionToViewBaseRatio(item.getAverageFirstLayerFissionToViewBaseRatio()
|
|
|
+ + firstLayerFissionToViewBaseRatio);
|
|
|
}
|
|
|
- item.setAverageFirstLayerFissionToViewBaseRatio(averageFirstLayerFissionToViewBaseRatio);
|
|
|
Map<String, Map<Integer, List<PublishSortLog>>> dateSortMap = publishSortLogMap.get(publish.getGhId());
|
|
|
if (Objects.nonNull(dateSortMap)) {
|
|
|
String publishDateStr = DateUtils.timestampToYMDStr(publish.getPublishTimestamp(), "yyyyMMdd");
|
|
@@ -1542,11 +1530,8 @@ public class DataDashboardService {
|
|
|
}
|
|
|
}
|
|
|
if (hisMinDate > 0) {
|
|
|
- double firstExplorationIntervalAvg = Double.isNaN(item.getFirstExplorationIntervalAvg()) ? 0.0 : item.getFirstExplorationIntervalAvg();
|
|
|
double explorationInterval = (article.getPublishTimestamp() - hisMinDate) / 86400.0;
|
|
|
- firstExplorationIntervalAvg = (firstExplorationIntervalAvg * (item.getActualArticleReleaseCount() - 1)
|
|
|
- + explorationInterval) / item.getActualArticleReleaseCount();
|
|
|
- item.setFirstExplorationIntervalAvg(firstExplorationIntervalAvg);
|
|
|
+ item.setFirstExplorationIntervalAvg(item.getFirstExplorationIntervalAvg() + explorationInterval);
|
|
|
}
|
|
|
scoreHisPublishTimeMap.put(type, scorePublishTime);
|
|
|
}
|
|
@@ -1592,7 +1577,6 @@ public class DataDashboardService {
|
|
|
if (CollectionUtil.isNotEmpty(logs)) {
|
|
|
for (PublishSortLog log : logs) {
|
|
|
if (log.getTitle().equals(data.getTitle())) {
|
|
|
- double scoreAvg = item.getAccountArticleRelevanceAvg();
|
|
|
double score = 0.0;
|
|
|
if (Objects.nonNull(log.getScore())) {
|
|
|
JSONObject scoreMap = JSONObject.parseObject(log.getScoreMap());
|
|
@@ -1600,8 +1584,7 @@ public class DataDashboardService {
|
|
|
score = scoreMap.getDoubleValue("SimilarityStrategy");
|
|
|
}
|
|
|
}
|
|
|
- scoreAvg = (scoreAvg * (item.getActualArticleReleaseCount() - 1) + score) / item.getActualArticleReleaseCount();
|
|
|
- item.setAccountArticleRelevanceAvg(scoreAvg);
|
|
|
+ item.setAccountArticleRelevanceAvg(item.getAccountArticleRelevanceAvg() + score);
|
|
|
break;
|
|
|
}
|
|
|
}
|