Kaynağa Gözat

解决空指针异常

yumeng 6 yıl önce
ebeveyn
işleme
9d3461aa35

+ 36 - 37
module-report/src/main/java/cn/com/ctop/bytedance/service/impl/BytedanceReportServiceImpl.java

@@ -5,7 +5,6 @@ import cn.com.ctop.bytedance.mapper.BytedanceAdvertiserDailyReportMapper;
 import cn.com.ctop.bytedance.mapper.BytedanceCampaignDailyReportMapper;
 import cn.com.ctop.bytedance.mapper.BytedanceReportMapper;
 import cn.com.ctop.bytedance.service.IBytedanceReportService;
-import cn.com.ctop.bytedance.vo.ReportVO;
 import cn.com.ctop.common.module.entity.UserAllocation;
 import cn.com.ctop.common.module.mapper.UserAllocationMapper;
 import cn.com.ctop.common.module.utils.Check;
@@ -209,48 +208,48 @@ public class BytedanceReportServiceImpl implements IBytedanceReportService {
             String anotherDay = DateUtils.getAnotherDay("yyyy-MM-dd", nowDate, -1); // 当前日期-1
             if (type == 1) { // 今日总消耗
                 accountJson = reportMapper.selectDayReport(nowDate);
+                if (!Check.isNull(accountJson)) {
+                    JSONObject yesterJson = reportMapper.selectDayReport(anotherDay);
+                    if (!Check.isNull(yesterJson)) {
+                        BigDecimal cost = accountJson.getBigDecimal("cost"); // 今日消耗
+                        BigDecimal yesterCost = yesterJson.getBigDecimal("cost");// 昨日消耗
+                        BigDecimal compareBigDecima = new BigDecimal(0);
+                        if (yesterCost.compareTo(compareBigDecima) != 0) {
+                            BigDecimal costProportion = (cost.subtract(yesterCost)).divide(yesterCost, BigDecimal.ROUND_HALF_UP);
+                            accountJson.put("costProportion", costProportion); // 较昨日增加比例
+                        } else {
+                            accountJson.put("costProportion", 0); // 较昨日增加比例
+                        }
 
-                JSONObject yesterJson = reportMapper.selectDayReport(anotherDay);
-                if (!Check.isNull(yesterJson)) {
-                    BigDecimal cost = accountJson.getBigDecimal("cost"); // 今日消耗
-                    BigDecimal yesterCost = yesterJson.getBigDecimal("cost");// 昨日消耗
-                    BigDecimal compareBigDecima = new BigDecimal(0);
-                    if (yesterCost.compareTo(compareBigDecima) != 0) {
-                        BigDecimal costProportion = (cost.subtract(yesterCost)).divide(yesterCost, BigDecimal.ROUND_HALF_UP);
-                        accountJson.put("costProportion", costProportion); // 较昨日增加比例
-                    } else {
-                        accountJson.put("costProportion", 0); // 较昨日增加比例
-                    }
+                        Long photoShow = accountJson.getLong("photoShow");// 今日封面展示
+                        Long yesterPhotoShow = yesterJson.getLong("photoShow");// 昨日封面展示
+                        if (yesterPhotoShow != 0L) {
+                            double showProportion = (photoShow.doubleValue() - yesterPhotoShow.doubleValue()) / yesterPhotoShow.doubleValue();
+                            accountJson.put("showProportion", showProportion); // 较昨日增加比例
+                        } else {
+                            accountJson.put("showProportion", 0); // 较昨日增加比例
+                        }
 
-                    Long photoShow = accountJson.getLong("photoShow");// 今日封面展示
-                    Long yesterPhotoShow = yesterJson.getLong("photoShow");// 昨日封面展示
-                    if (yesterPhotoShow != 0L) {
-                        double showProportion = (photoShow.doubleValue() - yesterPhotoShow.doubleValue()) / yesterPhotoShow.doubleValue();
-                        accountJson.put("showProportion", showProportion); // 较昨日增加比例
-                    } else {
-                        accountJson.put("showProportion", 0); // 较昨日增加比例
-                    }
+                        Long photoClick = accountJson.getLong("photoClick");// 今日封面展示
+                        Long yesterphotoClick = yesterJson.getLong("photoShow");// 昨日封面展示
+                        if (yesterPhotoShow != 0L) {
+                            double photoClickProportion = (photoClick.doubleValue() - yesterphotoClick.doubleValue()) / yesterphotoClick.doubleValue();
+                            accountJson.put("photoClickProportion", photoClickProportion); // 较昨日增加比例
+                        } else {
+                            accountJson.put("photoClickProportion", 0); // 较昨日增加比例
+                        }
 
-                    Long photoClick = accountJson.getLong("photoClick");// 今日封面展示
-                    Long yesterphotoClick = yesterJson.getLong("photoShow");// 昨日封面展示
-                    if (yesterPhotoShow != 0L) {
-                        double photoClickProportion = (photoClick.doubleValue() - yesterphotoClick.doubleValue()) / yesterphotoClick.doubleValue();
-                        accountJson.put("photoClickProportion", photoClickProportion); // 较昨日增加比例
-                    } else {
-                        accountJson.put("photoClickProportion", 0); // 较昨日增加比例
-                    }
+                        Long aclick = accountJson.getLong("aclick");// 今日封面展示
+                        Long yesterAclick = yesterJson.getLong("photoShow");// 昨日封面展示
+                        if (yesterPhotoShow != 0L) {
+                            double aClickProportion = (aclick.doubleValue() - yesterAclick.doubleValue()) / yesterAclick.doubleValue();
+                            accountJson.put("aClickProportion", aClickProportion); // 较昨日增加比例
+                        } else {
+                            accountJson.put("aClickProportion", 0); // 较昨日增加比例
+                        }
 
-                    Long aclick = accountJson.getLong("aclick");// 今日封面展示
-                    Long yesterAclick = yesterJson.getLong("photoShow");// 昨日封面展示
-                    if (yesterPhotoShow != 0L) {
-                        double aClickProportion = (aclick.doubleValue() - yesterAclick.doubleValue()) / yesterAclick.doubleValue();
-                        accountJson.put("aClickProportion", aClickProportion); // 较昨日增加比例
-                    } else {
-                        accountJson.put("aClickProportion", 0); // 较昨日增加比例
                     }
-
                 }
-
             } else if (type == 2) { // 昨日总消耗
                 accountJson = reportMapper.selectDayReport(anotherDay);