|
@@ -211,12 +211,13 @@ public class BytedanceReportServiceImpl implements IBytedanceReportService {
|
|
|
BigDecimal yesterdayCost = yesterdayJson.getBigDecimal("cost");// 昨日消耗
|
|
|
BigDecimal compareBigDecimal = new BigDecimal(0);
|
|
|
if (yesterdayCost.compareTo(compareBigDecimal) != 0) {
|
|
|
- BigDecimal costProportion = (cost.subtract(yesterdayCost)).divide(yesterdayCost, BigDecimal.ROUND_HALF_UP);
|
|
|
+ BigDecimal costProportion = (cost.subtract(yesterdayCost)).divide(yesterdayCost);
|
|
|
accountJson.put("costProportion", costProportion); // 较昨日增加比例
|
|
|
} else {
|
|
|
accountJson.put("costProportion", 0); // 较昨日增加比例
|
|
|
}
|
|
|
|
|
|
+
|
|
|
Long photoShow = accountJson.getLong("photoShow");// 今日封面展示
|
|
|
Long yesterdayPhotoShow = yesterdayJson.getLong("photoShow");// 昨日封面展示
|
|
|
if (yesterdayPhotoShow != 0L) {
|
|
@@ -297,14 +298,14 @@ public class BytedanceReportServiceImpl implements IBytedanceReportService {
|
|
|
BigDecimal cost = comparedJson.getBigDecimal("cost");
|
|
|
BigDecimal comparedCost = beComparedJson.getBigDecimal("cost");
|
|
|
if (comparedCost.compareTo(new BigDecimal(0)) != 0) {
|
|
|
- BigDecimal costProportion = (cost.subtract(comparedCost)).divide(comparedCost, BigDecimal.ROUND_HALF_UP);
|
|
|
+ BigDecimal costProportion = (cost.subtract(comparedCost)).divide(comparedCost, BigDecimal.ROUND_HALF_UP, 2);
|
|
|
comparedJson.put("costProportion", costProportion);
|
|
|
} else {
|
|
|
comparedJson.put("costProportion", 0);
|
|
|
}
|
|
|
|
|
|
Long photoClick = comparedJson.getLong("photoClick");
|
|
|
- Long comparedPhotoClick = beComparedJson.getLong("photoShow");
|
|
|
+ Long comparedPhotoClick = beComparedJson.getLong("photoClick");
|
|
|
if (comparedPhotoClick != 0L) {
|
|
|
double photoClickProportion = (photoClick.doubleValue() - comparedPhotoClick.doubleValue()) / comparedPhotoClick.doubleValue();
|
|
|
comparedJson.put("photoClickProportion", photoClickProportion);
|
|
@@ -313,7 +314,7 @@ public class BytedanceReportServiceImpl implements IBytedanceReportService {
|
|
|
}
|
|
|
|
|
|
Long aClick = comparedJson.getLong("aclick");
|
|
|
- Long comparedAClick = beComparedJson.getLong("photoShow");
|
|
|
+ Long comparedAClick = beComparedJson.getLong("aclick");
|
|
|
if (comparedAClick != 0L) {
|
|
|
double aClickProportion = (aClick.doubleValue() - comparedAClick.doubleValue()) / comparedAClick.doubleValue();
|
|
|
comparedJson.put("comparedAclick", aClickProportion);
|
|
@@ -351,59 +352,58 @@ public class BytedanceReportServiceImpl implements IBytedanceReportService {
|
|
|
if (type == 1) { // 今日明细
|
|
|
|
|
|
List<JSONObject> yesterdayDetail = reportMapper.selectReportDetail(anotherDay);
|
|
|
- List<JSONObject> dayDetail = reportMapper.selectReportDetail(nowDate);
|
|
|
for (int i = 0; i < yesterdayDetail.size(); i++) {
|
|
|
+
|
|
|
JSONObject yesterdayJson = yesterdayDetail.get(i);
|
|
|
if (!Check.isNull(yesterdayJson)) {
|
|
|
String yesterdayStatHour = yesterdayJson.getString("statHour");
|
|
|
+ JSONObject nowJson = reportMapper.selectDayHourlyByHourAndDate(nowDate, yesterdayStatHour);
|
|
|
+ if (Check.isNull(nowJson)) {
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ nowJson.put("statDate", nowDate);
|
|
|
+ BigDecimal cost = nowJson.getBigDecimal("cost"); // 今日消耗
|
|
|
+ BigDecimal yesterdayCost = yesterdayJson.getBigDecimal("cost");// 昨日消耗
|
|
|
+ BigDecimal compareBigDecimal = new BigDecimal(0);
|
|
|
+ if (yesterdayCost.compareTo(compareBigDecimal) != 0) {
|
|
|
+ BigDecimal costProportion = ((cost.subtract(yesterdayCost))).divide(yesterdayCost, BigDecimal.ROUND_HALF_UP, 2);
|
|
|
+ nowJson.put("costProportion", costProportion); // 较昨日增加比例
|
|
|
+ } else {
|
|
|
+ nowJson.put("costProportion", 0); // 较昨日增加比例
|
|
|
+ }
|
|
|
|
|
|
- for (int j = 0; j < dayDetail.size(); j++) {
|
|
|
- JSONObject nowJson = dayDetail.get(j);
|
|
|
- String statHour = nowJson.getString("statHour");
|
|
|
- if (yesterdayStatHour.equals(statHour)) {
|
|
|
- BigDecimal cost = nowJson.getBigDecimal("cost"); // 今日消耗
|
|
|
- BigDecimal yesterdayCost = yesterdayJson.getBigDecimal("cost");// 昨日消耗
|
|
|
- BigDecimal compareBigDecimal = new BigDecimal(0);
|
|
|
- if (yesterdayCost.compareTo(compareBigDecimal) != 0) {
|
|
|
- BigDecimal costProportion = (cost.subtract(yesterdayCost)).divide(yesterdayCost, BigDecimal.ROUND_HALF_UP);
|
|
|
- nowJson.put("proportion", costProportion); // 较昨日增加比例
|
|
|
- } else {
|
|
|
- nowJson.put("proportion", 0); // 较昨日增加比例
|
|
|
- }
|
|
|
-
|
|
|
- Long photoShow = nowJson.getLong("photoShow");// 今日封面展示
|
|
|
- Long yesterdayPhotoShow = yesterdayJson.getLong("photoShow");// 昨日封面展示
|
|
|
- if (yesterdayPhotoShow != 0L) {
|
|
|
- double showProportion = (photoShow.doubleValue() - yesterdayPhotoShow.doubleValue()) / yesterdayPhotoShow.doubleValue();
|
|
|
- nowJson.put("proportion", showProportion); // 较昨日增加比例
|
|
|
- } else {
|
|
|
- nowJson.put("proportion", 0); // 较昨日增加比例
|
|
|
- }
|
|
|
-
|
|
|
- Long photoClick = nowJson.getLong("photoClick");// 今日封面展示
|
|
|
- Long yesterdayPhotoClick = yesterdayJson.getLong("photoShow");// 昨日封面展示
|
|
|
- if (yesterdayPhotoClick != 0L) {
|
|
|
- double photoClickProportion = (photoClick.doubleValue() - yesterdayPhotoClick.doubleValue()) / yesterdayPhotoClick.doubleValue();
|
|
|
- nowJson.put("proportion", photoClickProportion); // 较昨日增加比例
|
|
|
- } else {
|
|
|
- nowJson.put("proportion", 0); // 较昨日增加比例
|
|
|
- }
|
|
|
-
|
|
|
- Long aClick = nowJson.getLong("aclick");// 今日封面展示
|
|
|
- Long yesterdayAClick = yesterdayJson.getLong("photoShow");// 昨日封面展示
|
|
|
- if (yesterdayAClick != 0L) {
|
|
|
- double aClickProportion = (aClick.doubleValue() - yesterdayAClick.doubleValue()) / yesterdayAClick.doubleValue();
|
|
|
- nowJson.put("proportion", aClickProportion); // 较昨日增加比例
|
|
|
- } else {
|
|
|
- nowJson.put("proportion", 0); // 较昨日增加比例
|
|
|
- }
|
|
|
- yesterdayJson.put("now", nowJson);
|
|
|
- }
|
|
|
+ Long photoShow = nowJson.getLong("photoShow");// 今日封面展示
|
|
|
+ Long yesterdayPhotoShow = yesterdayJson.getLong("photoShow");// 昨日封面展示
|
|
|
+ if (yesterdayPhotoShow != 0L) {
|
|
|
+ double showProportion = (photoShow.doubleValue() - yesterdayPhotoShow.doubleValue()) / yesterdayPhotoShow.doubleValue();
|
|
|
+ nowJson.put("showProportion", showProportion); // 较昨日增加比例
|
|
|
+ } else {
|
|
|
+ nowJson.put("showProportion", 0); // 较昨日增加比例
|
|
|
+ }
|
|
|
+
|
|
|
+ Long photoClick = nowJson.getLong("photoClick");// 今日封面展示
|
|
|
+ Long yesterdayPhotoClick = yesterdayJson.getLong("photoClick");// 昨日封面展示
|
|
|
+ if (yesterdayPhotoClick != 0L) {
|
|
|
+ double photoClickProportion = (photoClick.doubleValue() - yesterdayPhotoClick.doubleValue()) / yesterdayPhotoClick.doubleValue();
|
|
|
+ nowJson.put("photoClickProportion", photoClickProportion); // 较昨日增加比例
|
|
|
+ } else {
|
|
|
+ nowJson.put("photoClickProportion", 0); // 较昨日增加比例
|
|
|
+ }
|
|
|
|
|
|
+ Long aClick = nowJson.getLong("aclick");// 今日封面展示
|
|
|
+ Long yesterdayAClick = yesterdayJson.getLong("aclick");// 昨日封面展示
|
|
|
+ if (yesterdayAClick != 0L) {
|
|
|
+ double aClickProportion = (aClick.doubleValue() - yesterdayAClick.doubleValue()) / yesterdayAClick.doubleValue();
|
|
|
+ nowJson.put("aClickProportion", aClickProportion); // 较昨日增加比例
|
|
|
+ } else {
|
|
|
+ nowJson.put("aClickProportion", 0); // 较昨日增加比例
|
|
|
}
|
|
|
+ yesterdayJson.put("now", nowJson);
|
|
|
}
|
|
|
detail.add(yesterdayJson);
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
} else if (type == 2) { // 昨日明细
|
|
|
detail = reportMapper.selectReportDetail(anotherDay);
|
|
|
|
|
@@ -497,7 +497,7 @@ public class BytedanceReportServiceImpl implements IBytedanceReportService {
|
|
|
json.put("beComparedDate", beComparedDate);
|
|
|
|
|
|
if (comparedCost.compareTo(new BigDecimal(0)) != 0) {
|
|
|
- BigDecimal costProportion = (cost.subtract(comparedCost)).divide(comparedCost, BigDecimal.ROUND_HALF_UP);
|
|
|
+ BigDecimal costProportion = (cost.subtract(comparedCost)).divide(comparedCost, BigDecimal.ROUND_HALF_UP, 2);
|
|
|
json.put("costProportion", costProportion);
|
|
|
} else {
|
|
|
json.put("costProportion", 0);
|
|
@@ -535,6 +535,7 @@ public class BytedanceReportServiceImpl implements IBytedanceReportService {
|
|
|
e.printStackTrace();
|
|
|
|
|
|
}
|
|
|
+ System.err.println(detail);
|
|
|
return detail;
|
|
|
}
|
|
|
|
|
@@ -630,4 +631,5 @@ public class BytedanceReportServiceImpl implements IBytedanceReportService {
|
|
|
return reportList;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
}
|