|
@@ -1755,58 +1755,32 @@ public class AdStatOfMinuteDWD {
|
|
result.setCostHour(statODS.getCost());
|
|
result.setCostHour(statODS.getCost());
|
|
result.setCompensationAmountHour(statODS.getCompensationAmount());
|
|
result.setCompensationAmountHour(statODS.getCompensationAmount());
|
|
result.setViewCountHour(statODS.getViewCount());
|
|
result.setViewCountHour(statODS.getViewCount());
|
|
- result.setThousandDisplayPriceHour(statODS.getThousandDisplayPrice());
|
|
|
|
result.setAvgViewPerUserHour(statODS.getAvgViewPerUser());
|
|
result.setAvgViewPerUserHour(statODS.getAvgViewPerUser());
|
|
result.setValidClickCountHour(statODS.getValidClickCount());
|
|
result.setValidClickCountHour(statODS.getValidClickCount());
|
|
- result.setCtrHour(statODS.getCtr());
|
|
|
|
- result.setCpcHour(statODS.getCpc());
|
|
|
|
result.setValuableClickCountHour(statODS.getValuableClickCount());
|
|
result.setValuableClickCountHour(statODS.getValuableClickCount());
|
|
- result.setValuableClickRateHour(statODS.getValuableClickRate());
|
|
|
|
- result.setValuableClickCostHour(statODS.getValuableClickCost());
|
|
|
|
result.setConversionsCountHour(statODS.getConversionsCount());
|
|
result.setConversionsCountHour(statODS.getConversionsCount());
|
|
- result.setConversionsCostHour(statODS.getConversionsCost());
|
|
|
|
- result.setConversionsRateHour(statODS.getConversionsRate());
|
|
|
|
result.setDeepConversionsCountHour(statODS.getDeepConversionsCount());
|
|
result.setDeepConversionsCountHour(statODS.getDeepConversionsCount());
|
|
- result.setDeepConversionsCostHour(statODS.getDeepConversionsCost());
|
|
|
|
- result.setDeepConversionsRateHour(statODS.getDeepConversionsRate());
|
|
|
|
result.setOrderCountHour(statODS.getOrderCount());
|
|
result.setOrderCountHour(statODS.getOrderCount());
|
|
result.setFirstDayOrderCountHour(statODS.getFirstDayOrderCount());
|
|
result.setFirstDayOrderCountHour(statODS.getFirstDayOrderCount());
|
|
- result.setWebOrderCostHour(statODS.getWebOrderCost());
|
|
|
|
- result.setOrderRateHour(statODS.getOrderRate());
|
|
|
|
result.setOrderAmountHour(statODS.getOrderAmount());
|
|
result.setOrderAmountHour(statODS.getOrderAmount());
|
|
result.setFirstDayOrderAmountHour(statODS.getFirstDayOrderAmount());
|
|
result.setFirstDayOrderAmountHour(statODS.getFirstDayOrderAmount());
|
|
- result.setOrderUnitPriceHour(statODS.getOrderUnitPrice());
|
|
|
|
- result.setOrderRoiHour(statODS.getOrderRoi());
|
|
|
|
result.setSignInCountHour(statODS.getSignInCount());
|
|
result.setSignInCountHour(statODS.getSignInCount());
|
|
result.setScanFollowCountHour(statODS.getScanFollowCount());
|
|
result.setScanFollowCountHour(statODS.getScanFollowCount());
|
|
result.setWechatAppRegisterUvHour(statODS.getWechatAppRegisterUv());
|
|
result.setWechatAppRegisterUvHour(statODS.getWechatAppRegisterUv());
|
|
- result.setWechatMinigameRegisterCostHour(statODS.getWechatMinigameRegisterCost());
|
|
|
|
- result.setWechatMinigameRegisterRateHour(statODS.getWechatMinigameRegisterRate());
|
|
|
|
- result.setWechatMinigameArpuHour(statODS.getWechatMinigameArpu());
|
|
|
|
result.setWechatMinigameRetentionCountHour(statODS.getWechatMinigameRetentionCount());
|
|
result.setWechatMinigameRetentionCountHour(statODS.getWechatMinigameRetentionCount());
|
|
result.setWechatMinigameCheckoutCountHour(statODS.getWechatMinigameCheckoutCount());
|
|
result.setWechatMinigameCheckoutCountHour(statODS.getWechatMinigameCheckoutCount());
|
|
result.setWechatMinigameCheckoutAmountHour(statODS.getWechatMinigameCheckoutAmount());
|
|
result.setWechatMinigameCheckoutAmountHour(statODS.getWechatMinigameCheckoutAmount());
|
|
result.setOfficialAccountFollowCountHour(statODS.getOfficialAccountFollowCount());
|
|
result.setOfficialAccountFollowCountHour(statODS.getOfficialAccountFollowCount());
|
|
- result.setOfficialAccountFollowRateHour(statODS.getOfficialAccountFollowRate());
|
|
|
|
result.setOfficialAccountRegisterUserCountHour(statODS.getOfficialAccountRegisterUserCount());
|
|
result.setOfficialAccountRegisterUserCountHour(statODS.getOfficialAccountRegisterUserCount());
|
|
- result.setOfficialAccountRegisterRateHour(statODS.getOfficialAccountRegisterRate());
|
|
|
|
- result.setOfficialAccountRegisterCostHour(statODS.getOfficialAccountRegisterCost());
|
|
|
|
result.setOfficialAccountRegisterAmountHour(statODS.getOfficialAccountRegisterAmount());
|
|
result.setOfficialAccountRegisterAmountHour(statODS.getOfficialAccountRegisterAmount());
|
|
- result.setOfficialAccountRegisterRoiHour(statODS.getOfficialAccountRegisterRoi());
|
|
|
|
result.setOfficialAccountApplyCountHour(statODS.getOfficialAccountApplyCount());
|
|
result.setOfficialAccountApplyCountHour(statODS.getOfficialAccountApplyCount());
|
|
result.setOfficialAccountApplyUserCountHour(statODS.getOfficialAccountApplyUserCount());
|
|
result.setOfficialAccountApplyUserCountHour(statODS.getOfficialAccountApplyUserCount());
|
|
- result.setOfficialAccountApplyRateHour(statODS.getOfficialAccountApplyRate());
|
|
|
|
- result.setOfficialAccountApplyCostHour(statODS.getOfficialAccountApplyCost());
|
|
|
|
result.setOfficialAccountApplyAmountHour(statODS.getOfficialAccountApplyAmount());
|
|
result.setOfficialAccountApplyAmountHour(statODS.getOfficialAccountApplyAmount());
|
|
- result.setOfficialAccountApplyRoiHour(statODS.getOfficialAccountApplyRoi());
|
|
|
|
result.setOfficialAccountOrderCountHour(statODS.getOfficialAccountOrderCount());
|
|
result.setOfficialAccountOrderCountHour(statODS.getOfficialAccountOrderCount());
|
|
result.setOfficialAccountFirstDayOrderCountHour(statODS.getOfficialAccountFirstDayOrderCount());
|
|
result.setOfficialAccountFirstDayOrderCountHour(statODS.getOfficialAccountFirstDayOrderCount());
|
|
result.setOfficialAccountOrderUserCountHour(statODS.getOfficialAccountOrderUserCount());
|
|
result.setOfficialAccountOrderUserCountHour(statODS.getOfficialAccountOrderUserCount());
|
|
- result.setOfficialAccountOrderRateHour(statODS.getOfficialAccountOrderRate());
|
|
|
|
- result.setOfficialAccountOrderCostHour(statODS.getOfficialAccountOrderCost());
|
|
|
|
result.setOfficialAccountOrderAmountHour(statODS.getOfficialAccountOrderAmount());
|
|
result.setOfficialAccountOrderAmountHour(statODS.getOfficialAccountOrderAmount());
|
|
result.setOfficialAccountFirstDayOrderAmountHour(statODS.getOfficialAccountFirstDayOrderAmount());
|
|
result.setOfficialAccountFirstDayOrderAmountHour(statODS.getOfficialAccountFirstDayOrderAmount());
|
|
- result.setOfficialAccountOrderRoiHour(statODS.getOfficialAccountOrderRoi());
|
|
|
|
result.setOfficialAccountConsultCountHour(statODS.getOfficialAccountConsultCount());
|
|
result.setOfficialAccountConsultCountHour(statODS.getOfficialAccountConsultCount());
|
|
result.setOfficialAccountReaderCountHour(statODS.getOfficialAccountReaderCount());
|
|
result.setOfficialAccountReaderCountHour(statODS.getOfficialAccountReaderCount());
|
|
result.setOfficialAccountCreditApplyUserCountHour(statODS.getOfficialAccountCreditApplyUserCount());
|
|
result.setOfficialAccountCreditApplyUserCountHour(statODS.getOfficialAccountCreditApplyUserCount());
|
|
@@ -1814,6 +1788,60 @@ public class AdStatOfMinuteDWD {
|
|
result.setForwardCountHour(statODS.getForwardCount());
|
|
result.setForwardCountHour(statODS.getForwardCount());
|
|
result.setForwardUserCountHour(statODS.getForwardUserCount());
|
|
result.setForwardUserCountHour(statODS.getForwardUserCount());
|
|
result.setNoInterestCountHour(statODS.getNoInterestCount());
|
|
result.setNoInterestCountHour(statODS.getNoInterestCount());
|
|
|
|
+
|
|
|
|
+ // 总消耗 / 总曝光
|
|
|
|
+ result.setThousandDisplayPriceHour(result.getViewCountHour() == 0 ? 0 : NumberUtil.divideForAd(result.getCostHour(), result.getViewCountHour()).multiply(new BigDecimal(1000)).longValue());
|
|
|
|
+ // 广告点击次数 / 广告曝光次数
|
|
|
|
+ result.setCtrHour(result.getViewCountHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getValidClickCountHour(), result.getViewCountHour()));
|
|
|
|
+ // 广告花费/广告点击次数
|
|
|
|
+ result.setCpcHour(result.getValidClickCountHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getCostHour(), result.getValidClickCountHour()));
|
|
|
|
+ // 广告可转化点击次数/广告曝光次数
|
|
|
|
+ result.setValuableClickRateHour(result.getViewCountHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getValuableClickCountHour(), result.getViewCountHour()));
|
|
|
|
+ // 广告花费/可转化点击次数
|
|
|
|
+ result.setValuableClickCostHour(result.getValuableClickCountHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getCostHour(), result.getValuableClickCountHour()));
|
|
|
|
+ // 广告花费/转化目标量
|
|
|
|
+ result.setConversionsCostHour(result.getConversionsCountHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getCostHour(), result.getConversionsCountHour()));
|
|
|
|
+ // 公众号:转化目标量/点击次数。
|
|
|
|
+ result.setConversionsRateHour(result.getValidClickCountHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getConversionsCountHour(), result.getValidClickCountHour()));
|
|
|
|
+ // 广告花费/深度转化目标量
|
|
|
|
+ result.setDeepConversionsCostHour(result.getDeepConversionsCountHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getCostHour(), result.getDeepConversionsCountHour()));
|
|
|
|
+ // 深度转化目标量/可转化点击次数
|
|
|
|
+ result.setDeepConversionsRateHour(result.getValuableClickCountHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getDeepConversionsCountHour(), result.getValuableClickCountHour()));
|
|
|
|
+ // 广告花费/下单量
|
|
|
|
+ result.setWebOrderCostHour(result.getOrderCountHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getCostHour(), result.getOrderCountHour()));
|
|
|
|
+ // 下单量/点击次数
|
|
|
|
+ result.setOrderRateHour(result.getValidClickCountHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getOrderCountHour(), result.getValidClickCountHour()));
|
|
|
|
+ // 下单金额/下单量
|
|
|
|
+ result.setOrderUnitPriceHour(result.getOrderCountHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getOrderAmountHour(), result.getOrderCountHour()));
|
|
|
|
+ // 下单金额/广告花费
|
|
|
|
+ result.setOrderRoiHour(result.getCostHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getOrderAmountHour(), result.getCostHour()));
|
|
|
|
+ // 广告消耗 / 小游戏注册人数
|
|
|
|
+ result.setWechatMinigameRegisterCostHour(result.getWechatAppRegisterUvHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getCostHour(), result.getWechatAppRegisterUvHour()));
|
|
|
|
+ // 小游戏注册人数 / 广告点击次数
|
|
|
|
+ result.setWechatMinigameRegisterRateHour(result.getValidClickCountHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getWechatAppRegisterUvHour(), result.getValidClickCountHour()));
|
|
|
|
+ // 总收益 / 总人数
|
|
|
|
+ result.setWechatMinigameArpuHour(result.getWechatAppRegisterUvHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getOrderAmountHour(), result.getWechatAppRegisterUvHour()));
|
|
|
|
+ // 关注次数 / 点击次数
|
|
|
|
+ result.setOfficialAccountFollowRateHour(result.getValidClickCountHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getOfficialAccountFollowCountHour(), result.getValidClickCountHour()));
|
|
|
|
+ // 公众号内注册人数 / 公众号关注次数
|
|
|
|
+ result.setOfficialAccountRegisterRateHour(result.getOfficialAccountFollowCountHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getOfficialAccountRegisterUserCountHour(), result.getOfficialAccountFollowCountHour()));
|
|
|
|
+ // 广告消耗 / 广告注册人数
|
|
|
|
+ result.setOfficialAccountRegisterCostHour(result.getOfficialAccountRegisterUserCountHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getCostHour(), result.getOfficialAccountRegisterUserCountHour()));
|
|
|
|
+ // 注册产生的订单金额累计/广告花费
|
|
|
|
+ result.setOfficialAccountRegisterRoiHour(result.getCostHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getOfficialAccountRegisterAmountHour(), result.getCostHour()));
|
|
|
|
+ // 公众号内填单的独立用户数/公众号关注次数
|
|
|
|
+ result.setOfficialAccountApplyRateHour(result.getOfficialAccountFollowCountHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getOfficialAccountApplyUserCountHour(), result.getOfficialAccountFollowCountHour()));
|
|
|
|
+ // 广告花费/广告产生的填单行为数量
|
|
|
|
+ result.setOfficialAccountApplyCostHour(result.getOfficialAccountApplyUserCountHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getCostHour(), result.getOfficialAccountApplyUserCountHour()));
|
|
|
|
+ // 填单产生的订单金额累计/广告花费
|
|
|
|
+ result.setOfficialAccountApplyRoiHour(result.getCostHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getOfficialAccountApplyAmountHour(), result.getCostHour()));
|
|
|
|
+ // 公众号内下单独立用户数(UV)/公众号关注次数
|
|
|
|
+ result.setOfficialAccountOrderRateHour(result.getOfficialAccountFollowCountHour() == 0 ? BigDecimal.ZERO : NumberUtil.divideForAd(result.getOfficialAccountOrderUserCountHour(), result.getOfficialAccountFollowCountHour()));
|
|
|
|
+ // 广告花费/广告产生的下单行为数量
|
|
|
|
+ result.setOfficialAccountOrderCostHour(result.getOfficialAccountOrderCountHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getCostHour(), result.getOfficialAccountOrderCountHour()));
|
|
|
|
+ // 下单产生的订单金额累计/广告花费
|
|
|
|
+ result.setOfficialAccountOrderRoiHour(result.getCostHour() == 0 ? 0 : NumberUtil.divideForMoney(result.getOfficialAccountOrderAmountHour(), result.getCostHour()));
|
|
|
|
+
|
|
// 聚合当天的数据
|
|
// 聚合当天的数据
|
|
for (AdDataOfMinuteODS todayODS : todayODSList) {
|
|
for (AdDataOfMinuteODS todayODS : todayODSList) {
|
|
result.setCostDeviationRateDay(result.getCostDeviationRateDay().add(todayODS.getCostDeviationRate()));
|
|
result.setCostDeviationRateDay(result.getCostDeviationRateDay().add(todayODS.getCostDeviationRate()));
|