Переглянути джерело

MOD:首日订单roi修复

cxyu 3 роки тому
батько
коміт
7c318309d7

+ 8 - 6
flink-ad-monitoring/src/main/java/flink/zanxiangnet/ad/monitoring/process/CostHourProcess.java

@@ -187,12 +187,14 @@ public class CostHourProcess extends KeyedProcessFunction<Long, AdStatOfHourDWD,
         //小时-总平均转化率
         costHourDM.setConversionsRateHour(hourDWD.getConversionsRateHour().doubleValue());
         //总首日下单roi
-        Double tmpFirstDayOrderRoiTotal = NumberUtil.divideForAd(hourDWD.getFirstDayOrderAmountTotal() , hourDWD.getCostTotal()).doubleValue();
+        Double tmpFirstDayOrderRoiTotal = NumberUtil.divideForAd(hourDWD.getFirstDayOrderAmountTotal(), hourDWD.getCostTotal()).doubleValue();
         costHourDM.setFirstDayOrderRoiTotal(tmpFirstDayOrderRoiTotal);
         //天-总首日下单roi
-        costHourDM.setFirstDayOrderRoiDay(0);
+        Double tmpFirstDayOrderRoiDay = NumberUtil.divideForAd(hourDWD.getFirstDayOrderAmountDay(), hourDWD.getCostDay()).doubleValue();
+        costHourDM.setFirstDayOrderRoiDay(tmpFirstDayOrderRoiDay);
         //小时-总首日下单roi
-        costHourDM.setFirstDayOrderRoiHour(0);
+        Double tmpFirstDayOrderRoiHour = NumberUtil.divideForAd(hourDWD.getFirstDayOrderAmountHour(), hourDWD.getCostHour()).doubleValue();
+        costHourDM.setFirstDayOrderRoiHour(tmpFirstDayOrderRoiHour);
         //总首日下单金额
         costHourDM.setFirstDayOrderAmountTotal(hourDWD.getFirstDayOrderAmountTotal());
         //天-总首日下单金额
@@ -248,11 +250,11 @@ public class CostHourProcess extends KeyedProcessFunction<Long, AdStatOfHourDWD,
         //小时-总公众号关注量
         costHourDM.setFromFollowUvHour(hourDWD.getOfficialAccountFollowCountHour());
         //总平均公众号关注成本
-        costHourDM.setFromFollowCostTotal(hourDWD.getOfficialAccountFollowCountTotal() == 0 ? 0 : hourDWD.getCostTotal() / hourDWD.getOfficialAccountFollowCountTotal());
+        costHourDM.setFromFollowCostTotal(NumberUtil.divideForAd(hourDWD.getCostTotal(), hourDWD.getOfficialAccountFollowCountTotal()).longValue());
         //天-总平均公众号关注成本
-        costHourDM.setFromFollowCostDay(hourDWD.getOfficialAccountFollowCountDay() == 0 ? 0 : hourDWD.getCostDay() / hourDWD.getOfficialAccountFollowCountDay());
+        costHourDM.setFromFollowCostDay(NumberUtil.divideForAd(hourDWD.getCostDay(), hourDWD.getOfficialAccountFollowCountDay()).longValue());
         //小时-总平均公众号关注成本
-        costHourDM.setFromFollowCostHour(hourDWD.getOfficialAccountFollowCountHour() == 0 ? 0 : hourDWD.getCostHour() / hourDWD.getOfficialAccountFollowCountHour());
+        costHourDM.setFromFollowCostHour(NumberUtil.divideForAd(hourDWD.getCostHour(), hourDWD.getOfficialAccountFollowCountHour()).longValue());
         //总平均公众号关注率
         costHourDM.setFromFollowRateTotal(hourDWD.getOfficialAccountFollowRateAll().doubleValue());
         //天-总平均公众号关注率

+ 4 - 2
flink-ad-monitoring/src/main/java/flink/zanxiangnet/ad/monitoring/process/CostMinuteProcess.java

@@ -2,6 +2,7 @@ package flink.zanxiangnet.ad.monitoring.process;
 
 import flink.zanxiangnet.ad.monitoring.pojo.entity.*;
 import flink.zanxiangnet.ad.monitoring.util.DateUtil;
+import flink.zanxiangnet.ad.monitoring.util.NumberUtil;
 import org.apache.flink.api.common.state.MapState;
 import org.apache.flink.api.common.state.MapStateDescriptor;
 import org.apache.flink.api.common.typeinfo.Types;
@@ -143,7 +144,8 @@ public class CostMinuteProcess extends KeyedProcessFunction<Long, AdStatOfMinute
         //分钟-总平均转化率
         costMinuterDM.conversionsRateMinute = adStatOfMinuteDWD.getConversionsRateMinute().doubleValue();
         //分钟-总首日下单roi
-        costMinuterDM.firstDayOrderRoiMinute = 0;
+        Double tmpFirstDayOrderRoiMinute = NumberUtil.divideForAd(adStatOfMinuteDWD.getFirstDayOrderAmountMinute(), adStatOfMinuteDWD.getCostMinute()).doubleValue();
+        costMinuterDM.firstDayOrderRoiMinute = tmpFirstDayOrderRoiMinute;
         //分钟-总首日下单金额
         costMinuterDM.firstDayOrderAmountMinute = adStatOfMinuteDWD.getFirstDayOrderAmountMinute();
         //分钟-总首日下单量
@@ -163,7 +165,7 @@ public class CostMinuteProcess extends KeyedProcessFunction<Long, AdStatOfMinute
         //分钟-总公众号关注量
         costMinuterDM.fromFollowUvMinute = adStatOfMinuteDWD.getOfficialAccountFollowCountMinute();
         //分钟-总平均公众号关注成本
-        costMinuterDM.fromFollowCostMinute = adStatOfMinuteDWD.getOfficialAccountFollowCountMinute() == 0 ? 0 : adStatOfMinuteDWD.getCostMinute() / adStatOfMinuteDWD.getOfficialAccountFollowCountMinute();
+        costMinuterDM.fromFollowCostMinute = NumberUtil.divideForAd(adStatOfMinuteDWD.getCostMinute() , adStatOfMinuteDWD.getOfficialAccountFollowCountMinute()).longValue();
         //分钟-总平均公众号关注率
         costMinuterDM.fromFollowRateMinute = adStatOfMinuteDWD.getOfficialAccountFollowRateMinute().doubleValue();
         //分钟-总注册数-----下面都有问题