Browse Source

定时任务改为手写sql

zhouzeyu@c-top.com.cn 4 years ago
parent
commit
30667d0811
100 changed files with 7601 additions and 12088 deletions
  1. 0 1114
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/ByteDanceAdvertiseDailyReport.java
  2. 0 1122
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/ByteDanceAdvertiseHourlyReport.java
  3. 0 532
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/ByteDanceAdvertisePlan.java
  4. 0 1144
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/ByteDanceAdvertisePlanDailyReport.java
  5. 0 1151
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/ByteDanceAdvertisePlanHourlyReport.java
  6. 105 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAdGet.java
  7. 329 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAdReportDaily.java
  8. 332 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAdReportHourly.java
  9. 321 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAdvertiserReportDaily.java
  10. 323 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAdvertiserReportHourly.java
  11. 65 232
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAgentReportDaily.java
  12. 115 252
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAgentReportHourly.java
  13. 19 77
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAudiencePackageGet.java
  14. 29 83
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCampaignGet.java
  15. 317 987
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCampaignReportDaily.java
  16. 320 995
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCampaignReportHourly.java
  17. 30 108
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCreativeGet.java
  18. 320 1002
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCreativeReportDaily.java
  19. 323 1009
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCreativeReportHourly.java
  20. 23 90
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceFileImageGet.java
  21. 34 122
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceFileVideoGet.java
  22. 354 1112
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceMaterialReportDaily.java
  23. 0 17
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ByteDanceAdvertiseDailyMapper.java
  24. 0 15
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ByteDanceAdvertiseHourlyMapper.java
  25. 0 17
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ByteDanceAdvertisePlanDailyMapper.java
  26. 1 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ByteDanceAdvertisePlanHourlyMapper.java
  27. 0 15
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ByteDanceAdvertisePlanMapper.java
  28. 15 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAdGetMapper.java
  29. 15 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAdReportDailyMapper.java
  30. 14 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAdReportHourlyMapper.java
  31. 14 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAdvertiserReportDailyMapper.java
  32. 13 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAdvertiserReportHourlyMapper.java
  33. 7 11
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAgentReportDailyMapper.java
  34. 12 12
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAgentReportHourlyMapper.java
  35. 10 12
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAudiencePackageGetMapper.java
  36. 11 12
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCampaignGetMapper.java
  37. 8 11
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCampaignReportDailyMapper.java
  38. 7 11
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCampaignReportHourlyMapper.java
  39. 8 11
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCreativeGetMapper.java
  40. 8 11
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCreativeReportDailyMapper.java
  41. 8 11
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCreativeReportHourlyMapper.java
  42. 8 11
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceFileImageGetMapper.java
  43. 8 11
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceFileVideoGetMapper.java
  44. 8 11
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceMaterialReportDailyMapper.java
  45. 0 48
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/DataMapper.java
  46. 98 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAdGetMapper.xml
  47. 337 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAdReportDailyMapper.xml
  48. 364 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAdReportHourlyMapper.xml
  49. 357 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAdvertiserReportDailyMapper.xml
  50. 358 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAdvertiserReportHourlyMapper.xml
  51. 82 3
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAgentReportDailyMapper.xml
  52. 136 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAgentReportHourlyMapper.xml
  53. 30 3
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAudiencePackageGetMapper.xml
  54. 42 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCampaignGetMapper.xml
  55. 358 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCampaignReportDailyMapper.xml
  56. 329 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCampaignReportHourlyMapper.xml
  57. 44 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCreativeGetMapper.xml
  58. 363 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCreativeReportDailyMapper.xml
  59. 365 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCreativeReportHourlyMapper.xml
  60. 35 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceFileImageGetMapper.xml
  61. 45 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceFileVideoGetMapper.xml
  62. 400 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceMaterialReportDailyMapper.xml
  63. 0 107
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/DataMapper.xml
  64. 0 19
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IByteDanceAdvertisePlanService.java
  65. 0 12
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IByteDanceAdvertiserDailyService.java
  66. 0 12
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IByteDanceAdvertiserHourlyService.java
  67. 0 14
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IByteDanceAdvertiserPlanDailyService.java
  68. 0 14
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IByteDanceAdvertiserPlanHourlyService.java
  69. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceAgentReportDailyService.java
  70. 2 4
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceAgentReportHourlyService.java
  71. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceAudiencePackageGetService.java
  72. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCampaignGetService.java
  73. 4 5
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCampaignReportDailyService.java
  74. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCampaignReportHourlyService.java
  75. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCreativeGetService.java
  76. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCreativeReportDailyService.java
  77. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCreativeReportHourlyService.java
  78. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceFileImageGetService.java
  79. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceFileVideoGetService.java
  80. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceMaterialReportDailyService.java
  81. 171 174
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/ByteDanceAdvertiserDataServiceImpl.java
  82. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceAgentReportDailyServiceImpl.java
  83. 1 1
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceAgentReportHourlyServiceImpl.java
  84. 15 20
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceAudiencePackageGetServiceImpl.java
  85. 11 19
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCampaignGetServiceImpl.java
  86. 12 19
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCampaignReportDailyServiceImpl.java
  87. 11 19
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCampaignReportHourlyServiceImpl.java
  88. 11 20
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCreativeGetServiceImpl.java
  89. 11 20
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCreativeReportDailyServiceImpl.java
  90. 11 23
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCreativeReportHourlyServiceImpl.java
  91. 16 25
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceFileImageGetServiceImpl.java
  92. 19 27
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceFileVideoGetServiceImpl.java
  93. 16 28
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceMaterialReportDailyServiceImpl.java
  94. 0 21
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/IByteDanceAdvertiseDailyServiceImpl.java
  95. 0 20
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/IByteDanceAdvertiseHourlyServiceImpl.java
  96. 0 15
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/IByteDanceAdvertisePlanDailyServiceImpl.java
  97. 0 15
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/IByteDanceAdvertisePlanHourlyServiceImpl.java
  98. 0 15
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/IByteDanceAdvertisePlanServiceImpl.java
  99. 2 2
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/handler/BytedanceAgentLoadJob.java
  100. 0 0
      job-bytedance/src/main/java/cn/com/ctop/job/bytedance/handler/BytedanceCampaignLoadJob.java

File diff suppressed because it is too large
+ 0 - 1114
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/ByteDanceAdvertiseDailyReport.java


File diff suppressed because it is too large
+ 0 - 1122
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/ByteDanceAdvertiseHourlyReport.java


+ 0 - 532
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/ByteDanceAdvertisePlan.java

@@ -1,532 +0,0 @@
-package cn.com.ctop.job.bytedance.data.entity;
-
-import cn.com.ctop.job.bytedance.data.annotation.Dict;
-import cn.com.ctop.job.bytedance.data.constant.CtopAdConstant;
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import io.swagger.annotations.ApiModel;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.experimental.Accessors;
-
-import java.math.BigDecimal;
-import java.util.Date;
-
-/**
- * 今日头条广告计划信息
- *
- * @author jeecg-boot
- * @version V1.0
- * @date 2019-07-22
- */
-@Data
-@TableName("bytedance_ad_get")
-@EqualsAndHashCode(callSuper = false)
-@Accessors(chain = true)
-@ApiModel(value = "bytedance_ad_get对象", description = "今日头条广告计划信息")
-public class ByteDanceAdvertisePlan {
-    @TableId
-    private Long id;
-
-    @Dict(dicCode = "account_id", dictTable = "ctop_user_allocation", dicText = "auth_name")
-    private String accountId;
-
-    // 计划名称
-    private String name;
-
-    @TableField(exist = false)
-    private Object names;
-
-    @TableField(exist = false)
-    private String landingType;
-
-    @Dict(dicCode = "id", dictTable = "ctop_bytedance_campaign", dicText = "name")
-    private Long campaignId;
-
-    private String operation;
-
-    private String unionVideoType;
-
-    // 上次修改时间戳(用于更新时提交,服务端判断是否基于最新信息修改)
-    private String planModifyTime;
-
-    // 投放范围
-    private String deliveryRange;
-
-    // 计划上次修改时间
-    private String adModifyTime;
-
-    // 计划创建时间
-    private String adCreateTime;
-
-    // 广告预算类型
-    private String budgetMode;
-
-    // 广告预算
-    private BigDecimal budget;
-
-    // 广告计划投放状态
-    private String toutiaoStatus;
-
-    //true:投放中 false:暂停
-    private Boolean planStatus;
-
-    // 广告计划操作状态
-    private String optStatus;
-
-    // 广告投放起始时间
-    private String startTime;
-
-    // 广告投放结束时间
-    private String endTime;
-
-    // 广告出价
-    private BigDecimal bid;
-
-    // 广告出价类型
-    private String pricing;
-
-    // 广告投放时间类型
-    private String scheduleType;
-
-    // 广告投放时段
-    private String scheduleTime;
-
-    // 广告投放速度类型
-    private String flowControlMode;
-
-    // 应用直达链接
-    private String openUrl;
-
-    // 应用下载方式
-    private String downloadType;
-
-    // 应用下载方式
-    private String downloadUrl;
-
-    // 广告落地页链接
-    private String externalUrl;
-
-    // 广告应用下载包名
-    private String toutiaoPackage;
-
-    // 广告应用下载类型
-    private String appType;
-
-    // 广告计划审核不通过原因
-    private String auditRejectReason;
-
-    // ocpc广告转化出价
-    private BigDecimal cpaBid;
-
-    // 深度优化出价
-    private BigDecimal deepCpaBid;
-
-    private String deepBidType;
-
-    private Integer cpaSkipFirstPhrase;
-
-    // 转化类型广告的转化工具id
-    private Long convertId;
-
-    // 过滤已转化用户类型字段
-    private String hideIfConverted;
-
-    // 过滤已安装,当推广目标为安卓应用下载时可填
-    private Integer hideIfExists;
-
-    private String convertedTimeDuration;
-
-
-    // audience
-    private String audience;
-
-    private String modifyTime;
-
-    private Date createTime;
-
-    private Date updateTime;
-
-    private BigDecimal lubanRoiGoal;
-
-    private BigDecimal roiGoal;
-    /**
-     * 受众公共参数
-     */
-    // 受众性别
-    private String gender;
-    // 受众平台
-    @TableField(exist = false)
-    private Object platform;
-    @TableField(exist = false)
-    private Object retargetingTags;
-    @TableField(exist = false)
-    private Object retargetingTagsExclude;
-    @TableField(exist = false)
-    private Object age;
-    @TableField(exist = false)
-    private Object carrier;
-    @TableField(exist = false)
-    private Object ac;
-    @TableField(exist = false)
-    private Object deviceBrand;
-    @TableField(exist = false)
-    private Object articleCategory;
-    @TableField(exist = false)
-    private Object activateType;
-    @TableField(exist = false)
-    private Object city;
-    @TableField(exist = false)
-    private Object businessIds;
-    @TableField(exist = false)
-    private String locationType;
-    @TableField(exist = false)
-    private Object superiorPopularityType;
-    @TableField(exist = false)
-    private Object flowPackage;
-    @TableField(exist = false)
-    private Object excludeFlowPackage;
-    @TableField(exist = false)
-    private Object deviceType;
-    @TableField(exist = false)
-    private Object autoExtendEnabled;
-    @TableField(exist = false)
-    private Object launchPrice;
-    @TableField(exist = false)
-    private Object interestActionMode;
-    @TableField(exist = false)
-    private Object actionScene;
-    @TableField(exist = false)
-    private Object actionDays;
-    @TableField(exist = false)
-    private Object actionCategories;
-    @TableField(exist = false)
-    private Object actionWords;
-    @TableField(exist = false)
-    private Object interestCategories;
-    @TableField(exist = false)
-    private Object interestWords;
-    @TableField(exist = false)
-    private Object geolocation;
-    @TableField(exist = false)
-    private String externalAction;
-    @TableField(exist = false)
-    private String useOpenUrl;
-
-    public ByteDanceAdvertisePlan(JSONObject dataObject, String accountId) {
-        this.id = dataObject.getLong("id");
-        this.accountId = accountId;
-        String name = dataObject.getString("name");
-        if (null != name && !"".equals(name.trim())) {
-            this.name = name;
-        }
-        JSONObject audience = dataObject.getJSONObject("audience");
-        if (null != audience) {
-            this.audience = audience.toJSONString();
-            JSONArray platform = audience.getJSONArray("platform");
-            if (null != platform && platform.size() > 0) {
-                String plat = "";
-                for (int i = 0; i < platform.size(); i++) {
-                    String platformStr = platform.getString(i);
-                    if ("IOS".equals(platformStr)) {
-                        plat += "ios,";
-                    } else {
-                        plat += "安卓,";
-                    }
-                }
-                this.platform = plat.substring(0, plat.length() - 1);
-            }
-            String gender = audience.getString("gender");
-            if (null != gender) {
-                if (CtopAdConstant.BYTEDANCE_GENDER_TYPE_NONE.equals(gender)) {
-                    this.gender = "不限";
-                } else if (CtopAdConstant.BYTEDANCE_GENDER_TYPE_GENDER_MALE.equals(gender)) {
-                    this.gender = "男";
-                } else {
-                    this.gender = "女";
-                }
-            }
-        }
-        this.createTime = new Date();
-        this.updateTime = new Date();
-        Long advertiserId = dataObject.getLong("advertiser_id");
-
-        if (null != advertiserId) {
-            this.accountId = advertiserId + "";
-        }
-        Long campaignId = dataObject.getLong("campaign_id");
-        if (null != campaignId) {
-            this.campaignId = campaignId;
-        }
-
-        String budgetMode = dataObject.getString("budget_mode");
-        if (null != budgetMode && !"".equals(budgetMode.trim())) {
-            this.budgetMode = budgetMode;
-        }
-        String modifyTime = dataObject.getString("modify_time");
-        if (null != modifyTime && !"".equals(modifyTime.trim())) {
-            this.modifyTime = modifyTime;
-        }
-        String openUrl = dataObject.getString("open_url");
-        if (null != openUrl && !"".equals(openUrl.trim())) {
-            this.openUrl = openUrl;
-        }
-
-        String adCreateTime = dataObject.getString("ad_create_time");
-        if (null != adCreateTime && !"".equals(adCreateTime.trim())) {
-            this.adCreateTime = adCreateTime;
-        }
-
-        String adModifyTime = dataObject.getString("ad_modify_time");
-        if (null != adModifyTime && !"".equals(adModifyTime.trim())) {
-            this.adModifyTime = adModifyTime;
-        }
-
-        String auditRejectReason = dataObject.getString("audit_reject_reason");
-        if (null != auditRejectReason && !"".equals(auditRejectReason.trim())) {
-            this.auditRejectReason = auditRejectReason;
-        }
-
-        String pricing = dataObject.getString("pricing");
-        if (null != pricing && !"".equals(pricing.trim())) {
-            this.pricing = pricing;
-        }
-
-
-        Integer hideIfExists = dataObject.getInteger("hide_if_exists");
-        if (null != hideIfExists) {
-            this.hideIfExists = hideIfExists;
-        }
-
-        String appType = dataObject.getString("app_type");
-        if (null != appType && !"".equals(appType.trim())) {
-            this.appType = appType;
-        }
-
-        String flowControlMode = dataObject.getString("flow_control_mode");
-        if (null != flowControlMode && !"".equals(flowControlMode.trim())) {
-            this.flowControlMode = flowControlMode;
-        }
-
-
-        BigDecimal cpaBid = dataObject.getBigDecimal("cpa_bid");
-        if (null != cpaBid) {
-            this.cpaBid = cpaBid;
-        }
-
-        String startTime = dataObject.getString("start_time");
-        if (null != startTime && !"".equals(startTime.trim())) {
-            this.startTime = startTime;
-        }
-
-        String optStatus = dataObject.getString("opt_status");
-        if (null != optStatus && !"".equals(optStatus.trim())) {
-            this.optStatus = optStatus;
-        }
-
-        String endTime = dataObject.getString("end_time");
-        if (null != endTime && !"".equals(endTime.trim())) {
-            this.endTime = endTime;
-        }
-
-        String status = dataObject.getString("status");
-        if (null != status && !"".equals(status.trim())) {
-            this.toutiaoStatus = status;
-        }
-
-        Long convertId = dataObject.getLong("convert_id");
-        if (null != convertId) {
-            this.convertId = convertId;
-        }
-
-        BigDecimal bid = dataObject.getBigDecimal("bid");
-        if (null != bid) {
-            this.bid = bid;
-        }
-
-        String hideIfConverted = dataObject.getString("hide_if_converted");
-        if (null != hideIfConverted && !"".equals(hideIfConverted.trim())) {
-            this.hideIfConverted = hideIfConverted;
-        }
-
-        String toutiaoPackage = dataObject.getString("package");
-        if (null != toutiaoPackage && !"".equals(toutiaoPackage.trim())) {
-            this.toutiaoPackage = toutiaoPackage;
-        }
-
-        String deliveryRange = dataObject.getString("delivery_range");
-        if (null != deliveryRange && !"".equals(deliveryRange.trim())) {
-            this.deliveryRange = deliveryRange;
-        }
-
-        BigDecimal budget = dataObject.getBigDecimal("budget");
-        if (null != budget) {
-            this.budget = budget;
-        }
-
-        String scheduleType = dataObject.getString("schedule_type");
-        if (null != scheduleType && !"".equals(scheduleType.trim())) {
-            this.scheduleType = scheduleType;
-        }
-
-        String scheduleTime = dataObject.getString("schedule_time");
-        if (null != scheduleTime && !"".equals(scheduleTime.trim())) {
-            this.scheduleTime = scheduleTime;
-        }
-
-        String downloadType = dataObject.getString("download_type");
-        if (null != downloadType && !"".equals(downloadType.trim())) {
-            this.downloadType = downloadType;
-        }
-
-        String downloadUrl = dataObject.getString("download_url");
-        if (null != downloadUrl && !"".equals(downloadUrl.trim())) {
-            this.downloadUrl = downloadUrl;
-        }
-
-        String externalUrl = dataObject.getString("external_url");
-        if (null != externalUrl && !"".equals(externalUrl.trim())) {
-            this.externalUrl = externalUrl;
-        }
-    }
-
-    public ByteDanceAdvertisePlan(String advertiserId, Long adId, JSONObject params) {
-        this.id = adId;
-        this.accountId = advertiserId;
-        String name = params.getString("name");
-        if (null != name && !"".equals(name.trim())) {
-            this.name = name;
-        }
-
-        Long campaignId = params.getLong("campaign_id");
-        if (null != campaignId) {
-            this.campaignId = campaignId;
-        }
-
-        String budgetMode = params.getString("budget_mode");
-        if (null != budgetMode && !"".equals(budgetMode.trim())) {
-            this.budgetMode = budgetMode;
-        }
-
-        String openUrl = params.getString("open_url");
-        if (null != openUrl && !"".equals(openUrl.trim())) {
-            this.openUrl = openUrl;
-        }
-
-        String adCreateTime = params.getString("ad_create_time");
-        if (null != adCreateTime && !"".equals(adCreateTime.trim())) {
-            this.adCreateTime = adCreateTime;
-        }
-
-        String adModifyTime = params.getString("ad_modify_time");
-        if (null != adModifyTime && !"".equals(adModifyTime.trim())) {
-            this.adModifyTime = adModifyTime;
-        }
-
-        String auditRejectReason = params.getString("audit_reject_reason");
-        if (null != auditRejectReason && !"".equals(auditRejectReason.trim())) {
-            this.auditRejectReason = auditRejectReason;
-        }
-
-        String pricing = params.getString("pricing");
-        if (null != pricing && !"".equals(pricing.trim())) {
-            this.pricing = pricing;
-        }
-
-        Integer hideIfExists = params.getInteger("hide_if_exists");
-        if (null != hideIfExists) {
-            this.hideIfExists = hideIfExists;
-        }
-
-        String appType = params.getString("app_type");
-        if (null != appType && !"".equals(appType.trim())) {
-            this.appType = appType;
-        }
-
-        String flowControlMode = params.getString("flow_control_mode");
-        if (null != flowControlMode && !"".equals(flowControlMode.trim())) {
-            this.flowControlMode = flowControlMode;
-        }
-
-        BigDecimal cpaBid = params.getBigDecimal("cpa_bid");
-        if (null != cpaBid) {
-            this.cpaBid = cpaBid;
-        }
-
-        String startTime = params.getString("start_time");
-        if (null != startTime && !"".equals(startTime.trim())) {
-            this.startTime = startTime;
-        }
-
-        String optStatus = params.getString("opt_status");
-        if (null != optStatus && !"".equals(optStatus.trim())) {
-            this.optStatus = optStatus;
-        }
-
-        String endTime = params.getString("end_time");
-        if (null != endTime && !"".equals(endTime.trim())) {
-            this.endTime = endTime;
-        }
-
-        String status = params.getString("status");
-        if (null != status && !"".equals(status.trim())) {
-            this.toutiaoStatus = status;
-        }
-
-        Long convertId = params.getLong("convert_id");
-        if (null != convertId) {
-            this.convertId = convertId;
-        }
-
-        BigDecimal bid = params.getBigDecimal("bid");
-        if (null != bid) {
-            this.bid = bid;
-        }
-
-        String hideIfConverted = params.getString("hide_if_converted");
-        if (null != hideIfConverted && !"".equals(hideIfConverted.trim())) {
-            this.hideIfConverted = hideIfConverted;
-        }
-
-        String toutiaoPackage = params.getString("package");
-        if (null != toutiaoPackage && !"".equals(toutiaoPackage.trim())) {
-            this.toutiaoPackage = toutiaoPackage;
-        }
-
-        String deliveryRange = params.getString("delivery_range");
-        if (null != deliveryRange && !"".equals(deliveryRange.trim())) {
-            this.deliveryRange = deliveryRange;
-        }
-
-        BigDecimal budget = params.getBigDecimal("budget");
-        if (null != budget) {
-            this.budget = budget;
-        }
-
-        String scheduleType = params.getString("schedule_type");
-        if (null != scheduleType && !"".equals(scheduleType.trim())) {
-            this.scheduleType = scheduleType;
-        }
-
-        String scheduleTime = params.getString("schedule_time");
-        if (null != scheduleTime && !"".equals(scheduleTime.trim())) {
-            this.scheduleTime = scheduleTime;
-        }
-
-        String downloadType = params.getString("download_type");
-        if (null != downloadType && !"".equals(downloadType.trim())) {
-            this.downloadType = downloadType;
-        }
-
-        String externalUrl = params.getString("external_url");
-        if (null != externalUrl && !"".equals(externalUrl.trim())) {
-            this.externalUrl = externalUrl;
-        }
-    }
-
-    public ByteDanceAdvertisePlan() {
-    }
-}

File diff suppressed because it is too large
+ 0 - 1144
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/ByteDanceAdvertisePlanDailyReport.java


File diff suppressed because it is too large
+ 0 - 1151
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/ByteDanceAdvertisePlanHourlyReport.java


+ 105 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAdGet.java

@@ -0,0 +1,105 @@
+package cn.com.ctop.job.bytedance.data.entity;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class BytedanceAdGet {
+    private Long id;
+
+    private Long accountId;
+
+    private String name;
+
+    private Long campaignId;
+
+    private String operation;
+
+    private String planModifyTime;
+
+    private String deliveryRange;
+
+    private String unionVideoType;
+
+    private String deepBidType;
+
+    private BigDecimal deepCpaBid;
+
+    private String adModifyTime;
+
+    private String adCreateTime;
+
+    private String budgetMode;
+
+    private BigDecimal budget;
+
+    private String toutiaoStatus;
+
+    private String optStatus;
+
+    private String startTime;
+
+    private String endTime;
+
+    private BigDecimal bid;
+
+    private String pricing;
+
+    private String scheduleType;
+
+    private String scheduleTime;
+
+    private String flowControlMode;
+
+    private String downloadType;
+
+    private String externalUrl;
+
+    private String appType;
+
+    private String auditRejectReason;
+
+    private BigDecimal cpaBid;
+
+    private Integer cpaSkipFirstPhrase;
+
+    private Long convertId;
+
+    private String hideIfConverted;
+
+    private Integer hideIfExists;
+
+    private String modifyTime;
+
+    private String gender;
+
+    private String platform;
+
+    private Date createTime;
+
+    private Date updateTime;
+
+    private Integer planStatus;
+
+    private String convertedTimeDuration;
+
+    private BigDecimal lubanRoiGoal;
+
+    private BigDecimal roiGoal;
+
+    private String inventoryType;
+
+    private Long audiencePackageId;
+
+    private String openUrl;
+
+    private String toutiaoPackage;
+
+    private String audience;
+
+    private String downloadUrl;
+
+
+}

+ 329 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAdReportDaily.java

@@ -0,0 +1,329 @@
+package cn.com.ctop.job.bytedance.data.entity;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class BytedanceAdReportDaily {
+    private Long advertiserId;
+
+    private Long campaignId;
+
+    private Long adId;
+
+    private String statDatetime;
+
+    private String campaignName;
+
+    private String adName;
+
+    private BigDecimal cost;
+
+    private Long show;
+
+    private BigDecimal avgShowCost;
+
+    private Long click;
+
+    private BigDecimal avgClickCost;
+
+    private BigDecimal ctr;
+
+    private Long convert;
+
+    private BigDecimal convertCost;
+
+    private BigDecimal convertRate;
+
+    private Long deepConvert;
+
+    private BigDecimal deepConvertCost;
+
+    private BigDecimal deepConvertRate;
+
+    private Long attributionConvert;
+
+    private BigDecimal attributionConvertCost;
+
+    private Long attributionDeepConvert;
+
+    private BigDecimal attributionDeepConvertCost;
+
+    private Long downloadStart;
+
+    private BigDecimal downloadStartCost;
+
+    private BigDecimal downloadStartRate;
+
+    private Long downloadFinish;
+
+    private BigDecimal downloadFinishCost;
+
+    private BigDecimal downloadFinishRate;
+
+    private Long clickInstall;
+
+    private Long installFinish;
+
+    private BigDecimal installFinishCost;
+
+    private BigDecimal installFinishRate;
+
+    private Long active;
+
+    private BigDecimal activeCost;
+
+    private BigDecimal activeRate;
+
+    private BigDecimal register;
+
+    private BigDecimal activeRegisterCost;
+
+    private Float activeRegisterRate;
+
+    private Long nextDayOpen;
+
+    private BigDecimal nextDayOpenCost;
+
+    private BigDecimal nextDayOpenRate;
+
+    private Long attributionNextDayOpenCnt;
+
+    private BigDecimal attributionNextDayOpenCost;
+
+    private BigDecimal attributionNextDayOpenRate;
+
+    private Long gameAddiction;
+
+    private BigDecimal gameAddictionCost;
+
+    private BigDecimal gameAddictionRate;
+
+    private Long payCount;
+
+    private BigDecimal activePayCost;
+
+    private BigDecimal activePayRate;
+
+    private Long loanCompletion;
+
+    private BigDecimal loanCompletionCost;
+
+    private BigDecimal loanCompletionRate;
+
+    private Long preLoanCredit;
+
+    private BigDecimal preLoanCreditCost;
+
+    private Long loanCredit;
+
+    private BigDecimal loanCreditCost;
+
+    private BigDecimal loanCreditRate;
+
+    private Long inAppUv;
+
+    private Long inAppDetailUv;
+
+    private Long inAppCart;
+
+    private Long inAppPay;
+
+    private Long inAppOrder;
+
+    private Long attributionGamePay7dCount;
+
+    private BigDecimal attributionGamePay7dCost;
+
+    private Long attributionActivePay7dPerCount;
+
+    private BigDecimal gamePayCost;
+
+    private Long gamePayCount;
+
+    private Long phone;
+
+    private Long form;
+
+    private Long mapSearch;
+
+    private Long button;
+
+    private Long view;
+
+    private Long download;
+
+    private Long qq;
+
+    private Long lottery;
+
+    private Long vote;
+
+    private Long message;
+
+    private Long redirect;
+
+    private Long shopping;
+
+    private Long consult;
+
+    private Long wechat;
+
+    private Long phoneConfirm;
+
+    private Long phoneConnect;
+
+    private Long consultEffective;
+
+    private Long coupon;
+
+    private Long couponSinglePage;
+
+    private Long redirectToShop;
+
+    private Long poiCollect;
+
+    private Long poiAddressClick;
+
+    private Long lubanOrderCnt;
+
+    private BigDecimal lubanOrderStatAmount;
+
+    private BigDecimal lubanOrderRoi;
+
+    private Long lubanLiveEnterCnt;
+
+    private Long liveWatchOneMinuteCount;
+
+    private Long lubanLiveFollowCnt;
+
+    private Long liveFansClubJoinCnt;
+
+    private Long lubanLiveCommentCnt;
+
+    private Long lubanLiveShareCnt;
+
+    private Long lubanLiveGiftCnt;
+
+    private BigDecimal lubanLiveGiftAmount;
+
+    private Long lubanLiveSlidecartClickCnt;
+
+    private Long lubanLiveClickProductCnt;
+
+    private Long lubanLivePayOrderCount;
+
+    private BigDecimal lubanLivePayOrderStatCost;
+
+    private Long liveComponentClickCount;
+
+    private BigDecimal liveComponentClickCost;
+
+    private BigDecimal liveComponentClickRate;
+
+    private Long wechatLoginCount;
+
+    private Long attributionWechatLogin30dCount;
+
+    private BigDecimal wechatLoginCost;
+
+    private BigDecimal attributionWechatLogin30dCost;
+
+    private Long wechatFirstPayCount;
+
+    private Long attributionWechatFirstPay30dCount;
+
+    private BigDecimal wechatFirstPayCost;
+
+    private BigDecimal attributionWechatFirstPay30dCost;
+
+    private BigDecimal wechatFirstPayRate;
+
+    private BigDecimal attributionWechatFirstPay30dRate;
+
+    private BigDecimal wechatPayAmount;
+
+    private BigDecimal attributionWechatPay30dAmount;
+
+    private BigDecimal attributionWechatPay30dRoi;
+
+    private Long phoneEffective;
+
+    private Long totalPlay;
+
+    private Long validPlay;
+
+    private BigDecimal validPlayCost;
+
+    private BigDecimal validPlayRate;
+
+    private Long play25FeedBreak;
+
+    private Long play50FeedBreak;
+
+    private Long play75FeedBreak;
+
+    private Long play100FeedBreak;
+
+    private BigDecimal averagePlayTimePerPlay;
+
+    private BigDecimal playOverRate;
+
+    private BigDecimal wifiPlayRate;
+
+    private Long wifiPlay;
+
+    private Long playDurationSum;
+
+    private Long advancedCreativePhoneClick;
+
+    private Long advancedCreativeCounselClick;
+
+    private Long advancedCreativeFormClick;
+
+    private Long advancedCreativeCouponAddition;
+
+    private Long advancedCreativeFormSubmit;
+
+    private Long cardShow;
+
+    private Long share;
+
+    private Long comment;
+
+    private Long like;
+
+    private Long follow;
+
+    private Long homeVisited;
+
+    private Long iesChallengeClick;
+
+    private Long iesMusicClick;
+
+    private Long locationClick;
+
+    private Long messageAction;
+
+    private Long clickLandingPage;
+
+    private Long clickShopwindow;
+
+    private Long clickWebsite;
+
+    private Long clickDownload;
+
+    private Long clickCallDy;
+
+    private Long submitCertificationCount;
+
+    private Long approvalCount;
+
+    private Long firstRentalOrderCount;
+
+    private Long firstOrderCount;
+
+    private Long commuteFirstPayCount;
+
+}

+ 332 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAdReportHourly.java

@@ -0,0 +1,332 @@
+package cn.com.ctop.job.bytedance.data.entity;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class BytedanceAdReportHourly {
+    private Long advertiserId;
+
+    private Long campaignId;
+
+    private Long adId;
+
+    private String statDatetime;
+
+    private Integer hour;
+
+    private String campaignName;
+
+    private String adName;
+
+    private BigDecimal cost;
+
+    private Long show;
+
+    private BigDecimal avgShowCost;
+
+    private Long click;
+
+    private BigDecimal avgClickCost;
+
+    private BigDecimal ctr;
+
+    private Long convert;
+
+    private BigDecimal convertCost;
+
+    private BigDecimal convertRate;
+
+    private Long deepConvert;
+
+    private BigDecimal deepConvertCost;
+
+    private BigDecimal deepConvertRate;
+
+    private Long attributionConvert;
+
+    private BigDecimal attributionConvertCost;
+
+    private Long attributionDeepConvert;
+
+    private BigDecimal attributionDeepConvertCost;
+
+    private Long downloadStart;
+
+    private BigDecimal downloadStartCost;
+
+    private BigDecimal downloadStartRate;
+
+    private Long downloadFinish;
+
+    private BigDecimal downloadFinishCost;
+
+    private BigDecimal downloadFinishRate;
+
+    private Long clickInstall;
+
+    private Long installFinish;
+
+    private BigDecimal installFinishCost;
+
+    private BigDecimal installFinishRate;
+
+    private Long active;
+
+    private BigDecimal activeCost;
+
+    private BigDecimal activeRate;
+
+    private BigDecimal register;
+
+    private BigDecimal activeRegisterCost;
+
+    private Float activeRegisterRate;
+
+    private Long nextDayOpen;
+
+    private BigDecimal nextDayOpenCost;
+
+    private BigDecimal nextDayOpenRate;
+
+    private Long attributionNextDayOpenCnt;
+
+    private BigDecimal attributionNextDayOpenCost;
+
+    private BigDecimal attributionNextDayOpenRate;
+
+    private Long gameAddiction;
+
+    private BigDecimal gameAddictionCost;
+
+    private BigDecimal gameAddictionRate;
+
+    private Long payCount;
+
+    private BigDecimal activePayCost;
+
+    private BigDecimal activePayRate;
+
+    private Long loanCompletion;
+
+    private BigDecimal loanCompletionCost;
+
+    private BigDecimal loanCompletionRate;
+
+    private Long preLoanCredit;
+
+    private BigDecimal preLoanCreditCost;
+
+    private Long loanCredit;
+
+    private BigDecimal loanCreditCost;
+
+    private BigDecimal loanCreditRate;
+
+    private Long inAppUv;
+
+    private Long inAppDetailUv;
+
+    private Long inAppCart;
+
+    private Long inAppPay;
+
+    private Long inAppOrder;
+
+    private Long attributionGamePay7dCount;
+
+    private BigDecimal attributionGamePay7dCost;
+
+    private Long attributionActivePay7dPerCount;
+
+    private BigDecimal gamePayCost;
+
+    private Long gamePayCount;
+
+    private Long phone;
+
+    private Long form;
+
+    private Long mapSearch;
+
+    private Long button;
+
+    private Long view;
+
+    private Long download;
+
+    private Long qq;
+
+    private Long lottery;
+
+    private Long vote;
+
+    private Long message;
+
+    private Long redirect;
+
+    private Long shopping;
+
+    private Long consult;
+
+    private Long wechat;
+
+    private Long phoneConfirm;
+
+    private Long phoneConnect;
+
+    private Long consultEffective;
+
+    private Long coupon;
+
+    private Long couponSinglePage;
+
+    private Long redirectToShop;
+
+    private Long poiCollect;
+
+    private Long poiAddressClick;
+
+    private Long lubanOrderCnt;
+
+    private BigDecimal lubanOrderStatAmount;
+
+    private BigDecimal lubanOrderRoi;
+
+    private Long lubanLiveEnterCnt;
+
+    private Long liveWatchOneMinuteCount;
+
+    private Long lubanLiveFollowCnt;
+
+    private Long liveFansClubJoinCnt;
+
+    private Long lubanLiveCommentCnt;
+
+    private Long lubanLiveShareCnt;
+
+    private Long lubanLiveGiftCnt;
+
+    private BigDecimal lubanLiveGiftAmount;
+
+    private Long lubanLiveSlidecartClickCnt;
+
+    private Long lubanLiveClickProductCnt;
+
+    private Long lubanLivePayOrderCount;
+
+    private BigDecimal lubanLivePayOrderStatCost;
+
+    private Long liveComponentClickCount;
+
+    private BigDecimal liveComponentClickCost;
+
+    private BigDecimal liveComponentClickRate;
+
+    private Long wechatLoginCount;
+
+    private Long attributionWechatLogin30dCount;
+
+    private BigDecimal wechatLoginCost;
+
+    private BigDecimal attributionWechatLogin30dCost;
+
+    private Long wechatFirstPayCount;
+
+    private Long attributionWechatFirstPay30dCount;
+
+    private BigDecimal wechatFirstPayCost;
+
+    private BigDecimal attributionWechatFirstPay30dCost;
+
+    private BigDecimal wechatFirstPayRate;
+
+    private BigDecimal attributionWechatFirstPay30dRate;
+
+    private BigDecimal wechatPayAmount;
+
+    private BigDecimal attributionWechatPay30dAmount;
+
+    private BigDecimal attributionWechatPay30dRoi;
+
+    private Long phoneEffective;
+
+    private Long totalPlay;
+
+    private Long validPlay;
+
+    private BigDecimal validPlayCost;
+
+    private BigDecimal validPlayRate;
+
+    private Long play25FeedBreak;
+
+    private Long play50FeedBreak;
+
+    private Long play75FeedBreak;
+
+    private Long play100FeedBreak;
+
+    private BigDecimal averagePlayTimePerPlay;
+
+    private BigDecimal playOverRate;
+
+    private BigDecimal wifiPlayRate;
+
+    private Long wifiPlay;
+
+    private Long playDurationSum;
+
+    private Long advancedCreativePhoneClick;
+
+    private Long advancedCreativeCounselClick;
+
+    private Long advancedCreativeFormClick;
+
+    private Long advancedCreativeCouponAddition;
+
+    private Long advancedCreativeFormSubmit;
+
+    private Long cardShow;
+
+    private Long share;
+
+    private Long comment;
+
+    private Long like;
+
+    private Long follow;
+
+    private Long homeVisited;
+
+    private Long iesChallengeClick;
+
+    private Long iesMusicClick;
+
+    private Long locationClick;
+
+    private Long messageAction;
+
+    private Long clickLandingPage;
+
+    private Long clickShopwindow;
+
+    private Long clickWebsite;
+
+    private Long clickDownload;
+
+    private Long clickCallDy;
+
+    private Long submitCertificationCount;
+
+    private Long approvalCount;
+
+    private Long firstRentalOrderCount;
+
+    private Long firstOrderCount;
+
+    private Long commuteFirstPayCount;
+
+
+}

+ 321 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAdvertiserReportDaily.java

@@ -0,0 +1,321 @@
+package cn.com.ctop.job.bytedance.data.entity;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class BytedanceAdvertiserReportDaily {
+    private Long advertiserId;
+
+    private String statDatetime;
+
+    private BigDecimal cost;
+
+    private Long show;
+
+    private BigDecimal avgShowCost;
+
+    private Long click;
+
+    private BigDecimal avgClickCost;
+
+    private BigDecimal ctr;
+
+    private Long convert;
+
+    private BigDecimal convertCost;
+
+    private BigDecimal convertRate;
+
+    private Long deepConvert;
+
+    private BigDecimal deepConvertCost;
+
+    private BigDecimal deepConvertRate;
+
+    private Long attributionConvert;
+
+    private BigDecimal attributionConvertCost;
+
+    private Long attributionDeepConvert;
+
+    private BigDecimal attributionDeepConvertCost;
+
+    private Long downloadStart;
+
+    private BigDecimal downloadStartCost;
+
+    private BigDecimal downloadStartRate;
+
+    private Long downloadFinish;
+
+    private BigDecimal downloadFinishCost;
+
+    private BigDecimal downloadFinishRate;
+
+    private Long clickInstall;
+
+    private Long installFinish;
+
+    private BigDecimal installFinishCost;
+
+    private BigDecimal installFinishRate;
+
+    private Long active;
+
+    private BigDecimal activeCost;
+
+    private BigDecimal activeRate;
+
+    private BigDecimal register;
+
+    private BigDecimal activeRegisterCost;
+
+    private Float activeRegisterRate;
+
+    private Long nextDayOpen;
+
+    private BigDecimal nextDayOpenCost;
+
+    private BigDecimal nextDayOpenRate;
+
+    private Long attributionNextDayOpenCnt;
+
+    private BigDecimal attributionNextDayOpenCost;
+
+    private BigDecimal attributionNextDayOpenRate;
+
+    private Long gameAddiction;
+
+    private BigDecimal gameAddictionCost;
+
+    private BigDecimal gameAddictionRate;
+
+    private Long payCount;
+
+    private BigDecimal activePayCost;
+
+    private BigDecimal activePayRate;
+
+    private Long loanCompletion;
+
+    private BigDecimal loanCompletionCost;
+
+    private BigDecimal loanCompletionRate;
+
+    private Long preLoanCredit;
+
+    private BigDecimal preLoanCreditCost;
+
+    private Long loanCredit;
+
+    private BigDecimal loanCreditCost;
+
+    private BigDecimal loanCreditRate;
+
+    private Long inAppUv;
+
+    private Long inAppDetailUv;
+
+    private Long inAppCart;
+
+    private Long inAppPay;
+
+    private Long inAppOrder;
+
+    private Long attributionGamePay7dCount;
+
+    private BigDecimal attributionGamePay7dCost;
+
+    private Long attributionActivePay7dPerCount;
+
+    private BigDecimal gamePayCost;
+
+    private Long gamePayCount;
+
+    private Long phone;
+
+    private Long form;
+
+    private Long mapSearch;
+
+    private Long button;
+
+    private Long view;
+
+    private Long download;
+
+    private Long qq;
+
+    private Long lottery;
+
+    private Long vote;
+
+    private Long message;
+
+    private Long redirect;
+
+    private Long shopping;
+
+    private Long consult;
+
+    private Long wechat;
+
+    private Long phoneConfirm;
+
+    private Long phoneConnect;
+
+    private Long consultEffective;
+
+    private Long coupon;
+
+    private Long couponSinglePage;
+
+    private Long redirectToShop;
+
+    private Long poiCollect;
+
+    private Long poiAddressClick;
+
+    private Long lubanOrderCnt;
+
+    private BigDecimal lubanOrderStatAmount;
+
+    private BigDecimal lubanOrderRoi;
+
+    private Long lubanLiveEnterCnt;
+
+    private Long liveWatchOneMinuteCount;
+
+    private Long lubanLiveFollowCnt;
+
+    private Long liveFansClubJoinCnt;
+
+    private Long lubanLiveCommentCnt;
+
+    private Long lubanLiveShareCnt;
+
+    private Long lubanLiveGiftCnt;
+
+    private BigDecimal lubanLiveGiftAmount;
+
+    private Long lubanLiveSlidecartClickCnt;
+
+    private Long lubanLiveClickProductCnt;
+
+    private Long lubanLivePayOrderCount;
+
+    private BigDecimal lubanLivePayOrderStatCost;
+
+    private Long liveComponentClickCount;
+
+    private BigDecimal liveComponentClickCost;
+
+    private BigDecimal liveComponentClickRate;
+
+    private Long wechatLoginCount;
+
+    private Long attributionWechatLogin30dCount;
+
+    private BigDecimal wechatLoginCost;
+
+    private BigDecimal attributionWechatLogin30dCost;
+
+    private Long wechatFirstPayCount;
+
+    private Long attributionWechatFirstPay30dCount;
+
+    private BigDecimal wechatFirstPayCost;
+
+    private BigDecimal attributionWechatFirstPay30dCost;
+
+    private BigDecimal wechatFirstPayRate;
+
+    private BigDecimal attributionWechatFirstPay30dRate;
+
+    private BigDecimal wechatPayAmount;
+
+    private BigDecimal attributionWechatPay30dAmount;
+
+    private BigDecimal attributionWechatPay30dRoi;
+
+    private Long phoneEffective;
+
+    private Long totalPlay;
+
+    private Long validPlay;
+
+    private BigDecimal validPlayCost;
+
+    private BigDecimal validPlayRate;
+
+    private Long play25FeedBreak;
+
+    private Long play50FeedBreak;
+
+    private Long play75FeedBreak;
+
+    private Long play100FeedBreak;
+
+    private BigDecimal averagePlayTimePerPlay;
+
+    private BigDecimal playOverRate;
+
+    private BigDecimal wifiPlayRate;
+
+    private Long wifiPlay;
+
+    private Long playDurationSum;
+
+    private Long advancedCreativePhoneClick;
+
+    private Long advancedCreativeCounselClick;
+
+    private Long advancedCreativeFormClick;
+
+    private Long advancedCreativeCouponAddition;
+
+    private Long advancedCreativeFormSubmit;
+
+    private Long cardShow;
+
+    private Long share;
+
+    private Long comment;
+
+    private Long like;
+
+    private Long follow;
+
+    private Long homeVisited;
+
+    private Long iesChallengeClick;
+
+    private Long iesMusicClick;
+
+    private Long locationClick;
+
+    private Long messageAction;
+
+    private Long clickLandingPage;
+
+    private Long clickShopwindow;
+
+    private Long clickWebsite;
+
+    private Long clickDownload;
+
+    private Long clickCallDy;
+
+    private Long submitCertificationCount;
+
+    private Long approvalCount;
+
+    private Long firstRentalOrderCount;
+
+    private Long firstOrderCount;
+
+    private Long commuteFirstPayCount;
+
+}

+ 323 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAdvertiserReportHourly.java

@@ -0,0 +1,323 @@
+package cn.com.ctop.job.bytedance.data.entity;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class BytedanceAdvertiserReportHourly {
+    private Long advertiserId;
+
+    private String statDatetime;
+
+    private Integer hour;
+
+    private BigDecimal cost;
+
+    private Long show;
+
+    private BigDecimal avgShowCost;
+
+    private Long click;
+
+    private BigDecimal avgClickCost;
+
+    private BigDecimal ctr;
+
+    private Long convert;
+
+    private BigDecimal convertCost;
+
+    private BigDecimal convertRate;
+
+    private Long deepConvert;
+
+    private BigDecimal deepConvertCost;
+
+    private BigDecimal deepConvertRate;
+
+    private Long attributionConvert;
+
+    private BigDecimal attributionConvertCost;
+
+    private Long attributionDeepConvert;
+
+    private BigDecimal attributionDeepConvertCost;
+
+    private Long downloadStart;
+
+    private BigDecimal downloadStartCost;
+
+    private BigDecimal downloadStartRate;
+
+    private Long downloadFinish;
+
+    private BigDecimal downloadFinishCost;
+
+    private BigDecimal downloadFinishRate;
+
+    private Long clickInstall;
+
+    private Long installFinish;
+
+    private BigDecimal installFinishCost;
+
+    private BigDecimal installFinishRate;
+
+    private Long active;
+
+    private BigDecimal activeCost;
+
+    private BigDecimal activeRate;
+
+    private BigDecimal register;
+
+    private BigDecimal activeRegisterCost;
+
+    private Float activeRegisterRate;
+
+    private Long nextDayOpen;
+
+    private BigDecimal nextDayOpenCost;
+
+    private BigDecimal nextDayOpenRate;
+
+    private Long attributionNextDayOpenCnt;
+
+    private BigDecimal attributionNextDayOpenCost;
+
+    private BigDecimal attributionNextDayOpenRate;
+
+    private Long gameAddiction;
+
+    private BigDecimal gameAddictionCost;
+
+    private BigDecimal gameAddictionRate;
+
+    private Long payCount;
+
+    private BigDecimal activePayCost;
+
+    private BigDecimal activePayRate;
+
+    private Long loanCompletion;
+
+    private BigDecimal loanCompletionCost;
+
+    private BigDecimal loanCompletionRate;
+
+    private Long preLoanCredit;
+
+    private BigDecimal preLoanCreditCost;
+
+    private Long loanCredit;
+
+    private BigDecimal loanCreditCost;
+
+    private BigDecimal loanCreditRate;
+
+    private Long inAppUv;
+
+    private Long inAppDetailUv;
+
+    private Long inAppCart;
+
+    private Long inAppPay;
+
+    private Long inAppOrder;
+
+    private Long attributionGamePay7dCount;
+
+    private BigDecimal attributionGamePay7dCost;
+
+    private Long attributionActivePay7dPerCount;
+
+    private BigDecimal gamePayCost;
+
+    private Long gamePayCount;
+
+    private Long phone;
+
+    private Long form;
+
+    private Long mapSearch;
+
+    private Long button;
+
+    private Long view;
+
+    private Long download;
+
+    private Long qq;
+
+    private Long lottery;
+
+    private Long vote;
+
+    private Long message;
+
+    private Long redirect;
+
+    private Long shopping;
+
+    private Long consult;
+
+    private Long wechat;
+
+    private Long phoneConfirm;
+
+    private Long phoneConnect;
+
+    private Long consultEffective;
+
+    private Long coupon;
+
+    private Long couponSinglePage;
+
+    private Long redirectToShop;
+
+    private Long poiCollect;
+
+    private Long poiAddressClick;
+
+    private Long lubanOrderCnt;
+
+    private BigDecimal lubanOrderStatAmount;
+
+    private BigDecimal lubanOrderRoi;
+
+    private Long lubanLiveEnterCnt;
+
+    private Long liveWatchOneMinuteCount;
+
+    private Long lubanLiveFollowCnt;
+
+    private Long liveFansClubJoinCnt;
+
+    private Long lubanLiveCommentCnt;
+
+    private Long lubanLiveShareCnt;
+
+    private Long lubanLiveGiftCnt;
+
+    private BigDecimal lubanLiveGiftAmount;
+
+    private Long lubanLiveSlidecartClickCnt;
+
+    private Long lubanLiveClickProductCnt;
+
+    private Long lubanLivePayOrderCount;
+
+    private BigDecimal lubanLivePayOrderStatCost;
+
+    private Long liveComponentClickCount;
+
+    private BigDecimal liveComponentClickCost;
+
+    private BigDecimal liveComponentClickRate;
+
+    private Long wechatLoginCount;
+
+    private Long attributionWechatLogin30dCount;
+
+    private BigDecimal wechatLoginCost;
+
+    private BigDecimal attributionWechatLogin30dCost;
+
+    private Long wechatFirstPayCount;
+
+    private Long attributionWechatFirstPay30dCount;
+
+    private BigDecimal wechatFirstPayCost;
+
+    private BigDecimal attributionWechatFirstPay30dCost;
+
+    private BigDecimal wechatFirstPayRate;
+
+    private BigDecimal attributionWechatFirstPay30dRate;
+
+    private BigDecimal wechatPayAmount;
+
+    private BigDecimal attributionWechatPay30dAmount;
+
+    private BigDecimal attributionWechatPay30dRoi;
+
+    private Long phoneEffective;
+
+    private Long totalPlay;
+
+    private Long validPlay;
+
+    private BigDecimal validPlayCost;
+
+    private BigDecimal validPlayRate;
+
+    private Long play25FeedBreak;
+
+    private Long play50FeedBreak;
+
+    private Long play75FeedBreak;
+
+    private Long play100FeedBreak;
+
+    private BigDecimal averagePlayTimePerPlay;
+
+    private BigDecimal playOverRate;
+
+    private BigDecimal wifiPlayRate;
+
+    private Long wifiPlay;
+
+    private Long playDurationSum;
+
+    private Long advancedCreativePhoneClick;
+
+    private Long advancedCreativeCounselClick;
+
+    private Long advancedCreativeFormClick;
+
+    private Long advancedCreativeCouponAddition;
+
+    private Long advancedCreativeFormSubmit;
+
+    private Long cardShow;
+
+    private Long share;
+
+    private Long comment;
+
+    private Long like;
+
+    private Long follow;
+
+    private Long homeVisited;
+
+    private Long iesChallengeClick;
+
+    private Long iesMusicClick;
+
+    private Long locationClick;
+
+    private Long messageAction;
+
+    private Long clickLandingPage;
+
+    private Long clickShopwindow;
+
+    private Long clickWebsite;
+
+    private Long clickDownload;
+
+    private Long clickCallDy;
+
+    private Long submitCertificationCount;
+
+    private Long approvalCount;
+
+    private Long firstRentalOrderCount;
+
+    private Long firstOrderCount;
+
+    private Long commuteFirstPayCount;
+
+}

+ 65 - 232
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAgentReportDaily.java

@@ -1,250 +1,83 @@
 package cn.com.ctop.job.bytedance.data.entity;
 
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableName;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.experimental.Accessors;
-import org.jeecgframework.poi.excel.annotation.Excel;
-
-
-/**
- * 代理商日报
- *
- * @author jeecg-boot
- * @version V1.0
- * @date 2021-10-21
- */
+
+import java.math.BigDecimal;
+
 @Data
-@TableName("bytedance_agent_report_daily")
-@EqualsAndHashCode(callSuper = false)
-@Accessors(chain = true)
-@ApiModel(value = "bytedance_agent_report_daily对象", description = "代理商日报")
 public class BytedanceAgentReportDaily {
+    private Long advertiserId;
 
-    /**
-     * 数据日期
-     */
-    @Excel(name = "数据日期            ", width = 15)
-    @ApiModelProperty(value = "数据日期            ")
-    private String statDatetime;
-    /**
-     * 代理商ID
-     */
-    @Excel(name = "代理商ID            ", width = 15)
-    @ApiModelProperty(value = "代理商ID            ")
     private Long agentId;
-    /**
-     * 代理商名称
-     */
-    @Excel(name = "代理商名称          ", width = 15)
-    @ApiModelProperty(value = "代理商名称          ")
+
+    private String statDatetime;
+
     private String agentName;
-    /**
-     * 广告主id
-     */
-    @Excel(name = "广告主id            ", width = 15)
-    @ApiModelProperty(value = "广告主id            ")
-    private Long advertiserId;
-    /**
-     * 广告主名称
-     */
-    @Excel(name = "广告主名称          ", width = 15)
-    @ApiModelProperty(value = "广告主名称          ")
+
     private String advertiserName;
-    /**
-     * 二级行业
-     */
-    @Excel(name = "二级行业            ", width = 15)
-    @ApiModelProperty(value = "二级行业            ")
+
     private String secondIndustry;
-    /**
-     * 一级行业
-     */
-    @Excel(name = "一级行业            ", width = 15)
-    @ApiModelProperty(value = "一级行业            ")
+
     private String firstIndustry;
-    /**
-     * 广告主账户类型
-     */
-    @Excel(name = "广告主账户类型      ", width = 15)
-    @ApiModelProperty(value = "广告主账户类型      ")
+
     private String accountSource;
-    /**
-     * 广告主账号的过审时间
-     */
-    @Excel(name = "广告主账号的过审时间", width = 15)
-    @ApiModelProperty(value = "广告主账号的过审时间")
+
     private String auditPassTime;
-    /**
-     * 广告主的账户状态
-     */
-    @Excel(name = "广告主的账户状态    ", width = 15)
-    @ApiModelProperty(value = "广告主的账户状态    ")
+
     private String accountStatus;
-    /**
-     * 广告主所属公司ID
-     */
-    @Excel(name = "广告主所属公司ID    ", width = 15)
-    @ApiModelProperty(value = "广告主所属公司ID    ")
-    private Integer companyId;
-    /**
-     * 广告主所属公司名称
-     */
-    @Excel(name = "广告主所属公司名称  ", width = 15)
-    @ApiModelProperty(value = "广告主所属公司名称  ")
+
+    private Long companyId;
+
     private String companyName;
-    /**
-     * 广告主账户的注册时间
-     */
-    @Excel(name = "广告主账户的注册时间", width = 15)
-    @ApiModelProperty(value = "广告主账户的注册时间")
+
     private String registerTime;
-    /**
-     * 总消耗
-     */
-    @Excel(name = "总消耗              ", width = 15)
-    @ApiModelProperty(value = "总消耗              ")
-    private java.math.BigDecimal cost;
-    /**
-     * 现金消耗
-     */
-    @Excel(name = "现金消耗            ", width = 15)
-    @ApiModelProperty(value = "现金消耗            ")
-    private java.math.BigDecimal cashCost;
-    /**
-     * 竞价消耗
-     */
-    @Excel(name = "竞价消耗            ", width = 15)
-    @ApiModelProperty(value = "竞价消耗            ")
-    private java.math.BigDecimal bidCost;
-    /**
-     * 品牌消耗
-     */
-    @Excel(name = "品牌消耗            ", width = 15)
-    @ApiModelProperty(value = "品牌消耗            ")
-    private java.math.BigDecimal brandCost;
-    /**
-     * 赠款消耗
-     */
-    @Excel(name = "赠款消耗            ", width = 15)
-    @ApiModelProperty(value = "赠款消耗            ")
-    private java.math.BigDecimal grantsCost;
-    /**
-     * CPC消耗
-     */
-    @Excel(name = "CPC消耗             ", width = 15)
-    @ApiModelProperty(value = "CPC消耗             ")
-    private java.math.BigDecimal cpcCost;
-    /**
-     * CPM消耗
-     */
-    @Excel(name = "CPM消耗             ", width = 15)
-    @ApiModelProperty(value = "CPM消耗             ")
-    private java.math.BigDecimal cpmCost;
-    /**
-     * oCPC消耗
-     */
-    @Excel(name = "oCPC消耗            ", width = 15)
-    @ApiModelProperty(value = "oCPC消耗            ")
-    private java.math.BigDecimal ocpcCost;
-    /**
-     * CPA消耗
-     */
-    @Excel(name = "CPA消耗             ", width = 15)
-    @ApiModelProperty(value = "CPA消耗             ")
-    private java.math.BigDecimal cpaCost;
-    /**
-     * oCPM消耗
-     */
-    @Excel(name = "oCPM消耗            ", width = 15)
-    @ApiModelProperty(value = "oCPM消耗            ")
-    private java.math.BigDecimal ocpmCost;
-    /**
-     * CPV消耗
-     */
-    @Excel(name = "CPV消耗             ", width = 15)
-    @ApiModelProperty(value = "CPV消耗             ")
-    private java.math.BigDecimal cpvCost;
-    /**
-     * CPT消耗
-     */
-    @Excel(name = "CPT消耗             ", width = 15)
-    @ApiModelProperty(value = "CPT消耗             ")
-    private java.math.BigDecimal cptCost;
-    /**
-     * GD消耗
-     */
-    @Excel(name = "GD消耗              ", width = 15)
-    @ApiModelProperty(value = "GD消耗              ")
-    private java.math.BigDecimal gdCost;
-    /**
-     * 展示量
-     */
-    @TableField(value = "`show`")
-    @Excel(name = "展示量              ", width = 15)
-    @ApiModelProperty(value = "展示量              ")
-    private Integer show;
-    /**
-     * 平均千次展示价格
-     */
-    @Excel(name = "平均千次展示价格    ", width = 15)
-    @ApiModelProperty(value = "平均千次展示价格    ")
+
+    private BigDecimal cost;
+
+    private BigDecimal cashCost;
+
+    private BigDecimal bidCost;
+
+    private BigDecimal brandCost;
+
+    private BigDecimal grantsCost;
+
+    private BigDecimal cpcCost;
+
+    private BigDecimal cpmCost;
+
+    private BigDecimal ocpcCost;
+
+    private BigDecimal cpaCost;
+
+    private BigDecimal ocpmCost;
+
+    private BigDecimal cpvCost;
+
+    private BigDecimal cptCost;
+
+    private BigDecimal gdCost;
+
+    private Long show;
+
     private String cpm;
-    /**
-     * 点击量
-     */
-    @Excel(name = "点击量              ", width = 15)
-    @ApiModelProperty(value = "点击量              ")
-    private Integer click;
-    /**
-     * 点击率
-     */
-    @Excel(name = "点击率              ", width = 15)
-    @ApiModelProperty(value = "点击率              ")
-    private java.math.BigDecimal ctr;
-    /**
-     * 平均点击价格
-     */
-    @Excel(name = "平均点击价格        ", width = 15)
-    @ApiModelProperty(value = "平均点击价格        ")
-    private java.math.BigDecimal cpc;
-    /**
-     * 转账总次数
-     */
-    @Excel(name = "转账总次数          ", width = 15)
-    @ApiModelProperty(value = "转账总次数          ")
-    private Integer transferCount;
-    /**
-     * 今日总消耗
-     */
-    @Excel(name = "今日总消耗          ", width = 15)
-    @ApiModelProperty(value = "今日总消耗          ")
-    private java.math.BigDecimal todayCost;
-    /**
-     * 转账金额
-     */
-    @Excel(name = "转账金额            ", width = 15)
-    @ApiModelProperty(value = "转账金额            ")
-    private java.math.BigDecimal transferAmount;
-    /**
-     * 历史总消耗
-     */
-    @Excel(name = "历史总消耗          ", width = 15)
-    @ApiModelProperty(value = "历史总消耗          ")
-    private java.math.BigDecimal historyCost;
-    /**
-     * 广告主开户天数
-     */
-    @Excel(name = "广告主开户天数      ", width = 15)
-    @ApiModelProperty(value = "广告主开户天数      ")
-    private java.math.BigDecimal registerDays;
-    /**
-     * 首消时间
-     */
-    @Excel(name = "首消时间            ", width = 15)
-    @ApiModelProperty(value = "首消时间            ")
+
+    private Long click;
+
+    private BigDecimal ctr;
+
+    private BigDecimal cpc;
+
+    private Long transferCount;
+
+    private BigDecimal todayCost;
+
+    private BigDecimal transferAmount;
+
+    private BigDecimal historyCost;
+
+    private BigDecimal registerDays;
+
     private String firstCostTime;
-}
+
+}

+ 115 - 252
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAgentReportHourly.java

@@ -1,257 +1,120 @@
 package cn.com.ctop.job.bytedance.data.entity;
 
-import java.io.Serializable;
-import java.util.Date;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import com.baomidou.mybatisplus.annotation.TableField;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.experimental.Accessors;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import org.springframework.format.annotation.DateTimeFormat;
-import org.jeecgframework.poi.excel.annotation.Excel;
-
-/**
- * 代理商日报
- * @author jeecg-boot
- * @date   2021-10-21
- * @version V1.0
- */
+
+import java.math.BigDecimal;
 @Data
-@TableName("bytedance_agent_report_hourly")
-@EqualsAndHashCode(callSuper = false)
-@Accessors(chain = true)
-@ApiModel(value="bytedance_agent_report_hourly对象", description="代理商日报")
 public class BytedanceAgentReportHourly {
-    
-	/**数据日期                         */
-	@Excel(name = "数据日期                         ", width = 15)
-    @ApiModelProperty(value = "数据日期                         ")
-	private String statDatetime;
-	/**hour*/
-	@TableField(value = "`hour`")
-	@Excel(name = "hour", width = 15)
-    @ApiModelProperty(value = "hour")
-	private java.lang.Integer hour;
-	/**代理商 ID                        */
-	@Excel(name = "代理商 ID                        ", width = 15)
-    @ApiModelProperty(value = "代理商 ID                        ")
-	private Long agentId;
-	/**代理商名称                       */
-	@Excel(name = "代理商名称                       ", width = 15)
-    @ApiModelProperty(value = "代理商名称                       ")
-	private java.lang.String agentName;
-	/**广告主ID                         */
-	@Excel(name = "广告主ID                         ", width = 15)
-    @ApiModelProperty(value = "广告主ID                         ")
-	private Long advertiserId;
-	/**广告主名称                       */
-	@Excel(name = "广告主名称                       ", width = 15)
-    @ApiModelProperty(value = "广告主名称                       ")
-	private java.lang.String advertiserName;
-	/**一级行业                         */
-	@Excel(name = "一级行业                         ", width = 15)
-    @ApiModelProperty(value = "一级行业                         ")
-	private java.lang.String firstIndustry;
-	/**二级行业                         */
-	@Excel(name = "二级行业                         ", width = 15)
-    @ApiModelProperty(value = "二级行业                         ")
-	private java.lang.String secondIndustry;
-	/**广告主账号的过审时间             */
-	@Excel(name = "广告主账号的过审时间             ", width = 15)
-    @ApiModelProperty(value = "广告主账号的过审时间             ")
-	private java.lang.String auditPassTime;
-	/**广告主账户状态                   */
-	@Excel(name = "广告主账户状态                   ", width = 15)
-    @ApiModelProperty(value = "广告主账户状态                   ")
-	private java.lang.String accountStatus;
-	/**广告主所属公司ID                 */
-	@Excel(name = "广告主所属公司ID                 ", width = 15)
-    @ApiModelProperty(value = "广告主所属公司ID                 ")
-	private java.lang.Integer companyId;
-	/**广告主所属公司名称               */
-	@Excel(name = "广告主所属公司名称               ", width = 15)
-    @ApiModelProperty(value = "广告主所属公司名称               ")
-	private java.lang.String companyName;
-	/**广告主账户的注册时间             */
-	@Excel(name = "广告主账户的注册时间             ", width = 15)
-    @ApiModelProperty(value = "广告主账户的注册时间             ")
-	private java.lang.String registerTime;
-	/**广告主账户类型                   */
-	@Excel(name = "广告主账户类型                   ", width = 15)
-    @ApiModelProperty(value = "广告主账户类型                   ")
-	private java.lang.String accountSource;
-	/**今日总消耗                       */
-	@Excel(name = "今日总消耗                       ", width = 15)
-    @ApiModelProperty(value = "今日总消耗                       ")
-	private java.math.BigDecimal todayCost;
-	/**昨日总消耗                       */
-	@Excel(name = "昨日总消耗                       ", width = 15)
-    @ApiModelProperty(value = "昨日总消耗                       ")
-	private java.math.BigDecimal yesterdayCost;
-	/**今日查询结束时间                 */
-	@Excel(name = "今日查询结束时间                 ", width = 15)
-    @ApiModelProperty(value = "今日查询结束时间                 ")
-	private java.lang.Integer queryEndTime;
-	/**今日截止x点总消耗                */
-	@Excel(name = "今日截止x点总消耗                ", width = 15)
-    @ApiModelProperty(value = "今日截止x点总消耗                ")
-	private java.math.BigDecimal todayXHourCost;
-	/**昨日截止x点总消耗                */
-	@Excel(name = "昨日截止x点总消耗                ", width = 15)
-    @ApiModelProperty(value = "昨日截止x点总消耗                ")
-	private java.math.BigDecimal yesterdayXHourCost;
-	/**截止x点总消耗升降值              */
-	@Excel(name = "截止x点总消耗升降值              ", width = 15)
-    @ApiModelProperty(value = "截止x点总消耗升降值              ")
-	private java.math.BigDecimal xHourCostDiff;
-	/**今日截止x点转化数                */
-	@Excel(name = "今日截止x点转化数                ", width = 15)
-    @ApiModelProperty(value = "今日截止x点转化数                ")
-	private java.math.BigDecimal todayXHourConvert;
-	/**昨日截止x点转化数                */
-	@Excel(name = "昨日截止x点转化数                ", width = 15)
-    @ApiModelProperty(value = "昨日截止x点转化数                ")
-	private java.math.BigDecimal yesterdayXHourConvert;
-	/**截止x点转化数升降值              */
-	@Excel(name = "截止x点转化数升降值              ", width = 15)
-    @ApiModelProperty(value = "截止x点转化数升降值              ")
-	private java.math.BigDecimal xHourConvertDiff;
-	/**今日截止x点累计转化成本          */
-	@Excel(name = "今日截止x点累计转化成本          ", width = 15)
-    @ApiModelProperty(value = "今日截止x点累计转化成本          ")
-	private java.math.BigDecimal todayXHourCpa;
-	/**昨日截止x点累计转化成本          */
-	@Excel(name = "昨日截止x点累计转化成本          ", width = 15)
-    @ApiModelProperty(value = "昨日截止x点累计转化成本          ")
-	private java.math.BigDecimal yesterdayXHourCpa;
-	/**截止x点累计转化成本升降值        */
-	@Excel(name = "截止x点累计转化成本升降值        ", width = 15)
-    @ApiModelProperty(value = "截止x点累计转化成本升降值        ")
-	private java.math.BigDecimal xHourCpaDiff;
-	/**今日截止x点点击数                */
-	@Excel(name = "今日截止x点点击数                ", width = 15)
-    @ApiModelProperty(value = "今日截止x点点击数                ")
-	private java.lang.Integer todayXHourClick;
-	/**昨日截止x点点击数                */
-	@Excel(name = "昨日截止x点点击数                ", width = 15)
-    @ApiModelProperty(value = "昨日截止x点点击数                ")
-	private java.lang.Integer yesterdayXHourClick;
-	/**截止x点点击数升降值              */
-	@Excel(name = "截止x点点击数升降值              ", width = 15)
-    @ApiModelProperty(value = "截止x点点击数升降值              ")
-	private java.lang.Integer xHourClickDiff;
-	/**今日截止x点累计点击成本          */
-	@Excel(name = "今日截止x点累计点击成本          ", width = 15)
-    @ApiModelProperty(value = "今日截止x点累计点击成本          ")
-	private java.math.BigDecimal todayXHourCpc;
-	/**昨日截止x点累计点击成本          */
-	@Excel(name = "昨日截止x点累计点击成本          ", width = 15)
-    @ApiModelProperty(value = "昨日截止x点累计点击成本          ")
-	private java.math.BigDecimal yesterdayXHourCpc;
-	/**截止x点累计点击成本升降值        */
-	@Excel(name = "截止x点累计点击成本升降值        ", width = 15)
-    @ApiModelProperty(value = "截止x点累计点击成本升降值        ")
-	private java.math.BigDecimal xHourCpcDiff;
-	/**昨日现金消耗                     */
-	@Excel(name = "昨日现金消耗                     ", width = 15)
-    @ApiModelProperty(value = "昨日现金消耗                     ")
-	private java.math.BigDecimal yesterdayCashCost;
-	/**昨日竞价现金消耗                 */
-	@Excel(name = "昨日竞价现金消耗                 ", width = 15)
-    @ApiModelProperty(value = "昨日竞价现金消耗                 ")
-	private java.math.BigDecimal yesterdayBidCashCost;
-	/**昨日品牌现金消耗                 */
-	@Excel(name = "昨日品牌现金消耗                 ", width = 15)
-    @ApiModelProperty(value = "昨日品牌现金消耗                 ")
-	private java.math.BigDecimal yesterdayBrandCashCost;
-	/**昨日赠款消耗                     */
-	@Excel(name = "昨日赠款消耗                     ", width = 15)
-    @ApiModelProperty(value = "昨日赠款消耗                     ")
-	private java.math.BigDecimal yesterdayGrantsCost;
-	/**昨日与前日环比                   */
-	@Excel(name = "昨日与前日环比                   ", width = 15)
-    @ApiModelProperty(value = "昨日与前日环比                   ")
-	private java.math.BigDecimal yesterdayMomCost;
-	/**昨日与前日差值                   */
-	@Excel(name = "昨日与前日差值                   ", width = 15)
-    @ApiModelProperty(value = "昨日与前日差值                   ")
-	private java.math.BigDecimal yesterdayCostDiff;
-	/**历史总消耗                       */
-	@Excel(name = "历史总消耗                       ", width = 15)
-    @ApiModelProperty(value = "历史总消耗                       ")
-	private java.math.BigDecimal historyCost;
-	/**历史现金总消耗                   */
-	@Excel(name = "历史现金总消耗                   ", width = 15)
-    @ApiModelProperty(value = "历史现金总消耗                   ")
-	private java.math.BigDecimal historyCashCost;
-	/**昨日有消耗计划数                 */
-	@Excel(name = "昨日有消耗计划数                 ", width = 15)
-    @ApiModelProperty(value = "昨日有消耗计划数                 ")
-	private java.math.BigDecimal yesterdayAdNumber;
-	/**广告主开户天数                   */
-	@Excel(name = "广告主开户天数                   ", width = 15)
-    @ApiModelProperty(value = "广告主开户天数                   ")
-	private java.math.BigDecimal registerDays;
-	/**首充金额                         */
-	@Excel(name = "首充金额                         ", width = 15)
-    @ApiModelProperty(value = "首充金额                         ")
-	private java.math.BigDecimal firstRechargeAmount;
-	/**首次充值时间                     */
-	@Excel(name = "首次充值时间                     ", width = 15)
-    @ApiModelProperty(value = "首次充值时间                     ")
-	private java.lang.String firstRechargeTime;
-	/**最近续费时间                     */
-	@Excel(name = "最近续费时间                     ", width = 15)
-    @ApiModelProperty(value = "最近续费时间                     ")
-	private java.lang.String lastRenewTime;
-	/**历史续费总金额                   */
-	@Excel(name = "历史续费总金额                   ", width = 15)
-    @ApiModelProperty(value = "历史续费总金额                   ")
-	private java.math.BigDecimal totalRenewAmount;
-	/**历史续费总次数                   */
-	@Excel(name = "历史续费总次数                   ", width = 15)
-    @ApiModelProperty(value = "历史续费总次数                   ")
-	private java.math.BigDecimal totalRenewNumber;
-	/**现金余额                         */
-	@Excel(name = "现金余额                         ", width = 15)
-    @ApiModelProperty(value = "现金余额                         ")
-	private java.math.BigDecimal cashBalance;
-	/**赠款余额                         */
-	@Excel(name = "赠款余额                         ", width = 15)
-    @ApiModelProperty(value = "赠款余额                         ")
-	private java.math.BigDecimal rantBalance;
-	/**最近转账时间                     */
-	@Excel(name = "最近转账时间                     ", width = 15)
-    @ApiModelProperty(value = "最近转账时间                     ")
-	private java.lang.String lastRechargeTime;
-	/**最近转账金额                     */
-	@Excel(name = "最近转账金额                     ", width = 15)
-    @ApiModelProperty(value = "最近转账金额                     ")
-	private java.math.BigDecimal lastRenewAmount;
-	/**最近三个有消耗日广告主日均消耗   */
-	@TableField(value = "arpu_3cd")
-	@Excel(name = "最近三个有消耗日广告主日均消耗   ", width = 15)
-    @ApiModelProperty(value = "最近三个有消耗日广告主日均消耗   ")
-	private java.math.BigDecimal arpu3cd;
-	/**总余额                           */
-	@Excel(name = "总余额                           ", width = 15)
-    @ApiModelProperty(value = "总余额                           ")
-	private java.math.BigDecimal totalBalance;
-	/**总可用余额                       */
-	@Excel(name = "总可用余额                       ", width = 15)
-    @ApiModelProperty(value = "总可用余额                       ")
-	private java.math.BigDecimal validBalance;
-	/**业务线                           */
-	@Excel(name = "业务线                           ", width = 15)
-    @ApiModelProperty(value = "业务线                           ")
-	private java.lang.String customerType;
-	/**首消时间                         */
-	@Excel(name = "首消时间                         ", width = 15)
-    @ApiModelProperty(value = "首消时间                         ")
-	private java.lang.String firstCostTime;
-}
+    private Long advertiserId;
+
+    private Long agentId;
+
+    private String statDatetime;
+
+    private Integer hour;
+
+    private String agentName;
+
+    private String advertiserName;
+
+    private String firstIndustry;
+
+    private String secondIndustry;
+
+    private String auditPassTime;
+
+    private String accountStatus;
+
+    private Long companyId;
+
+    private String companyName;
+
+    private String registerTime;
+
+    private String accountSource;
+
+    private BigDecimal todayCost;
+
+    private BigDecimal yesterdayCost;
+
+    private Long queryEndTime;
+
+    private BigDecimal todayXHourCost;
+
+    private BigDecimal yesterdayXHourCost;
+
+    private BigDecimal xHourCostDiff;
+
+    private BigDecimal todayXHourConvert;
+
+    private BigDecimal yesterdayXHourConvert;
+
+    private BigDecimal xHourConvertDiff;
+
+    private BigDecimal todayXHourCpa;
+
+    private BigDecimal yesterdayXHourCpa;
+
+    private BigDecimal xHourCpaDiff;
+
+    private Long todayXHourClick;
+
+    private Long yesterdayXHourClick;
+
+    private Long xHourClickDiff;
+
+    private BigDecimal todayXHourCpc;
+
+    private BigDecimal yesterdayXHourCpc;
+
+    private BigDecimal xHourCpcDiff;
+
+    private BigDecimal yesterdayCashCost;
+
+    private BigDecimal yesterdayBidCashCost;
+
+    private BigDecimal yesterdayBrandCashCost;
+
+    private BigDecimal yesterdayGrantsCost;
+
+    private BigDecimal yesterdayMomCost;
+
+    private BigDecimal yesterdayCostDiff;
+
+    private BigDecimal historyCost;
+
+    private BigDecimal historyCashCost;
+
+    private BigDecimal yesterdayAdNumber;
+
+    private BigDecimal registerDays;
+
+    private BigDecimal firstRechargeAmount;
+
+    private String firstRechargeTime;
+
+    private String lastRenewTime;
+
+    private BigDecimal totalRenewAmount;
+
+    private BigDecimal totalRenewNumber;
+
+    private BigDecimal cashBalance;
+
+    private BigDecimal rantBalance;
+
+    private String lastRechargeTime;
+
+    private BigDecimal lastRenewAmount;
+
+    private BigDecimal arpu3cd;
+
+    private BigDecimal totalBalance;
+
+    private BigDecimal validBalance;
+
+    private String customerType;
+
+    private String firstCostTime;
+
+}

+ 19 - 77
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceAudiencePackageGet.java

@@ -1,85 +1,27 @@
 package cn.com.ctop.job.bytedance.data.entity;
 
-import com.baomidou.mybatisplus.annotation.TableName;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.experimental.Accessors;
-import org.jeecgframework.poi.excel.annotation.Excel;
 
-/**
- * 获取定向包
- *
- * @author jeecg-boot
- * @version V1.0
- * @date 2021-10-21
- */
 @Data
-@TableName("bytedance_audience_package_get")
-@EqualsAndHashCode(callSuper = false)
-@Accessors(chain = true)
-@ApiModel(value = "bytedance_audience_package_get对象", description = "获取定向包")
 public class BytedanceAudiencePackageGet {
-
-    /**
-     * 广告主ID
-     */
-    @Excel(name = "广告主ID      ", width = 15)
-    @ApiModelProperty(value = "广告主ID      ")
     private Long advertiserId;
-    /**
-     * 定向包id
-     */
-    @Excel(name = "定向包id      ", width = 15)
-    @ApiModelProperty(value = "定向包id      ")
+
     private Long audiencePackageId;
-    /**
-     * 定向包名称
-     */
-    @Excel(name = "定向包名称    ", width = 15)
-    @ApiModelProperty(value = "定向包名称    ")
-    private java.lang.String name;
-    /**
-     * 定向包描述
-     */
-    @Excel(name = "定向包描述    ", width = 15)
-    @ApiModelProperty(value = "定向包描述    ")
-    private java.lang.String description;
-    /**
-     * 定向包推广类型
-     */
-    @Excel(name = "定向包推广类型", width = 15)
-    @ApiModelProperty(value = "定向包推广类型")
-    private java.lang.String landingType;
-    /**
-     * 过滤已转化用户
-     */
-    @Excel(name = "过滤已转化用户", width = 15)
-    @ApiModelProperty(value = "过滤已转化用户")
-    private java.lang.String hideIfConverted;
-    /**
-     * 过滤时间范围
-     */
-    @Excel(name = "过滤时间范围  ", width = 15)
-    @ApiModelProperty(value = "过滤时间范围  ")
-    private java.lang.String convertedTimeDuration;
-    /**
-     * 广告投放范围
-     */
-    @Excel(name = "广告投放范围  ", width = 15)
-    @ApiModelProperty(value = "广告投放范围  ")
-    private java.lang.String deliveryRange;
-    /**
-     * 已安装用户
-     */
-    @Excel(name = "已安装用户    ", width = 15)
-    @ApiModelProperty(value = "已安装用户    ")
-    private java.lang.Integer hideIfExists;
-    /**
-     * 自定内容
-     */
-    @Excel(name = "自定内容      ", width = 15)
-    @ApiModelProperty(value = "自定内容      ")
-    private java.lang.String audience;
-}
+
+    private String name;
+
+    private String description;
+
+    private String landingType;
+
+    private String hideIfConverted;
+
+    private String convertedTimeDuration;
+
+    private String deliveryRange;
+
+    private Long hideIfExists;
+
+    private String audience;
+
+}

+ 29 - 83
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCampaignGet.java

@@ -1,88 +1,34 @@
 package cn.com.ctop.job.bytedance.data.entity;
 
-import java.io.Serializable;
-import java.util.Date;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import com.baomidou.mybatisplus.annotation.TableField;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.experimental.Accessors;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import org.springframework.format.annotation.DateTimeFormat;
-import org.jeecgframework.poi.excel.annotation.Excel;
-
-/**
- * 获取定向包
- * @author jeecg-boot
- * @date   2021-10-21
- * @version V1.0
- */
+
 @Data
-@TableName("bytedance_campaign_get")
-@EqualsAndHashCode(callSuper = false)
-@Accessors(chain = true)
-@ApiModel(value="bytedance_campaign_get对象", description="获取定向包")
 public class BytedanceCampaignGet {
-    
-	/**广告主id*/
-	@TableField(value = "advertiser_id")
-	@Excel(name = "广告主id", width = 15)
-    @ApiModelProperty(value = "广告主id")
-	private Long advertiserId;
-
-	/**广告组id*/
-	@TableField(value = "campaign_id")
-	@Excel(name = "广告组id", width = 15)
-    @ApiModelProperty(value = "广告组id")
-	private Long campaignId;
-
-	/**广告组名称*/
-	@TableField(value = "campaign_name")
-	@Excel(name = "广告组名称", width = 15)
-    @ApiModelProperty(value = "广告组名称")
-	private java.lang.String campaignName;
-	/**广告组预算*/
-	@Excel(name = "广告组预算", width = 15)
-    @ApiModelProperty(value = "广告组预算")
-	private java.lang.Integer budget;
-	/**广告组预算类型*/
-	@Excel(name = "广告组预算类型", width = 15)
-    @ApiModelProperty(value = "广告组预算类型")
-	private java.lang.String budgetMode;
-	/**广告组时间戳*/
-	@Excel(name = "广告组时间戳", width = 15)
-    @ApiModelProperty(value = "广告组时间戳")
-	private java.lang.String modifyTime;
-	/**广告组状态*/
-	@Excel(name = "广告组状态", width = 15)
-    @ApiModelProperty(value = "广告组状态")
-	private java.lang.String status;
-	/**广告组创建时间*/
-	@Excel(name = "广告组创建时间", width = 15)
-    @ApiModelProperty(value = "广告组创建时间")
-	private java.lang.String campaignCreateTime;
-	/**广告组修改时间*/
-	@Excel(name = "广告组修改时间", width = 15)
-    @ApiModelProperty(value = "广告组修改时间")
-	private java.lang.String campaignModifyTime;
-	/**营销目的*/
-	@Excel(name = "营销目的", width = 15)
-    @ApiModelProperty(value = "营销目的")
-	private java.lang.String marketingPurpose;
-	/**广告组商品类型*/
-	@Excel(name = "广告组商品类型", width = 15)
-    @ApiModelProperty(value = "广告组商品类型")
-	private java.lang.String deliveryRelatedNum;
-	/**投放类型*/
-	@Excel(name = "投放类型", width = 15)
-    @ApiModelProperty(value = "投放类型")
-	private java.lang.String deliveryMode;
-	/**landingType*/
-	@Excel(name = "landingType", width = 15)
-    @ApiModelProperty(value = "landingType")
-	private java.lang.String landingType;
-}
+    private Long advertiserId;
+
+    private Long campaignId;
+
+    private String campaignName;
+
+    private Integer budget;
+
+    private String budgetMode;
+
+    private String modifyTime;
+
+    private String status;
+
+    private String campaignCreateTime;
+
+    private String campaignModifyTime;
+
+    private String marketingPurpose;
+
+    private String deliveryRelatedNum;
+
+    private String deliveryMode;
+
+    private String landingType;
+
+
+}

File diff suppressed because it is too large
+ 317 - 987
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCampaignReportDaily.java


File diff suppressed because it is too large
+ 320 - 995
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCampaignReportHourly.java


+ 30 - 108
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCreativeGet.java

@@ -1,115 +1,37 @@
 package cn.com.ctop.job.bytedance.data.entity;
 
-import com.baomidou.mybatisplus.annotation.TableName;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.experimental.Accessors;
-import org.jeecgframework.poi.excel.annotation.Excel;
-
-/**
- * 获取定向包
- *
- * @author jeecg-boot
- * @version V1.0
- * @date 2021-10-22
- */
+
 @Data
-@TableName("bytedance_creative_get")
-@EqualsAndHashCode(callSuper = false)
-@Accessors(chain = true)
-@ApiModel(value = "bytedance_creative_get对象", description = "获取定向包")
 public class BytedanceCreativeGet {
+    private String advertiserId;
 
-    /**
-     * 创意ID
-     */
-    @Excel(name = "创意ID              ", width = 15)
-    @ApiModelProperty(value = "创意ID              ")
-    private Long creativeId;
-    /**
-     * 广告计划ID
-     */
-    @Excel(name = "广告计划ID          ", width = 15)
-    @ApiModelProperty(value = "广告计划ID          ")
     private Long adId;
-    /**
-     * 广告主ID
-     */
-    @Excel(name = "广告主ID            ", width = 15)
-    @ApiModelProperty(value = "广告主ID            ")
-    private Long advertiserId;
-    /**
-     * 创意素材标题
-     */
-    @Excel(name = "创意素材标题        ", width = 15)
-    @ApiModelProperty(value = "创意素材标题        ")
-    private java.lang.String title;
-    /**
-     * 动态词包列表
-     */
-    @Excel(name = "动态词包列表        ", width = 15)
-    @ApiModelProperty(value = "动态词包列表        ")
-    private java.lang.String creativeWordIds;
-    /**
-     * 创意素材状态
-     */
-    @Excel(name = "创意素材状态        ", width = 15)
-    @ApiModelProperty(value = "创意素材状态        ")
-    private java.lang.String status;
-    /**
-     * 创意素材操作状态
-     */
-    @Excel(name = "创意素材操作状态    ", width = 15)
-    @ApiModelProperty(value = "创意素材操作状态    ")
-    private java.lang.String optStatus;
-    /**
-     * 创意素材类型
-     */
-    @Excel(name = "创意素材类型        ", width = 15)
-    @ApiModelProperty(value = "创意素材类型        ")
-    private java.lang.String imageMode;
-    /**
-     * 图片素材,图片ID列表
-     */
-    @Excel(name = "图片素材,图片ID列表", width = 15)
-    @ApiModelProperty(value = "图片素材,图片ID列表")
-    private java.lang.String imageIds;
-    /**
-     * 视频素材,封面图片ID
-     */
-    @Excel(name = "视频素材,封面图片ID", width = 15)
-    @ApiModelProperty(value = "视频素材,封面图片ID")
-    private java.lang.String imageId;
-    /**
-     * 视频素材,视频ID
-     */
-    @Excel(name = "视频素材,视频ID    ", width = 15)
-    @ApiModelProperty(value = "视频素材,视频ID    ")
-    private java.lang.String videoId;
-    /**
-     * 第三方ID
-     */
-    @Excel(name = "第三方ID            ", width = 15)
-    @ApiModelProperty(value = "第三方ID            ")
-    private java.lang.String thirdPartyId;
-    /**
-     * 素材信息列表
-     */
-    @Excel(name = "素材信息列表        ", width = 15)
-    @ApiModelProperty(value = "素材信息列表        ")
-    private java.lang.String metarials;
-    /**
-     * 广告创意创建时间
-     */
-    @Excel(name = "广告创意创建时间    ", width = 15)
-    @ApiModelProperty(value = "广告创意创建时间    ")
-    private java.lang.String creativeCreateTime;
-    /**
-     * 广告创意更新时间
-     */
-    @Excel(name = "广告创意更新时间    ", width = 15)
-    @ApiModelProperty(value = "广告创意更新时间    ")
-    private java.lang.String creativeModifyTime;
-}
+
+    private Long creativeId;
+
+    private String title;
+
+    private String creativeWordIds;
+
+    private String status;
+
+    private String optStatus;
+
+    private String imageMode;
+
+    private String imageIds;
+
+    private String imageId;
+
+    private String videoId;
+
+    private String thirdPartyId;
+
+    private String metarials;
+
+    private String creativeCreateTime;
+
+    private String creativeModifyTime;
+
+}

File diff suppressed because it is too large
+ 320 - 1002
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCreativeReportDaily.java


File diff suppressed because it is too large
+ 323 - 1009
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceCreativeReportHourly.java


+ 23 - 90
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceFileImageGet.java

@@ -1,99 +1,32 @@
 package cn.com.ctop.job.bytedance.data.entity;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.experimental.Accessors;
-import org.jeecgframework.poi.excel.annotation.Excel;
 
-/**
- * 头条图片素材
- *
- * @author jeecg-boot
- * @version V1.0
- * @date 2021-10-22
- */
 @Data
-@TableName("bytedance_file_image_get")
-@EqualsAndHashCode(callSuper = false)
-@Accessors(chain = true)
-@ApiModel(value = "bytedance_file_image_get对象", description = "头条图片素材")
 public class BytedanceFileImageGet {
-
-    /**
-     * 广告主ID
-     */
-    @Excel(name = "广告主ID      ", width = 15)
-    @ApiModelProperty(value = "广告主ID      ")
     private Long advertiserId;
-    /**
-     * id
-     */
-    @TableId(type = IdType.UUID)
-    @ApiModelProperty(value = "id")
+
     private String id;
-    /**
-     * 素材id
-     */
-    @Excel(name = "素材id        ", width = 15)
-    @ApiModelProperty(value = "素材id        ")
+
     private Long materialId;
-    /**
-     * 图片大小
-     */
-    @Excel(name = "图片大小      ", width = 15)
-    @ApiModelProperty(value = "图片大小      ")
-    private java.lang.Integer size;
-    /**
-     * 图片宽度
-     */
-    @Excel(name = "图片宽度      ", width = 15)
-    @ApiModelProperty(value = "图片宽度      ")
-    private java.lang.Integer width;
-    /**
-     * 图片高度
-     */
-    @Excel(name = "图片高度      ", width = 15)
-    @ApiModelProperty(value = "图片高度      ")
-    private java.lang.Integer height;
-    /**
-     * url
-     */
-    @Excel(name = "url", width = 15)
-    @ApiModelProperty(value = "url")
-    private java.lang.String url;
-    /**
-     * 图片格式
-     */
-    @Excel(name = "图片格式      ", width = 15)
-    @ApiModelProperty(value = "图片格式      ")
-    private java.lang.String format;
-    /**
-     * 图片md5
-     */
-    @Excel(name = "图片md5       ", width = 15)
-    @ApiModelProperty(value = "图片md5       ")
-    private java.lang.String signature;
-    /**
-     * 素材的上传时间
-     */
-    @Excel(name = "素材的上传时间", width = 15)
-    @ApiModelProperty(value = "素材的上传时间")
-    private java.lang.String createTime;
-    /**
-     * 素材的文件名
-     */
-    @Excel(name = "素材的文件名  ", width = 15)
-    @ApiModelProperty(value = "素材的文件名  ")
-    private java.lang.String filename;
-    /**
-     * imageUrl
-     */
-    @Excel(name = "imageUrl", width = 15)
-    @ApiModelProperty(value = "imageUrl")
-    private java.lang.String imageUrl;
-}
+
+    private Long size;
+
+    private Long width;
+
+    private Long height;
+
+    private String url;
+
+    private String format;
+
+    private String signature;
+
+    private String createTime;
+
+    private String filename;
+
+    private String imageUrl;
+
+
+}

+ 34 - 122
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceFileVideoGet.java

@@ -1,129 +1,41 @@
 package cn.com.ctop.job.bytedance.data.entity;
 
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.experimental.Accessors;
-import org.jeecgframework.poi.excel.annotation.Excel;
-
-/**
- * 头条-视频素材
- *
- * @author jeecg-boot
- * @version V1.0
- * @date 2021-10-22
- */
+
 @Data
-@TableName("bytedance_file_video_get")
-@EqualsAndHashCode(callSuper = false)
-@Accessors(chain = true)
-@ApiModel(value = "bytedance_file_video_get对象", description = "头条-视频素材")
 public class BytedanceFileVideoGet {
-
-    /**
-     * 广告主ID
-     */
-    @Excel(name = "广告主ID       ", width = 15)
-    @ApiModelProperty(value = "广告主ID       ")
     private Long advertiserId;
-    /**
-     * id
-     */
-    @TableId(type = IdType.UUID)
-    @ApiModelProperty(value = "id")
+
     private String id;
-    /**
-     * 视频大小
-     */
-    @Excel(name = "视频大小       ", width = 15)
-    @ApiModelProperty(value = "视频大小       ")
-    private java.lang.Integer size;
-    /**
-     * 视频宽度
-     */
-    @Excel(name = "视频宽度       ", width = 15)
-    @ApiModelProperty(value = "视频宽度       ")
-    private java.lang.Integer width;
-    /**
-     * 视频高度
-     */
-    @Excel(name = "视频高度       ", width = 15)
-    @ApiModelProperty(value = "视频高度       ")
-    private java.lang.Integer height;
-    /**
-     * 视频地址
-     */
-    @Excel(name = "视频地址       ", width = 15)
-    @ApiModelProperty(value = "视频地址       ")
-    private java.lang.String url;
-    /**
-     * 视频格式
-     */
-    @Excel(name = "视频格式       ", width = 15)
-    @ApiModelProperty(value = "视频格式       ")
-    private java.lang.String format;
-    /**
-     * 视频md5值
-     */
-    @Excel(name = "视频md5值      ", width = 15)
-    @ApiModelProperty(value = "视频md5值      ")
-    private java.lang.String signature;
-    /**
-     * 视频首帧截图
-     */
-    @Excel(name = "视频首帧截图   ", width = 15)
-    @ApiModelProperty(value = "视频首帧截图   ")
-    private java.lang.String posterUrl;
-    /**
-     * 码率
-     */
-    @Excel(name = "码率           ", width = 15)
-    @ApiModelProperty(value = "码率           ")
-    private java.lang.Integer bitRate;
-    /**
-     * 视频时长
-     */
-    @Excel(name = "视频时长       ", width = 15)
-    @ApiModelProperty(value = "视频时长       ")
-    private java.lang.Integer duration;
-    /**
-     * 素材id
-     */
-    @Excel(name = "素材id         ", width = 15)
-    @ApiModelProperty(value = "素材id         ")
-    private String materialId;
-    /**
-     * 素材来源
-     */
-    @Excel(name = "素材来源       ", width = 15)
-    @ApiModelProperty(value = "素材来源       ")
-    private java.lang.String source;
-    /**
-     * 素材的上传时间
-     */
-    @Excel(name = "素材的上传时间 ", width = 15)
-    @ApiModelProperty(value = "素材的上传时间 ")
-    private java.lang.String createTime;
-    /**
-     * filename
-     */
-    @Excel(name = "filename", width = 15)
-    @ApiModelProperty(value = "filename")
-    private java.lang.String filename;
-    /**
-     * 视频标签
-     */
-    @Excel(name = "视频标签       ", width = 15)
-    @ApiModelProperty(value = "视频标签       ")
-    private java.lang.String labels;
-    /**
-     * videoUrl
-     */
-    @Excel(name = "videoUrl", width = 15)
-    @ApiModelProperty(value = "videoUrl")
-    private java.lang.String videoUrl;
-}
+
+    private Long size;
+
+    private Long width;
+
+    private Long height;
+
+    private String url;
+
+    private String format;
+
+    private String signature;
+
+    private String posterUrl;
+
+    private Long bitRate;
+
+    private Long duration;
+
+    private Long materialId;
+
+    private String source;
+
+    private String createTime;
+
+    private String filename;
+
+    private String labels;
+
+    private String videoUrl;
+
+}

File diff suppressed because it is too large
+ 354 - 1112
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/entity/BytedanceMaterialReportDaily.java


+ 0 - 17
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ByteDanceAdvertiseDailyMapper.java

@@ -1,17 +0,0 @@
-package cn.com.ctop.job.bytedance.data.mapper;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertiseDailyReport;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import org.apache.ibatis.annotations.Mapper;
-
-/**
- * @Description: 今日头条广告主信息
- * @Author: jeecg-boot
- * @Date: 2019-07-22
- * @Version: V1.0
- */
-@Mapper
-public interface ByteDanceAdvertiseDailyMapper extends BaseMapper<ByteDanceAdvertiseDailyReport> {
-
-
-}

+ 0 - 15
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ByteDanceAdvertiseHourlyMapper.java

@@ -1,15 +0,0 @@
-package cn.com.ctop.job.bytedance.data.mapper;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertiseHourlyReport;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-
-/**
- * @Description: 今日头条广告主计划信息
- * @Author: jeecg-boot
- * @Date: 2019-07-22
- * @Version: V1.0
- */
-public interface ByteDanceAdvertiseHourlyMapper extends BaseMapper<ByteDanceAdvertiseHourlyReport> {
-
-
-}

+ 0 - 17
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ByteDanceAdvertisePlanDailyMapper.java

@@ -1,17 +0,0 @@
-package cn.com.ctop.job.bytedance.data.mapper;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlanDailyReport;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import org.apache.ibatis.annotations.Mapper;
-
-/**
- * @Description: 今日头条广告计划信息
- * @Author: jeecg-boot
- * @Date: 2019-07-22
- * @Version: V1.0
- */
-@Mapper
-public interface ByteDanceAdvertisePlanDailyMapper extends BaseMapper<ByteDanceAdvertisePlanDailyReport> {
-
-
-}

+ 1 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ByteDanceAdvertisePlanHourlyMapper.java

@@ -1,6 +1,5 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlanHourlyReport;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
 /**
@@ -9,7 +8,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @Date: 2019-07-22
  * @Version: V1.0
  */
-public interface ByteDanceAdvertisePlanHourlyMapper extends BaseMapper<ByteDanceAdvertisePlanHourlyReport> {
+public interface ByteDanceAdvertisePlanHourlyMapper  {
 
 
 }

+ 0 - 15
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/ByteDanceAdvertisePlanMapper.java

@@ -1,15 +0,0 @@
-package cn.com.ctop.job.bytedance.data.mapper;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlan;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-
-/**
- * @Description: 今日头条广告计划信息
- * @Author: jeecg-boot
- * @Date: 2019-07-22
- * @Version: V1.0
- */
-public interface ByteDanceAdvertisePlanMapper extends BaseMapper<ByteDanceAdvertisePlan> {
-
-
-}

+ 15 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAdGetMapper.java

@@ -0,0 +1,15 @@
+package cn.com.ctop.job.bytedance.data.mapper;
+
+
+import cn.com.ctop.job.bytedance.data.entity.BytedanceAdGet;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceAdGetMapper {
+
+
+    int insert(@Param("list") List<BytedanceAdGet> list);
+
+
+}

+ 15 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAdReportDailyMapper.java

@@ -0,0 +1,15 @@
+package cn.com.ctop.job.bytedance.data.mapper;
+
+
+
+import cn.com.ctop.job.bytedance.data.entity.BytedanceAdReportDaily;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceAdReportDailyMapper {
+
+    int insert(@Param("list") List<BytedanceAdReportDaily> list);
+
+
+}

+ 14 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAdReportHourlyMapper.java

@@ -0,0 +1,14 @@
+package cn.com.ctop.job.bytedance.data.mapper;
+
+
+import cn.com.ctop.job.bytedance.data.entity.BytedanceAdReportHourly;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceAdReportHourlyMapper {
+
+    int insert(@Param("list") List<BytedanceAdReportHourly> list);
+
+
+}

+ 14 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAdvertiserReportDailyMapper.java

@@ -0,0 +1,14 @@
+package cn.com.ctop.job.bytedance.data.mapper;
+
+
+import cn.com.ctop.job.bytedance.data.entity.BytedanceAdvertiserReportDaily;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceAdvertiserReportDailyMapper {
+
+
+    int insert(@Param("list") List<BytedanceAdvertiserReportDaily> list);
+
+}

+ 13 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAdvertiserReportHourlyMapper.java

@@ -0,0 +1,13 @@
+package cn.com.ctop.job.bytedance.data.mapper;
+
+
+import cn.com.ctop.job.bytedance.data.entity.BytedanceAdvertiserReportHourly;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceAdvertiserReportHourlyMapper {
+
+    int insert(@Param("list") List<BytedanceAdvertiserReportHourly> list);
+
+}

+ 7 - 11
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAgentReportDailyMapper.java

@@ -1,17 +1,13 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
-import java.util.List;
 
-import org.apache.ibatis.annotations.Param;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceAgentReportDaily;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceAgentReportDailyMapper {
 
-/**
- * 代理商日报
- * @author jeecg-boot
- * 2021-10-21
- * @version V1.0
- */
-public interface BytedanceAgentReportDailyMapper extends BaseMapper<BytedanceAgentReportDaily> {
+    int insert(@Param("list") List<BytedanceAgentReportDaily> list);
 
-}
+}

+ 12 - 12
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAgentReportHourlyMapper.java

@@ -1,15 +1,15 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
+
+
 import cn.com.ctop.job.bytedance.data.entity.BytedanceAgentReportHourly;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-
-/**
- * 代理商日报
- *
- * @author jeecg-boot
- * 2021-10-21
- * @version V1.0
- */
-public interface BytedanceAgentReportHourlyMapper extends BaseMapper<BytedanceAgentReportHourly> {
-
-}
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceAgentReportHourlyMapper {
+
+    int insert(@Param("list") List<BytedanceAgentReportHourly> list);
+
+
+}

+ 10 - 12
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceAudiencePackageGetMapper.java

@@ -1,15 +1,13 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
+
 import cn.com.ctop.job.bytedance.data.entity.BytedanceAudiencePackageGet;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-
-/**
- * 获取定向包
- *
- * @author jeecg-boot
- * 2021-10-21
- * @version V1.0
- */
-public interface BytedanceAudiencePackageGetMapper extends BaseMapper<BytedanceAudiencePackageGet> {
-
-}
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceAudiencePackageGetMapper {
+
+    int insert(@Param("list") List<BytedanceAudiencePackageGet> list);
+
+}

+ 11 - 12
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCampaignGetMapper.java

@@ -1,15 +1,14 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
+
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignGet;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-
-/**
- * 获取定向包
- *
- * @author jeecg-boot
- * 2021-10-21
- * @version V1.0
- */
-public interface BytedanceCampaignGetMapper extends BaseMapper<BytedanceCampaignGet> {
-
-}
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceCampaignGetMapper {
+
+    int insert(@Param("list")List<BytedanceCampaignGet> list);
+
+
+}

+ 8 - 11
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCampaignReportDailyMapper.java

@@ -1,17 +1,14 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
-import java.util.List;
 
-import org.apache.ibatis.annotations.Param;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportDaily;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceCampaignReportDailyMapper {
+
+    int insert(@Param("list")List<BytedanceCampaignReportDaily> list);
 
-/**
- * 获取定向包
- * @author jeecg-boot
- * 2021-10-21
- * @version V1.0
- */
-public interface BytedanceCampaignReportDailyMapper extends BaseMapper<BytedanceCampaignReportDaily> {
 
-}
+}

+ 7 - 11
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCampaignReportHourlyMapper.java

@@ -1,17 +1,13 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
-import java.util.List;
 
-import org.apache.ibatis.annotations.Param;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportHourly;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceCampaignReportHourlyMapper {
 
-/**
- * 获取定向包
- * @author jeecg-boot
- * 2021-10-21
- * @version V1.0
- */
-public interface BytedanceCampaignReportHourlyMapper extends BaseMapper<BytedanceCampaignReportHourly> {
+    int insert(@Param("list") List<BytedanceCampaignReportHourly> list);
 
-}
+}

+ 8 - 11
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCreativeGetMapper.java

@@ -1,17 +1,14 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
-import java.util.List;
 
-import org.apache.ibatis.annotations.Param;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeGet;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceCreativeGetMapper {
+
+    int insert(@Param("list") List<BytedanceCreativeGet> list);
 
-/**
- * 获取定向包
- * @author jeecg-boot
- * 2021-10-22
- * @version V1.0
- */
-public interface BytedanceCreativeGetMapper extends BaseMapper<BytedanceCreativeGet> {
 
-}
+}

+ 8 - 11
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCreativeReportDailyMapper.java

@@ -1,17 +1,14 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
-import java.util.List;
 
-import org.apache.ibatis.annotations.Param;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeReportDaily;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceCreativeReportDailyMapper {
+
+    int insert(@Param("list") List<BytedanceCreativeReportDaily> list);
 
-/**
- * 获取定向包
- * @author jeecg-boot
- * 2021-10-22
- * @version V1.0
- */
-public interface BytedanceCreativeReportDailyMapper extends BaseMapper<BytedanceCreativeReportDaily> {
 
-}
+}

+ 8 - 11
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceCreativeReportHourlyMapper.java

@@ -1,17 +1,14 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
-import java.util.List;
 
-import org.apache.ibatis.annotations.Param;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeReportHourly;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceCreativeReportHourlyMapper {
+
+    int insert(@Param("list") List<BytedanceCreativeReportHourly> list);
 
-/**
- * 获取定向包
- * @author jeecg-boot
- * 2021-10-22
- * @version V1.0
- */
-public interface BytedanceCreativeReportHourlyMapper extends BaseMapper<BytedanceCreativeReportHourly> {
 
-}
+}

+ 8 - 11
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceFileImageGetMapper.java

@@ -1,17 +1,14 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
-import java.util.List;
 
-import org.apache.ibatis.annotations.Param;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceFileImageGet;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceFileImageGetMapper {
+
+    int insert(@Param("list") List<BytedanceFileImageGet> list);
 
-/**
- * 头条图片素材
- * @author jeecg-boot
- * 2021-10-22
- * @version V1.0
- */
-public interface BytedanceFileImageGetMapper extends BaseMapper<BytedanceFileImageGet> {
 
-}
+}

+ 8 - 11
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceFileVideoGetMapper.java

@@ -1,17 +1,14 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
-import java.util.List;
 
-import org.apache.ibatis.annotations.Param;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceFileVideoGet;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceFileVideoGetMapper {
+
 
-/**
- * 头条-视频素材
- * @author jeecg-boot
- * 2021-10-22
- * @version V1.0
- */
-public interface BytedanceFileVideoGetMapper extends BaseMapper<BytedanceFileVideoGet> {
+    int insert(@Param("list") List<BytedanceFileVideoGet> list);
 
-}
+}

+ 8 - 11
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/BytedanceMaterialReportDailyMapper.java

@@ -1,17 +1,14 @@
 package cn.com.ctop.job.bytedance.data.mapper;
 
-import java.util.List;
 
-import org.apache.ibatis.annotations.Param;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceMaterialReportDaily;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+public interface BytedanceMaterialReportDailyMapper {
+
+    int insert(@Param("list") List<BytedanceMaterialReportDaily> list);
 
-/**
- * 图片与视频素材日报
- * @author jeecg-boot
- * 2021-10-25
- * @version V1.0
- */
-public interface BytedanceMaterialReportDailyMapper extends BaseMapper<BytedanceMaterialReportDaily> {
 
-}
+}

+ 0 - 48
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/DataMapper.java

@@ -1,48 +0,0 @@
-package cn.com.ctop.job.bytedance.data.mapper;
-
-import cn.com.ctop.job.bytedance.data.entity.*;
-import org.apache.ibatis.annotations.Mapper;
-import org.apache.ibatis.annotations.Param;
-
-/**
- * @Description: 今日头条广告计划信息
- * @Author: jeecg-boot
- * @Date: 2019-07-22
- * @Version: V1.0
- */
-@Mapper
-public interface DataMapper {
-
-    ByteDanceAdvertisePlanDailyReport getByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("campaignId") Long campaignId, @Param("adId") Long adId, @Param("statDatetime") Integer statDatetime);
-
-    ByteDanceAdvertisePlanHourlyReport getHourlyByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("campaignId") Long campaignId, @Param("adId") Long adId, @Param("statDatetime") Integer statDatetime, @Param("hour") Integer hour);
-
-    ByteDanceAdvertiseDailyReport getAdvertiseDailyByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("statDatetime") Integer statDatetime);
-
-    ByteDanceAdvertiseHourlyReport getAdvertiseHourlyByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("statDatetime") Integer statDatetime, @Param("hour") Integer hour);
-
-    BytedanceAgentReportDaily getAgentDailyByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("agentId") Long agentId, @Param("statDatetime") Integer statDatetime);
-
-    BytedanceAgentReportHourly getAgentHourlyByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("agentId") Long agentId, @Param("statDatetime") String statDatetime, @Param("hour") Integer hour);
-
-    BytedanceAudiencePackageGet getAudiencePackageByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("audiencePackageId") Long audiencePackageId);
-
-    BytedanceCampaignGet getCampaignByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("campaignId") Long campaignId);
-
-    BytedanceCampaignReportDaily getCampaignDailyByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("campaignId") Long campaignId, @Param("statDatetime") String statDatetime);
-
-    BytedanceCampaignReportHourly getCampaignHourlyByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("campaignId") Long campaignId, @Param("statDatetime") String statDatetime, @Param("hour") Integer hour);
-
-
-    BytedanceCreativeGet getCreativeByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("adId") Long adId, @Param("creativeId") Long creativeId);
-
-    BytedanceCreativeReportDaily getCreativeDailyByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("campaignId") Long campaignId, @Param("adId") Long adId, @Param("creativeId") Long creativeId, @Param("statDatetime") String statDatetime);
-
-    BytedanceCreativeReportHourly getCreativeHourlyByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("campaignId") Long campaignId, @Param("adId") Long adId, @Param("creativeId") Long creativeId, @Param("statDatetime") String statDatetime, @Param("hour") int hour);
-
-    BytedanceFileImageGet getFileImageGetByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("id") String id);
-
-    BytedanceFileVideoGet getFileVideoGetByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("id") String id);
-
-    BytedanceMaterialReportDaily getMaterialReportByPrimaryKey(@Param("advertiserId") Long advertiserId, @Param("materialId") Long materialId, @Param("imageMode") String imageMode, @Param("inventory") String inventory, @Param("statDatetime") String statDatetime);
-}

+ 98 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAdGetMapper.xml

@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceAdGetMapper" >
+  <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceAdGet" >
+    <id column="id" property="id" jdbcType="BIGINT" />
+    <result column="account_id" property="accountId" jdbcType="BIGINT" />
+    <result column="name" property="name" jdbcType="VARCHAR" />
+    <result column="campaign_id" property="campaignId" jdbcType="BIGINT" />
+    <result column="operation" property="operation" jdbcType="VARCHAR" />
+    <result column="plan_modify_time" property="planModifyTime" jdbcType="VARCHAR" />
+    <result column="delivery_range" property="deliveryRange" jdbcType="VARCHAR" />
+    <result column="union_video_type" property="unionVideoType" jdbcType="VARCHAR" />
+    <result column="deep_bid_type" property="deepBidType" jdbcType="VARCHAR" />
+    <result column="deep_cpa_bid" property="deepCpaBid" jdbcType="DECIMAL" />
+    <result column="ad_modify_time" property="adModifyTime" jdbcType="VARCHAR" />
+    <result column="ad_create_time" property="adCreateTime" jdbcType="VARCHAR" />
+    <result column="budget_mode" property="budgetMode" jdbcType="VARCHAR" />
+    <result column="budget" property="budget" jdbcType="DECIMAL" />
+    <result column="toutiao_status" property="toutiaoStatus" jdbcType="VARCHAR" />
+    <result column="opt_status" property="optStatus" jdbcType="VARCHAR" />
+    <result column="start_time" property="startTime" jdbcType="VARCHAR" />
+    <result column="end_time" property="endTime" jdbcType="VARCHAR" />
+    <result column="bid" property="bid" jdbcType="DECIMAL" />
+    <result column="pricing" property="pricing" jdbcType="VARCHAR" />
+    <result column="schedule_type" property="scheduleType" jdbcType="VARCHAR" />
+    <result column="schedule_time" property="scheduleTime" jdbcType="VARCHAR" />
+    <result column="flow_control_mode" property="flowControlMode" jdbcType="VARCHAR" />
+    <result column="download_type" property="downloadType" jdbcType="VARCHAR" />
+    <result column="external_url" property="externalUrl" jdbcType="VARCHAR" />
+    <result column="app_type" property="appType" jdbcType="VARCHAR" />
+    <result column="audit_reject_reason" property="auditRejectReason" jdbcType="VARCHAR" />
+    <result column="cpa_bid" property="cpaBid" jdbcType="DECIMAL" />
+    <result column="cpa_skip_first_phrase" property="cpaSkipFirstPhrase" jdbcType="INTEGER" />
+    <result column="convert_id" property="convertId" jdbcType="BIGINT" />
+    <result column="hide_if_converted" property="hideIfConverted" jdbcType="VARCHAR" />
+    <result column="hide_if_exists" property="hideIfExists" jdbcType="INTEGER" />
+    <result column="modify_time" property="modifyTime" jdbcType="VARCHAR" />
+    <result column="gender" property="gender" jdbcType="VARCHAR" />
+    <result column="platform" property="platform" jdbcType="VARCHAR" />
+    <result column="create_time" property="createTime" jdbcType="TIMESTAMP" />
+    <result column="update_time" property="updateTime" jdbcType="TIMESTAMP" />
+    <result column="plan_status" property="planStatus" jdbcType="INTEGER" />
+    <result column="converted_time_duration" property="convertedTimeDuration" jdbcType="VARCHAR" />
+    <result column="luban_roi_goal" property="lubanRoiGoal" jdbcType="DECIMAL" />
+    <result column="roi_goal" property="roiGoal" jdbcType="DECIMAL" />
+    <result column="inventory_type" property="inventoryType" jdbcType="VARCHAR" />
+    <result column="audience_package_id" property="audiencePackageId" jdbcType="VARCHAR" />
+  </resultMap>
+
+  <sql id="Base_Column_List" >
+    id, account_id, name, campaign_id, operation, plan_modify_time, delivery_range, union_video_type, 
+    deep_bid_type, deep_cpa_bid, ad_modify_time, ad_create_time, budget_mode, budget, 
+    toutiao_status, opt_status, start_time, end_time, bid, pricing, schedule_type, schedule_time, 
+    flow_control_mode, download_type, external_url, app_type, audit_reject_reason, cpa_bid, 
+    cpa_skip_first_phrase, convert_id, hide_if_converted, hide_if_exists, modify_time, 
+    gender, platform, create_time, update_time, plan_status, converted_time_duration, 
+    luban_roi_goal, roi_goal, inventory_type, audience_package_id
+  </sql>
+
+  <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceAdGet" >
+    replace into bytedance_ad_get (id, account_id, name,
+      campaign_id, operation, plan_modify_time, 
+      delivery_range, union_video_type, deep_bid_type, 
+      deep_cpa_bid, ad_modify_time, ad_create_time, 
+      budget_mode, budget, toutiao_status, 
+      opt_status, start_time, end_time, 
+      bid, pricing, schedule_type, 
+      schedule_time, flow_control_mode, download_type, 
+      external_url, app_type, audit_reject_reason, 
+      cpa_bid, cpa_skip_first_phrase, convert_id, 
+      hide_if_converted, hide_if_exists, modify_time, 
+      gender, platform, create_time, 
+      update_time, plan_status, converted_time_duration, 
+      luban_roi_goal, roi_goal, inventory_type, 
+      audience_package_id, open_url, toutiao_package, 
+      audience, download_url)
+    values
+    <foreach collection="list" item="item" separator=",">
+        (#{item.id,jdbcType=BIGINT}, #{item.accountId,jdbcType=BIGINT}, #{item.name,jdbcType=VARCHAR},
+      #{item.campaignId,jdbcType=BIGINT}, #{item.operation,jdbcType=VARCHAR}, #{item.planModifyTime,jdbcType=VARCHAR}, 
+      #{item.deliveryRange,jdbcType=VARCHAR}, #{item.unionVideoType,jdbcType=VARCHAR}, #{item.deepBidType,jdbcType=VARCHAR}, 
+      #{item.deepCpaBid,jdbcType=DECIMAL}, #{item.adModifyTime,jdbcType=VARCHAR}, #{item.adCreateTime,jdbcType=VARCHAR}, 
+      #{item.budgetMode,jdbcType=VARCHAR}, #{item.budget,jdbcType=DECIMAL}, #{item.toutiaoStatus,jdbcType=VARCHAR}, 
+      #{item.optStatus,jdbcType=VARCHAR}, #{item.startTime,jdbcType=VARCHAR}, #{item.endTime,jdbcType=VARCHAR}, 
+      #{item.bid,jdbcType=DECIMAL}, #{item.pricing,jdbcType=VARCHAR}, #{item.scheduleType,jdbcType=VARCHAR}, 
+      #{item.scheduleTime,jdbcType=VARCHAR}, #{item.flowControlMode,jdbcType=VARCHAR}, #{item.downloadType,jdbcType=VARCHAR}, 
+      #{item.externalUrl,jdbcType=VARCHAR}, #{item.appType,jdbcType=VARCHAR}, #{item.auditRejectReason,jdbcType=VARCHAR}, 
+      #{item.cpaBid,jdbcType=DECIMAL}, #{item.cpaSkipFirstPhrase,jdbcType=INTEGER}, #{item.convertId,jdbcType=BIGINT}, 
+      #{item.hideIfConverted,jdbcType=VARCHAR}, #{item.hideIfExists,jdbcType=INTEGER}, #{item.modifyTime,jdbcType=VARCHAR}, 
+      #{item.gender,jdbcType=VARCHAR}, #{item.platform,jdbcType=VARCHAR}, #{item.createTime,jdbcType=TIMESTAMP}, 
+      #{item.updateTime,jdbcType=TIMESTAMP}, #{item.planStatus,jdbcType=INTEGER}, #{item.convertedTimeDuration,jdbcType=VARCHAR}, 
+      #{item.lubanRoiGoal,jdbcType=DECIMAL}, #{item.roiGoal,jdbcType=DECIMAL}, #{item.inventoryType,jdbcType=VARCHAR}, 
+      #{item.audiencePackageId,jdbcType=BIGINT}, #{item.openUrl,jdbcType=LONGVARCHAR}, #{item.toutiaoPackage,jdbcType=LONGVARCHAR},
+      #{item.audience,jdbcType=LONGVARCHAR}, #{item.downloadUrl,jdbcType=LONGVARCHAR})
+    </foreach>
+  </insert>
+
+</mapper>

+ 337 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAdReportDailyMapper.xml

@@ -0,0 +1,337 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceAdReportDailyMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceAdReportDaily">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="campaign_id" property="campaignId" jdbcType="BIGINT"/>
+        <id column="ad_id" property="adId" jdbcType="BIGINT"/>
+        <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER"/>
+        <result column="campaign_name" property="campaignName" jdbcType="VARCHAR"/>
+        <result column="ad_name" property="adName" jdbcType="VARCHAR"/>
+        <result column="cost" property="cost" jdbcType="DECIMAL"/>
+        <result column="show" property="show" jdbcType="BIGINT"/>
+        <result column="avg_show_cost" property="avgShowCost" jdbcType="DECIMAL"/>
+        <result column="click" property="click" jdbcType="BIGINT"/>
+        <result column="avg_click_cost" property="avgClickCost" jdbcType="DECIMAL"/>
+        <result column="ctr" property="ctr" jdbcType="DECIMAL"/>
+        <result column="convert" property="convert" jdbcType="BIGINT"/>
+        <result column="convert_cost" property="convertCost" jdbcType="DECIMAL"/>
+        <result column="convert_rate" property="convertRate" jdbcType="DECIMAL"/>
+        <result column="deep_convert" property="deepConvert" jdbcType="BIGINT"/>
+        <result column="deep_convert_cost" property="deepConvertCost" jdbcType="DECIMAL"/>
+        <result column="deep_convert_rate" property="deepConvertRate" jdbcType="DECIMAL"/>
+        <result column="attribution_convert" property="attributionConvert" jdbcType="BIGINT"/>
+        <result column="attribution_convert_cost" property="attributionConvertCost" jdbcType="DECIMAL"/>
+        <result column="attribution_deep_convert" property="attributionDeepConvert" jdbcType="BIGINT"/>
+        <result column="attribution_deep_convert_cost" property="attributionDeepConvertCost" jdbcType="DECIMAL"/>
+        <result column="download_start" property="downloadStart" jdbcType="BIGINT"/>
+        <result column="download_start_cost" property="downloadStartCost" jdbcType="DECIMAL"/>
+        <result column="download_start_rate" property="downloadStartRate" jdbcType="DECIMAL"/>
+        <result column="download_finish" property="downloadFinish" jdbcType="BIGINT"/>
+        <result column="download_finish_cost" property="downloadFinishCost" jdbcType="DECIMAL"/>
+        <result column="download_finish_rate" property="downloadFinishRate" jdbcType="DECIMAL"/>
+        <result column="click_install" property="clickInstall" jdbcType="BIGINT"/>
+        <result column="install_finish" property="installFinish" jdbcType="BIGINT"/>
+        <result column="install_finish_cost" property="installFinishCost" jdbcType="DECIMAL"/>
+        <result column="install_finish_rate" property="installFinishRate" jdbcType="DECIMAL"/>
+        <result column="active" property="active" jdbcType="BIGINT"/>
+        <result column="active_cost" property="activeCost" jdbcType="DECIMAL"/>
+        <result column="active_rate" property="activeRate" jdbcType="DECIMAL"/>
+        <result column="register" property="register" jdbcType="DECIMAL"/>
+        <result column="active_register_cost" property="activeRegisterCost" jdbcType="DECIMAL"/>
+        <result column="active_register_rate" property="activeRegisterRate" jdbcType="REAL"/>
+        <result column="next_day_open" property="nextDayOpen" jdbcType="BIGINT"/>
+        <result column="next_day_open_cost" property="nextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="next_day_open_rate" property="nextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_cnt" property="attributionNextDayOpenCnt" jdbcType="BIGINT"/>
+        <result column="attribution_next_day_open_cost" property="attributionNextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_rate" property="attributionNextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="game_addiction" property="gameAddiction" jdbcType="BIGINT"/>
+        <result column="game_addiction_cost" property="gameAddictionCost" jdbcType="DECIMAL"/>
+        <result column="game_addiction_rate" property="gameAddictionRate" jdbcType="DECIMAL"/>
+        <result column="pay_count" property="payCount" jdbcType="BIGINT"/>
+        <result column="active_pay_cost" property="activePayCost" jdbcType="DECIMAL"/>
+        <result column="active_pay_rate" property="activePayRate" jdbcType="DECIMAL"/>
+        <result column="loan_completion" property="loanCompletion" jdbcType="BIGINT"/>
+        <result column="loan_completion_cost" property="loanCompletionCost" jdbcType="DECIMAL"/>
+        <result column="loan_completion_rate" property="loanCompletionRate" jdbcType="DECIMAL"/>
+        <result column="pre_loan_credit" property="preLoanCredit" jdbcType="BIGINT"/>
+        <result column="pre_loan_credit_cost" property="preLoanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit" property="loanCredit" jdbcType="BIGINT"/>
+        <result column="loan_credit_cost" property="loanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit_rate" property="loanCreditRate" jdbcType="DECIMAL"/>
+        <result column="in_app_uv" property="inAppUv" jdbcType="BIGINT"/>
+        <result column="in_app_detail_uv" property="inAppDetailUv" jdbcType="BIGINT"/>
+        <result column="in_app_cart" property="inAppCart" jdbcType="BIGINT"/>
+        <result column="in_app_pay" property="inAppPay" jdbcType="BIGINT"/>
+        <result column="in_app_order" property="inAppOrder" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_count" property="attributionGamePay7dCount" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_cost" property="attributionGamePay7dCost" jdbcType="DECIMAL"/>
+        <result column="attribution_active_pay_7d_per_count" property="attributionActivePay7dPerCount"
+                jdbcType="BIGINT"/>
+        <result column="game_pay_cost" property="gamePayCost" jdbcType="DECIMAL"/>
+        <result column="game_pay_count" property="gamePayCount" jdbcType="BIGINT"/>
+        <result column="phone" property="phone" jdbcType="BIGINT"/>
+        <result column="form" property="form" jdbcType="BIGINT"/>
+        <result column="map_search" property="mapSearch" jdbcType="BIGINT"/>
+        <result column="button" property="button" jdbcType="BIGINT"/>
+        <result column="view" property="view" jdbcType="BIGINT"/>
+        <result column="download" property="download" jdbcType="BIGINT"/>
+        <result column="qq" property="qq" jdbcType="BIGINT"/>
+        <result column="lottery" property="lottery" jdbcType="BIGINT"/>
+        <result column="vote" property="vote" jdbcType="BIGINT"/>
+        <result column="message" property="message" jdbcType="BIGINT"/>
+        <result column="redirect" property="redirect" jdbcType="BIGINT"/>
+        <result column="shopping" property="shopping" jdbcType="BIGINT"/>
+        <result column="consult" property="consult" jdbcType="BIGINT"/>
+        <result column="wechat" property="wechat" jdbcType="BIGINT"/>
+        <result column="phone_confirm" property="phoneConfirm" jdbcType="BIGINT"/>
+        <result column="phone_connect" property="phoneConnect" jdbcType="BIGINT"/>
+        <result column="consult_effective" property="consultEffective" jdbcType="BIGINT"/>
+        <result column="coupon" property="coupon" jdbcType="BIGINT"/>
+        <result column="coupon_single_page" property="couponSinglePage" jdbcType="BIGINT"/>
+        <result column="redirect_to_shop" property="redirectToShop" jdbcType="BIGINT"/>
+        <result column="poi_collect" property="poiCollect" jdbcType="BIGINT"/>
+        <result column="poi_address_click" property="poiAddressClick" jdbcType="BIGINT"/>
+        <result column="luban_order_cnt" property="lubanOrderCnt" jdbcType="BIGINT"/>
+        <result column="luban_order_stat_amount" property="lubanOrderStatAmount" jdbcType="DECIMAL"/>
+        <result column="luban_order_roi" property="lubanOrderRoi" jdbcType="DECIMAL"/>
+        <result column="luban_live_enter_cnt" property="lubanLiveEnterCnt" jdbcType="BIGINT"/>
+        <result column="live_watch_one_minute_count" property="liveWatchOneMinuteCount" jdbcType="BIGINT"/>
+        <result column="luban_live_follow_cnt" property="lubanLiveFollowCnt" jdbcType="BIGINT"/>
+        <result column="live_fans_club_join_cnt" property="liveFansClubJoinCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_comment_cnt" property="lubanLiveCommentCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_share_cnt" property="lubanLiveShareCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_cnt" property="lubanLiveGiftCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_amount" property="lubanLiveGiftAmount" jdbcType="DECIMAL"/>
+        <result column="luban_live_slidecart_click_cnt" property="lubanLiveSlidecartClickCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_click_product_cnt" property="lubanLiveClickProductCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_count" property="lubanLivePayOrderCount" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_stat_cost" property="lubanLivePayOrderStatCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_count" property="liveComponentClickCount" jdbcType="BIGINT"/>
+        <result column="live_component_click_cost" property="liveComponentClickCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_rate" property="liveComponentClickRate" jdbcType="DECIMAL"/>
+        <result column="wechat_login_count" property="wechatLoginCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_login_30d_count" property="attributionWechatLogin30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_login_cost" property="wechatLoginCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_login_30d_cost" property="attributionWechatLogin30dCost" jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_count" property="wechatFirstPayCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_first_pay_30d_count" property="attributionWechatFirstPay30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_first_pay_cost" property="wechatFirstPayCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_cost" property="attributionWechatFirstPay30dCost"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_rate" property="wechatFirstPayRate" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_rate" property="attributionWechatFirstPay30dRate"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_pay_amount" property="wechatPayAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_amount" property="attributionWechatPay30dAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_roi" property="attributionWechatPay30dRoi" jdbcType="DECIMAL"/>
+        <result column="phone_effective" property="phoneEffective" jdbcType="BIGINT"/>
+        <result column="total_play" property="totalPlay" jdbcType="BIGINT"/>
+        <result column="valid_play" property="validPlay" jdbcType="BIGINT"/>
+        <result column="valid_play_cost" property="validPlayCost" jdbcType="DECIMAL"/>
+        <result column="valid_play_rate" property="validPlayRate" jdbcType="DECIMAL"/>
+        <result column="play_25_feed_break" property="play25FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_50_feed_break" property="play50FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_75_feed_break" property="play75FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_100_feed_break" property="play100FeedBreak" jdbcType="BIGINT"/>
+        <result column="average_play_time_per_play" property="averagePlayTimePerPlay" jdbcType="DECIMAL"/>
+        <result column="play_over_rate" property="playOverRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play_rate" property="wifiPlayRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play" property="wifiPlay" jdbcType="BIGINT"/>
+        <result column="play_duration_sum" property="playDurationSum" jdbcType="BIGINT"/>
+        <result column="advanced_creative_phone_click" property="advancedCreativePhoneClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_counsel_click" property="advancedCreativeCounselClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_click" property="advancedCreativeFormClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_coupon_addition" property="advancedCreativeCouponAddition" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_submit" property="advancedCreativeFormSubmit" jdbcType="BIGINT"/>
+        <result column="card_show" property="cardShow" jdbcType="BIGINT"/>
+        <result column="share" property="share" jdbcType="BIGINT"/>
+        <result column="comment" property="comment" jdbcType="BIGINT"/>
+        <result column="like" property="like" jdbcType="BIGINT"/>
+        <result column="follow" property="follow" jdbcType="BIGINT"/>
+        <result column="home_visited" property="homeVisited" jdbcType="BIGINT"/>
+        <result column="ies_challenge_click" property="iesChallengeClick" jdbcType="BIGINT"/>
+        <result column="ies_music_click" property="iesMusicClick" jdbcType="BIGINT"/>
+        <result column="location_click" property="locationClick" jdbcType="BIGINT"/>
+        <result column="message_action" property="messageAction" jdbcType="BIGINT"/>
+        <result column="click_landing_page" property="clickLandingPage" jdbcType="BIGINT"/>
+        <result column="click_shopwindow" property="clickShopwindow" jdbcType="BIGINT"/>
+        <result column="click_website" property="clickWebsite" jdbcType="BIGINT"/>
+        <result column="click_download" property="clickDownload" jdbcType="BIGINT"/>
+        <result column="click_call_dy" property="clickCallDy" jdbcType="BIGINT"/>
+        <result column="submit_certification_count" property="submitCertificationCount" jdbcType="BIGINT"/>
+        <result column="approval_count" property="approvalCount" jdbcType="BIGINT"/>
+        <result column="first_rental_order_count" property="firstRentalOrderCount" jdbcType="BIGINT"/>
+        <result column="first_order_count" property="firstOrderCount" jdbcType="BIGINT"/>
+        <result column="commute_first_pay_count" property="commuteFirstPayCount" jdbcType="BIGINT"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, campaign_id, ad_id, stat_datetime, campaign_name, ad_name, cost, `show`,
+    avg_show_cost, click, avg_click_cost, ctr, convert, convert_cost, convert_rate, deep_convert, 
+    deep_convert_cost, deep_convert_rate, attribution_convert, attribution_convert_cost, 
+    attribution_deep_convert, attribution_deep_convert_cost, download_start, download_start_cost, 
+    download_start_rate, download_finish, download_finish_cost, download_finish_rate, 
+    click_install, install_finish, install_finish_cost, install_finish_rate, active, 
+    active_cost, active_rate, register, active_register_cost, active_register_rate, next_day_open, 
+    next_day_open_cost, next_day_open_rate, attribution_next_day_open_cnt, attribution_next_day_open_cost, 
+    attribution_next_day_open_rate, game_addiction, game_addiction_cost, game_addiction_rate, 
+    pay_count, active_pay_cost, active_pay_rate, loan_completion, loan_completion_cost, 
+    loan_completion_rate, pre_loan_credit, pre_loan_credit_cost, loan_credit, loan_credit_cost, 
+    loan_credit_rate, in_app_uv, in_app_detail_uv, in_app_cart, in_app_pay, in_app_order, 
+    attribution_game_pay_7d_count, attribution_game_pay_7d_cost, attribution_active_pay_7d_per_count, 
+    game_pay_cost, game_pay_count, phone, form, map_search, button, view, download, qq, 
+    lottery, vote, message, redirect, shopping, consult, wechat, phone_confirm, phone_connect, 
+    consult_effective, coupon, coupon_single_page, redirect_to_shop, poi_collect, poi_address_click, 
+    luban_order_cnt, luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt, 
+    live_watch_one_minute_count, luban_live_follow_cnt, live_fans_club_join_cnt, luban_live_comment_cnt, 
+    luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount, luban_live_slidecart_click_cnt, 
+    luban_live_click_product_cnt, luban_live_pay_order_count, luban_live_pay_order_stat_cost, 
+    live_component_click_count, live_component_click_cost, live_component_click_rate, 
+    wechat_login_count, attribution_wechat_login_30d_count, wechat_login_cost, attribution_wechat_login_30d_cost, 
+    wechat_first_pay_count, attribution_wechat_first_pay_30d_count, wechat_first_pay_cost, 
+    attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, attribution_wechat_first_pay_30d_rate, 
+    wechat_pay_amount, attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi, 
+    phone_effective, total_play, valid_play, valid_play_cost, valid_play_rate, play_25_feed_break, 
+    play_50_feed_break, play_75_feed_break, play_100_feed_break, average_play_time_per_play, 
+    play_over_rate, wifi_play_rate, wifi_play, play_duration_sum, advanced_creative_phone_click, 
+    advanced_creative_counsel_click, advanced_creative_form_click, advanced_creative_coupon_addition, 
+    advanced_creative_form_submit, card_show, share, comment, like, follow, home_visited, 
+    ies_challenge_click, ies_music_click, location_click, message_action, click_landing_page, 
+    click_shopwindow, click_website, click_download, click_call_dy, submit_certification_count, 
+    approval_count, first_rental_order_count, first_order_count, commute_first_pay_count
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceAdReportDaily">
+        replace into bytedance_ad_report_daily (advertiser_id, campaign_id, ad_id,
+      stat_datetime, campaign_name, ad_name, 
+      cost, `show`, avg_show_cost,
+      click, avg_click_cost, ctr, 
+      `convert`, convert_cost, convert_rate,
+      deep_convert, deep_convert_cost, deep_convert_rate, 
+      attribution_convert, attribution_convert_cost, 
+      attribution_deep_convert, attribution_deep_convert_cost, 
+      download_start, download_start_cost, download_start_rate, 
+      download_finish, download_finish_cost, download_finish_rate, 
+      click_install, install_finish, install_finish_cost, 
+      install_finish_rate, active, active_cost, 
+      active_rate, register, active_register_cost, 
+      active_register_rate, next_day_open, next_day_open_cost, 
+      next_day_open_rate, attribution_next_day_open_cnt, 
+      attribution_next_day_open_cost, attribution_next_day_open_rate, 
+      game_addiction, game_addiction_cost, game_addiction_rate, 
+      pay_count, active_pay_cost, active_pay_rate, 
+      loan_completion, loan_completion_cost, loan_completion_rate, 
+      pre_loan_credit, pre_loan_credit_cost, loan_credit, 
+      loan_credit_cost, loan_credit_rate, in_app_uv, 
+      in_app_detail_uv, in_app_cart, in_app_pay, 
+      in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost, 
+      attribution_active_pay_7d_per_count, game_pay_cost, 
+      game_pay_count, phone, form, 
+      map_search, button, `view`,
+      download, qq, lottery, 
+      vote, message, redirect, 
+      shopping, consult, wechat, 
+      phone_confirm, phone_connect, consult_effective, 
+      coupon, coupon_single_page, redirect_to_shop, 
+      poi_collect, poi_address_click, luban_order_cnt, 
+      luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt, 
+      live_watch_one_minute_count, luban_live_follow_cnt, 
+      live_fans_club_join_cnt, luban_live_comment_cnt, 
+      luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount, 
+      luban_live_slidecart_click_cnt, luban_live_click_product_cnt, 
+      luban_live_pay_order_count, luban_live_pay_order_stat_cost, 
+      live_component_click_count, live_component_click_cost, 
+      live_component_click_rate, wechat_login_count, 
+      attribution_wechat_login_30d_count, wechat_login_cost, 
+      attribution_wechat_login_30d_cost, wechat_first_pay_count, 
+      attribution_wechat_first_pay_30d_count, wechat_first_pay_cost, 
+      attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, 
+      attribution_wechat_first_pay_30d_rate, wechat_pay_amount, 
+      attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi, 
+      phone_effective, total_play, valid_play, 
+      valid_play_cost, valid_play_rate, play_25_feed_break, 
+      play_50_feed_break, play_75_feed_break, play_100_feed_break, 
+      average_play_time_per_play, play_over_rate, wifi_play_rate, 
+      wifi_play, play_duration_sum, advanced_creative_phone_click, 
+      advanced_creative_counsel_click, advanced_creative_form_click, 
+      advanced_creative_coupon_addition, advanced_creative_form_submit, 
+      card_show, `share`, comment,
+      `like`, follow, home_visited,
+      ies_challenge_click, ies_music_click, location_click, 
+      message_action, click_landing_page, click_shopwindow, 
+      click_website, click_download, click_call_dy, 
+      submit_certification_count, approval_count, 
+      first_rental_order_count, first_order_count, commute_first_pay_count
+      )
+    values
+      <foreach collection="list" item="item" separator=",">
+        (#{item.advertiserId,jdbcType=BIGINT}, #{item.campaignId,jdbcType=BIGINT}, #{item.adId,jdbcType=BIGINT},
+        #{item.statDatetime,jdbcType=INTEGER}, #{item.campaignName,jdbcType=VARCHAR}, #{item.adName,jdbcType=VARCHAR},
+        #{item.cost,jdbcType=DECIMAL}, #{item.show,jdbcType=BIGINT}, #{item.avgShowCost,jdbcType=DECIMAL},
+        #{item.click,jdbcType=BIGINT}, #{item.avgClickCost,jdbcType=DECIMAL}, #{item.ctr,jdbcType=DECIMAL},
+        #{item.convert,jdbcType=BIGINT}, #{item.convertCost,jdbcType=DECIMAL}, #{item.convertRate,jdbcType=DECIMAL},
+        #{item.deepConvert,jdbcType=BIGINT}, #{item.deepConvertCost,jdbcType=DECIMAL}, #{item.deepConvertRate,jdbcType=DECIMAL},
+        #{item.attributionConvert,jdbcType=BIGINT}, #{item.attributionConvertCost,jdbcType=DECIMAL},
+        #{item.attributionDeepConvert,jdbcType=BIGINT}, #{item.attributionDeepConvertCost,jdbcType=DECIMAL},
+        #{item.downloadStart,jdbcType=BIGINT}, #{item.downloadStartCost,jdbcType=DECIMAL}, #{item.downloadStartRate,jdbcType=DECIMAL},
+        #{item.downloadFinish,jdbcType=BIGINT}, #{item.downloadFinishCost,jdbcType=DECIMAL}, #{item.downloadFinishRate,jdbcType=DECIMAL},
+        #{item.clickInstall,jdbcType=BIGINT}, #{item.installFinish,jdbcType=BIGINT}, #{item.installFinishCost,jdbcType=DECIMAL},
+        #{item.installFinishRate,jdbcType=DECIMAL}, #{item.active,jdbcType=BIGINT}, #{item.activeCost,jdbcType=DECIMAL},
+        #{item.activeRate,jdbcType=DECIMAL}, #{item.register,jdbcType=DECIMAL}, #{item.activeRegisterCost,jdbcType=DECIMAL},
+        #{item.activeRegisterRate,jdbcType=REAL}, #{item.nextDayOpen,jdbcType=BIGINT}, #{item.nextDayOpenCost,jdbcType=DECIMAL},
+        #{item.nextDayOpenRate,jdbcType=DECIMAL}, #{item.attributionNextDayOpenCnt,jdbcType=BIGINT},
+        #{item.attributionNextDayOpenCost,jdbcType=DECIMAL}, #{item.attributionNextDayOpenRate,jdbcType=DECIMAL},
+        #{item.gameAddiction,jdbcType=BIGINT}, #{item.gameAddictionCost,jdbcType=DECIMAL}, #{item.gameAddictionRate,jdbcType=DECIMAL},
+        #{item.payCount,jdbcType=BIGINT}, #{item.activePayCost,jdbcType=DECIMAL}, #{item.activePayRate,jdbcType=DECIMAL},
+        #{item.loanCompletion,jdbcType=BIGINT}, #{item.loanCompletionCost,jdbcType=DECIMAL}, #{item.loanCompletionRate,jdbcType=DECIMAL},
+        #{item.preLoanCredit,jdbcType=BIGINT}, #{item.preLoanCreditCost,jdbcType=DECIMAL}, #{item.loanCredit,jdbcType=BIGINT},
+        #{item.loanCreditCost,jdbcType=DECIMAL}, #{item.loanCreditRate,jdbcType=DECIMAL}, #{item.inAppUv,jdbcType=BIGINT},
+        #{item.inAppDetailUv,jdbcType=BIGINT}, #{item.inAppCart,jdbcType=BIGINT}, #{item.inAppPay,jdbcType=BIGINT},
+        #{item.inAppOrder,jdbcType=BIGINT}, #{item.attributionGamePay7dCount,jdbcType=BIGINT}, #{item.attributionGamePay7dCost,jdbcType=DECIMAL},
+        #{item.attributionActivePay7dPerCount,jdbcType=BIGINT}, #{item.gamePayCost,jdbcType=DECIMAL},
+        #{item.gamePayCount,jdbcType=BIGINT}, #{item.phone,jdbcType=BIGINT}, #{item.form,jdbcType=BIGINT},
+        #{item.mapSearch,jdbcType=BIGINT}, #{item.button,jdbcType=BIGINT}, #{item.view,jdbcType=BIGINT},
+        #{item.download,jdbcType=BIGINT}, #{item.qq,jdbcType=BIGINT}, #{item.lottery,jdbcType=BIGINT},
+        #{item.vote,jdbcType=BIGINT}, #{item.message,jdbcType=BIGINT}, #{item.redirect,jdbcType=BIGINT},
+        #{item.shopping,jdbcType=BIGINT}, #{item.consult,jdbcType=BIGINT}, #{item.wechat,jdbcType=BIGINT},
+        #{item.phoneConfirm,jdbcType=BIGINT}, #{item.phoneConnect,jdbcType=BIGINT}, #{item.consultEffective,jdbcType=BIGINT},
+        #{item.coupon,jdbcType=BIGINT}, #{item.couponSinglePage,jdbcType=BIGINT}, #{item.redirectToShop,jdbcType=BIGINT},
+        #{item.poiCollect,jdbcType=BIGINT}, #{item.poiAddressClick,jdbcType=BIGINT}, #{item.lubanOrderCnt,jdbcType=BIGINT},
+        #{item.lubanOrderStatAmount,jdbcType=DECIMAL}, #{item.lubanOrderRoi,jdbcType=DECIMAL}, #{item.lubanLiveEnterCnt,jdbcType=BIGINT},
+        #{item.liveWatchOneMinuteCount,jdbcType=BIGINT}, #{item.lubanLiveFollowCnt,jdbcType=BIGINT},
+        #{item.liveFansClubJoinCnt,jdbcType=BIGINT}, #{item.lubanLiveCommentCnt,jdbcType=BIGINT},
+        #{item.lubanLiveShareCnt,jdbcType=BIGINT}, #{item.lubanLiveGiftCnt,jdbcType=BIGINT}, #{item.lubanLiveGiftAmount,jdbcType=DECIMAL},
+        #{item.lubanLiveSlidecartClickCnt,jdbcType=BIGINT}, #{item.lubanLiveClickProductCnt,jdbcType=BIGINT},
+        #{item.lubanLivePayOrderCount,jdbcType=BIGINT}, #{item.lubanLivePayOrderStatCost,jdbcType=DECIMAL},
+        #{item.liveComponentClickCount,jdbcType=BIGINT}, #{item.liveComponentClickCost,jdbcType=DECIMAL},
+        #{item.liveComponentClickRate,jdbcType=DECIMAL}, #{item.wechatLoginCount,jdbcType=BIGINT},
+        #{item.attributionWechatLogin30dCount,jdbcType=BIGINT}, #{item.wechatLoginCost,jdbcType=DECIMAL},
+        #{item.attributionWechatLogin30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayCount,jdbcType=BIGINT},
+        #{item.attributionWechatFirstPay30dCount,jdbcType=BIGINT}, #{item.wechatFirstPayCost,jdbcType=DECIMAL},
+        #{item.attributionWechatFirstPay30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayRate,jdbcType=DECIMAL},
+        #{item.attributionWechatFirstPay30dRate,jdbcType=DECIMAL}, #{item.wechatPayAmount,jdbcType=DECIMAL},
+        #{item.attributionWechatPay30dAmount,jdbcType=DECIMAL}, #{item.attributionWechatPay30dRoi,jdbcType=DECIMAL},
+        #{item.phoneEffective,jdbcType=BIGINT}, #{item.totalPlay,jdbcType=BIGINT}, #{item.validPlay,jdbcType=BIGINT},
+        #{item.validPlayCost,jdbcType=DECIMAL}, #{item.validPlayRate,jdbcType=DECIMAL}, #{item.play25FeedBreak,jdbcType=BIGINT},
+        #{item.play50FeedBreak,jdbcType=BIGINT}, #{item.play75FeedBreak,jdbcType=BIGINT}, #{item.play100FeedBreak,jdbcType=BIGINT},
+        #{item.averagePlayTimePerPlay,jdbcType=DECIMAL}, #{item.playOverRate,jdbcType=DECIMAL}, #{item.wifiPlayRate,jdbcType=DECIMAL},
+        #{item.wifiPlay,jdbcType=BIGINT}, #{item.playDurationSum,jdbcType=BIGINT}, #{item.advancedCreativePhoneClick,jdbcType=BIGINT},
+        #{item.advancedCreativeCounselClick,jdbcType=BIGINT}, #{item.advancedCreativeFormClick,jdbcType=BIGINT},
+        #{item.advancedCreativeCouponAddition,jdbcType=BIGINT}, #{item.advancedCreativeFormSubmit,jdbcType=BIGINT},
+        #{item.cardShow,jdbcType=BIGINT}, #{item.share,jdbcType=BIGINT}, #{item.comment,jdbcType=BIGINT},
+        #{item.like,jdbcType=BIGINT}, #{item.follow,jdbcType=BIGINT}, #{item.homeVisited,jdbcType=BIGINT},
+        #{item.iesChallengeClick,jdbcType=BIGINT}, #{item.iesMusicClick,jdbcType=BIGINT}, #{item.locationClick,jdbcType=BIGINT},
+        #{item.messageAction,jdbcType=BIGINT}, #{item.clickLandingPage,jdbcType=BIGINT}, #{item.clickShopwindow,jdbcType=BIGINT},
+        #{item.clickWebsite,jdbcType=BIGINT}, #{item.clickDownload,jdbcType=BIGINT}, #{item.clickCallDy,jdbcType=BIGINT},
+        #{item.submitCertificationCount,jdbcType=BIGINT}, #{item.approvalCount,jdbcType=BIGINT},
+        #{item.firstRentalOrderCount,jdbcType=BIGINT}, #{item.firstOrderCount,jdbcType=BIGINT}, #{item.commuteFirstPayCount,jdbcType=BIGINT}
+        )
+      </foreach>
+ 
+  </insert>
+
+</mapper>

+ 364 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAdReportHourlyMapper.xml

@@ -0,0 +1,364 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceAdReportHourlyMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceAdReportHourly">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="campaign_id" property="campaignId" jdbcType="BIGINT"/>
+        <id column="ad_id" property="adId" jdbcType="BIGINT"/>
+        <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER"/>
+        <id column="hour" property="hour" jdbcType="INTEGER"/>
+        <result column="campaign_name" property="campaignName" jdbcType="VARCHAR"/>
+        <result column="ad_name" property="adName" jdbcType="VARCHAR"/>
+        <result column="cost" property="cost" jdbcType="DECIMAL"/>
+        <result column="show" property="show" jdbcType="BIGINT"/>
+        <result column="avg_show_cost" property="avgShowCost" jdbcType="DECIMAL"/>
+        <result column="click" property="click" jdbcType="BIGINT"/>
+        <result column="avg_click_cost" property="avgClickCost" jdbcType="DECIMAL"/>
+        <result column="ctr" property="ctr" jdbcType="DECIMAL"/>
+        <result column="convert" property="convert" jdbcType="BIGINT"/>
+        <result column="convert_cost" property="convertCost" jdbcType="DECIMAL"/>
+        <result column="convert_rate" property="convertRate" jdbcType="DECIMAL"/>
+        <result column="deep_convert" property="deepConvert" jdbcType="BIGINT"/>
+        <result column="deep_convert_cost" property="deepConvertCost" jdbcType="DECIMAL"/>
+        <result column="deep_convert_rate" property="deepConvertRate" jdbcType="DECIMAL"/>
+        <result column="attribution_convert" property="attributionConvert" jdbcType="BIGINT"/>
+        <result column="attribution_convert_cost" property="attributionConvertCost" jdbcType="DECIMAL"/>
+        <result column="attribution_deep_convert" property="attributionDeepConvert" jdbcType="BIGINT"/>
+        <result column="attribution_deep_convert_cost" property="attributionDeepConvertCost" jdbcType="DECIMAL"/>
+        <result column="download_start" property="downloadStart" jdbcType="BIGINT"/>
+        <result column="download_start_cost" property="downloadStartCost" jdbcType="DECIMAL"/>
+        <result column="download_start_rate" property="downloadStartRate" jdbcType="DECIMAL"/>
+        <result column="download_finish" property="downloadFinish" jdbcType="BIGINT"/>
+        <result column="download_finish_cost" property="downloadFinishCost" jdbcType="DECIMAL"/>
+        <result column="download_finish_rate" property="downloadFinishRate" jdbcType="DECIMAL"/>
+        <result column="click_install" property="clickInstall" jdbcType="BIGINT"/>
+        <result column="install_finish" property="installFinish" jdbcType="BIGINT"/>
+        <result column="install_finish_cost" property="installFinishCost" jdbcType="DECIMAL"/>
+        <result column="install_finish_rate" property="installFinishRate" jdbcType="DECIMAL"/>
+        <result column="active" property="active" jdbcType="BIGINT"/>
+        <result column="active_cost" property="activeCost" jdbcType="DECIMAL"/>
+        <result column="active_rate" property="activeRate" jdbcType="DECIMAL"/>
+        <result column="register" property="register" jdbcType="DECIMAL"/>
+        <result column="active_register_cost" property="activeRegisterCost" jdbcType="DECIMAL"/>
+        <result column="active_register_rate" property="activeRegisterRate" jdbcType="REAL"/>
+        <result column="next_day_open" property="nextDayOpen" jdbcType="BIGINT"/>
+        <result column="next_day_open_cost" property="nextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="next_day_open_rate" property="nextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_cnt" property="attributionNextDayOpenCnt" jdbcType="BIGINT"/>
+        <result column="attribution_next_day_open_cost" property="attributionNextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_rate" property="attributionNextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="game_addiction" property="gameAddiction" jdbcType="BIGINT"/>
+        <result column="game_addiction_cost" property="gameAddictionCost" jdbcType="DECIMAL"/>
+        <result column="game_addiction_rate" property="gameAddictionRate" jdbcType="DECIMAL"/>
+        <result column="pay_count" property="payCount" jdbcType="BIGINT"/>
+        <result column="active_pay_cost" property="activePayCost" jdbcType="DECIMAL"/>
+        <result column="active_pay_rate" property="activePayRate" jdbcType="DECIMAL"/>
+        <result column="loan_completion" property="loanCompletion" jdbcType="BIGINT"/>
+        <result column="loan_completion_cost" property="loanCompletionCost" jdbcType="DECIMAL"/>
+        <result column="loan_completion_rate" property="loanCompletionRate" jdbcType="DECIMAL"/>
+        <result column="pre_loan_credit" property="preLoanCredit" jdbcType="BIGINT"/>
+        <result column="pre_loan_credit_cost" property="preLoanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit" property="loanCredit" jdbcType="BIGINT"/>
+        <result column="loan_credit_cost" property="loanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit_rate" property="loanCreditRate" jdbcType="DECIMAL"/>
+        <result column="in_app_uv" property="inAppUv" jdbcType="BIGINT"/>
+        <result column="in_app_detail_uv" property="inAppDetailUv" jdbcType="BIGINT"/>
+        <result column="in_app_cart" property="inAppCart" jdbcType="BIGINT"/>
+        <result column="in_app_pay" property="inAppPay" jdbcType="BIGINT"/>
+        <result column="in_app_order" property="inAppOrder" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_count" property="attributionGamePay7dCount" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_cost" property="attributionGamePay7dCost" jdbcType="DECIMAL"/>
+        <result column="attribution_active_pay_7d_per_count" property="attributionActivePay7dPerCount"
+                jdbcType="BIGINT"/>
+        <result column="game_pay_cost" property="gamePayCost" jdbcType="DECIMAL"/>
+        <result column="game_pay_count" property="gamePayCount" jdbcType="BIGINT"/>
+        <result column="phone" property="phone" jdbcType="BIGINT"/>
+        <result column="form" property="form" jdbcType="BIGINT"/>
+        <result column="map_search" property="mapSearch" jdbcType="BIGINT"/>
+        <result column="button" property="button" jdbcType="BIGINT"/>
+        <result column="view" property="view" jdbcType="BIGINT"/>
+        <result column="download" property="download" jdbcType="BIGINT"/>
+        <result column="qq" property="qq" jdbcType="BIGINT"/>
+        <result column="lottery" property="lottery" jdbcType="BIGINT"/>
+        <result column="vote" property="vote" jdbcType="BIGINT"/>
+        <result column="message" property="message" jdbcType="BIGINT"/>
+        <result column="redirect" property="redirect" jdbcType="BIGINT"/>
+        <result column="shopping" property="shopping" jdbcType="BIGINT"/>
+        <result column="consult" property="consult" jdbcType="BIGINT"/>
+        <result column="wechat" property="wechat" jdbcType="BIGINT"/>
+        <result column="phone_confirm" property="phoneConfirm" jdbcType="BIGINT"/>
+        <result column="phone_connect" property="phoneConnect" jdbcType="BIGINT"/>
+        <result column="consult_effective" property="consultEffective" jdbcType="BIGINT"/>
+        <result column="coupon" property="coupon" jdbcType="BIGINT"/>
+        <result column="coupon_single_page" property="couponSinglePage" jdbcType="BIGINT"/>
+        <result column="redirect_to_shop" property="redirectToShop" jdbcType="BIGINT"/>
+        <result column="poi_collect" property="poiCollect" jdbcType="BIGINT"/>
+        <result column="poi_address_click" property="poiAddressClick" jdbcType="BIGINT"/>
+        <result column="luban_order_cnt" property="lubanOrderCnt" jdbcType="BIGINT"/>
+        <result column="luban_order_stat_amount" property="lubanOrderStatAmount" jdbcType="DECIMAL"/>
+        <result column="luban_order_roi" property="lubanOrderRoi" jdbcType="DECIMAL"/>
+        <result column="luban_live_enter_cnt" property="lubanLiveEnterCnt" jdbcType="BIGINT"/>
+        <result column="live_watch_one_minute_count" property="liveWatchOneMinuteCount" jdbcType="BIGINT"/>
+        <result column="luban_live_follow_cnt" property="lubanLiveFollowCnt" jdbcType="BIGINT"/>
+        <result column="live_fans_club_join_cnt" property="liveFansClubJoinCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_comment_cnt" property="lubanLiveCommentCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_share_cnt" property="lubanLiveShareCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_cnt" property="lubanLiveGiftCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_amount" property="lubanLiveGiftAmount" jdbcType="DECIMAL"/>
+        <result column="luban_live_slidecart_click_cnt" property="lubanLiveSlidecartClickCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_click_product_cnt" property="lubanLiveClickProductCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_count" property="lubanLivePayOrderCount" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_stat_cost" property="lubanLivePayOrderStatCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_count" property="liveComponentClickCount" jdbcType="BIGINT"/>
+        <result column="live_component_click_cost" property="liveComponentClickCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_rate" property="liveComponentClickRate" jdbcType="DECIMAL"/>
+        <result column="wechat_login_count" property="wechatLoginCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_login_30d_count" property="attributionWechatLogin30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_login_cost" property="wechatLoginCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_login_30d_cost" property="attributionWechatLogin30dCost" jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_count" property="wechatFirstPayCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_first_pay_30d_count" property="attributionWechatFirstPay30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_first_pay_cost" property="wechatFirstPayCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_cost" property="attributionWechatFirstPay30dCost"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_rate" property="wechatFirstPayRate" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_rate" property="attributionWechatFirstPay30dRate"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_pay_amount" property="wechatPayAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_amount" property="attributionWechatPay30dAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_roi" property="attributionWechatPay30dRoi" jdbcType="DECIMAL"/>
+        <result column="phone_effective" property="phoneEffective" jdbcType="BIGINT"/>
+        <result column="total_play" property="totalPlay" jdbcType="BIGINT"/>
+        <result column="valid_play" property="validPlay" jdbcType="BIGINT"/>
+        <result column="valid_play_cost" property="validPlayCost" jdbcType="DECIMAL"/>
+        <result column="valid_play_rate" property="validPlayRate" jdbcType="DECIMAL"/>
+        <result column="play_25_feed_break" property="play25FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_50_feed_break" property="play50FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_75_feed_break" property="play75FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_100_feed_break" property="play100FeedBreak" jdbcType="BIGINT"/>
+        <result column="average_play_time_per_play" property="averagePlayTimePerPlay" jdbcType="DECIMAL"/>
+        <result column="play_over_rate" property="playOverRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play_rate" property="wifiPlayRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play" property="wifiPlay" jdbcType="BIGINT"/>
+        <result column="play_duration_sum" property="playDurationSum" jdbcType="BIGINT"/>
+        <result column="advanced_creative_phone_click" property="advancedCreativePhoneClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_counsel_click" property="advancedCreativeCounselClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_click" property="advancedCreativeFormClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_coupon_addition" property="advancedCreativeCouponAddition" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_submit" property="advancedCreativeFormSubmit" jdbcType="BIGINT"/>
+        <result column="card_show" property="cardShow" jdbcType="BIGINT"/>
+        <result column="share" property="share" jdbcType="BIGINT"/>
+        <result column="comment" property="comment" jdbcType="BIGINT"/>
+        <result column="like" property="like" jdbcType="BIGINT"/>
+        <result column="follow" property="follow" jdbcType="BIGINT"/>
+        <result column="home_visited" property="homeVisited" jdbcType="BIGINT"/>
+        <result column="ies_challenge_click" property="iesChallengeClick" jdbcType="BIGINT"/>
+        <result column="ies_music_click" property="iesMusicClick" jdbcType="BIGINT"/>
+        <result column="location_click" property="locationClick" jdbcType="BIGINT"/>
+        <result column="message_action" property="messageAction" jdbcType="BIGINT"/>
+        <result column="click_landing_page" property="clickLandingPage" jdbcType="BIGINT"/>
+        <result column="click_shopwindow" property="clickShopwindow" jdbcType="BIGINT"/>
+        <result column="click_website" property="clickWebsite" jdbcType="BIGINT"/>
+        <result column="click_download" property="clickDownload" jdbcType="BIGINT"/>
+        <result column="click_call_dy" property="clickCallDy" jdbcType="BIGINT"/>
+        <result column="submit_certification_count" property="submitCertificationCount" jdbcType="BIGINT"/>
+        <result column="approval_count" property="approvalCount" jdbcType="BIGINT"/>
+        <result column="first_rental_order_count" property="firstRentalOrderCount" jdbcType="BIGINT"/>
+        <result column="first_order_count" property="firstOrderCount" jdbcType="BIGINT"/>
+        <result column="commute_first_pay_count" property="commuteFirstPayCount" jdbcType="BIGINT"/>
+    </resultMap>
+    <sql id="Base_Column_List">
+    advertiser_id, campaign_id, ad_id, stat_datetime, hour, campaign_name, ad_name, cost, 
+    show, avg_show_cost, click, avg_click_cost, ctr, convert, convert_cost, convert_rate, 
+    deep_convert, deep_convert_cost, deep_convert_rate, attribution_convert, attribution_convert_cost, 
+    attribution_deep_convert, attribution_deep_convert_cost, download_start, download_start_cost, 
+    download_start_rate, download_finish, download_finish_cost, download_finish_rate, 
+    click_install, install_finish, install_finish_cost, install_finish_rate, active, 
+    active_cost, active_rate, register, active_register_cost, active_register_rate, next_day_open, 
+    next_day_open_cost, next_day_open_rate, attribution_next_day_open_cnt, attribution_next_day_open_cost, 
+    attribution_next_day_open_rate, game_addiction, game_addiction_cost, game_addiction_rate, 
+    pay_count, active_pay_cost, active_pay_rate, loan_completion, loan_completion_cost, 
+    loan_completion_rate, pre_loan_credit, pre_loan_credit_cost, loan_credit, loan_credit_cost, 
+    loan_credit_rate, in_app_uv, in_app_detail_uv, in_app_cart, in_app_pay, in_app_order, 
+    attribution_game_pay_7d_count, attribution_game_pay_7d_cost, attribution_active_pay_7d_per_count, 
+    game_pay_cost, game_pay_count, phone, form, map_search, button, view, download, qq, 
+    lottery, vote, message, redirect, shopping, consult, wechat, phone_confirm, phone_connect, 
+    consult_effective, coupon, coupon_single_page, redirect_to_shop, poi_collect, poi_address_click, 
+    luban_order_cnt, luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt, 
+    live_watch_one_minute_count, luban_live_follow_cnt, live_fans_club_join_cnt, luban_live_comment_cnt, 
+    luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount, luban_live_slidecart_click_cnt, 
+    luban_live_click_product_cnt, luban_live_pay_order_count, luban_live_pay_order_stat_cost, 
+    live_component_click_count, live_component_click_cost, live_component_click_rate, 
+    wechat_login_count, attribution_wechat_login_30d_count, wechat_login_cost, attribution_wechat_login_30d_cost, 
+    wechat_first_pay_count, attribution_wechat_first_pay_30d_count, wechat_first_pay_cost, 
+    attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, attribution_wechat_first_pay_30d_rate, 
+    wechat_pay_amount, attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi, 
+    phone_effective, total_play, valid_play, valid_play_cost, valid_play_rate, play_25_feed_break, 
+    play_50_feed_break, play_75_feed_break, play_100_feed_break, average_play_time_per_play, 
+    play_over_rate, wifi_play_rate, wifi_play, play_duration_sum, advanced_creative_phone_click, 
+    advanced_creative_counsel_click, advanced_creative_form_click, advanced_creative_coupon_addition, 
+    advanced_creative_form_submit, card_show, share, comment, like, follow, home_visited, 
+    ies_challenge_click, ies_music_click, location_click, message_action, click_landing_page, 
+    click_shopwindow, click_website, click_download, click_call_dy, submit_certification_count, 
+    approval_count, first_rental_order_count, first_order_count, commute_first_pay_count
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceAdReportHourly">
+        replace into bytedance_ad_report_hourly (advertiser_id, campaign_id, ad_id,
+        stat_datetime, `hour`, campaign_name,
+        ad_name, cost, `show`,
+        avg_show_cost, click, avg_click_cost,
+        ctr, `convert`, convert_cost,
+        convert_rate, deep_convert, deep_convert_cost,
+        deep_convert_rate, attribution_convert, attribution_convert_cost,
+        attribution_deep_convert, attribution_deep_convert_cost,
+        download_start, download_start_cost, download_start_rate,
+        download_finish, download_finish_cost, download_finish_rate,
+        click_install, install_finish, install_finish_cost,
+        install_finish_rate, active, active_cost,
+        active_rate, register, active_register_cost,
+        active_register_rate, next_day_open, next_day_open_cost,
+        next_day_open_rate, attribution_next_day_open_cnt,
+        attribution_next_day_open_cost, attribution_next_day_open_rate,
+        game_addiction, game_addiction_cost, game_addiction_rate,
+        pay_count, active_pay_cost, active_pay_rate,
+        loan_completion, loan_completion_cost, loan_completion_rate,
+        pre_loan_credit, pre_loan_credit_cost, loan_credit,
+        loan_credit_cost, loan_credit_rate, in_app_uv,
+        in_app_detail_uv, in_app_cart, in_app_pay,
+        in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost,
+        attribution_active_pay_7d_per_count, game_pay_cost,
+        game_pay_count, phone, form,
+        map_search, button, `view`,
+        download, qq, lottery,
+        vote, message, redirect,
+        shopping, consult, wechat,
+        phone_confirm, phone_connect, consult_effective,
+        coupon, coupon_single_page, redirect_to_shop,
+        poi_collect, poi_address_click, luban_order_cnt,
+        luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt,
+        live_watch_one_minute_count, luban_live_follow_cnt,
+        live_fans_club_join_cnt, luban_live_comment_cnt,
+        luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount,
+        luban_live_slidecart_click_cnt, luban_live_click_product_cnt,
+        luban_live_pay_order_count, luban_live_pay_order_stat_cost,
+        live_component_click_count, live_component_click_cost,
+        live_component_click_rate, wechat_login_count,
+        attribution_wechat_login_30d_count, wechat_login_cost,
+        attribution_wechat_login_30d_cost, wechat_first_pay_count,
+        attribution_wechat_first_pay_30d_count, wechat_first_pay_cost,
+        attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate,
+        attribution_wechat_first_pay_30d_rate, wechat_pay_amount,
+        attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi,
+        phone_effective, total_play, valid_play,
+        valid_play_cost, valid_play_rate, play_25_feed_break,
+        play_50_feed_break, play_75_feed_break, play_100_feed_break,
+        average_play_time_per_play, play_over_rate, wifi_play_rate,
+        wifi_play, play_duration_sum, advanced_creative_phone_click,
+        advanced_creative_counsel_click, advanced_creative_form_click,
+        advanced_creative_coupon_addition, advanced_creative_form_submit,
+        card_show, `share`, comment,
+        `like`, follow, home_visited,
+        ies_challenge_click, ies_music_click, location_click,
+        message_action, click_landing_page, click_shopwindow,
+        click_website, click_download, click_call_dy,
+        submit_certification_count, approval_count,
+        first_rental_order_count, first_order_count, commute_first_pay_count
+        )
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.campaignId,jdbcType=BIGINT}, #{item.adId,jdbcType=BIGINT},
+            #{item.statDatetime,jdbcType=INTEGER}, #{item.hour,jdbcType=INTEGER}, #{item.campaignName,jdbcType=VARCHAR},
+            #{item.adName,jdbcType=VARCHAR}, #{item.cost,jdbcType=DECIMAL}, #{item.show,jdbcType=BIGINT},
+            #{item.avgShowCost,jdbcType=DECIMAL}, #{item.click,jdbcType=BIGINT}, #{item.avgClickCost,jdbcType=DECIMAL},
+            #{item.ctr,jdbcType=DECIMAL}, #{item.convert,jdbcType=BIGINT}, #{item.convertCost,jdbcType=DECIMAL},
+            #{item.convertRate,jdbcType=DECIMAL}, #{item.deepConvert,jdbcType=BIGINT},
+            #{item.deepConvertCost,jdbcType=DECIMAL},
+            #{item.deepConvertRate,jdbcType=DECIMAL}, #{item.attributionConvert,jdbcType=BIGINT},
+            #{item.attributionConvertCost,jdbcType=DECIMAL},
+            #{item.attributionDeepConvert,jdbcType=BIGINT}, #{item.attributionDeepConvertCost,jdbcType=DECIMAL},
+            #{item.downloadStart,jdbcType=BIGINT}, #{item.downloadStartCost,jdbcType=DECIMAL},
+            #{item.downloadStartRate,jdbcType=DECIMAL},
+            #{item.downloadFinish,jdbcType=BIGINT}, #{item.downloadFinishCost,jdbcType=DECIMAL},
+            #{item.downloadFinishRate,jdbcType=DECIMAL},
+            #{item.clickInstall,jdbcType=BIGINT}, #{item.installFinish,jdbcType=BIGINT},
+            #{item.installFinishCost,jdbcType=DECIMAL},
+            #{item.installFinishRate,jdbcType=DECIMAL}, #{item.active,jdbcType=BIGINT},
+            #{item.activeCost,jdbcType=DECIMAL},
+            #{item.activeRate,jdbcType=DECIMAL}, #{item.register,jdbcType=DECIMAL},
+            #{item.activeRegisterCost,jdbcType=DECIMAL},
+            #{item.activeRegisterRate,jdbcType=REAL}, #{item.nextDayOpen,jdbcType=BIGINT},
+            #{item.nextDayOpenCost,jdbcType=DECIMAL},
+            #{item.nextDayOpenRate,jdbcType=DECIMAL}, #{item.attributionNextDayOpenCnt,jdbcType=BIGINT},
+            #{item.attributionNextDayOpenCost,jdbcType=DECIMAL}, #{item.attributionNextDayOpenRate,jdbcType=DECIMAL},
+            #{item.gameAddiction,jdbcType=BIGINT}, #{item.gameAddictionCost,jdbcType=DECIMAL},
+            #{item.gameAddictionRate,jdbcType=DECIMAL},
+            #{item.payCount,jdbcType=BIGINT}, #{item.activePayCost,jdbcType=DECIMAL},
+            #{item.activePayRate,jdbcType=DECIMAL},
+            #{item.loanCompletion,jdbcType=BIGINT}, #{item.loanCompletionCost,jdbcType=DECIMAL},
+            #{item.loanCompletionRate,jdbcType=DECIMAL},
+            #{item.preLoanCredit,jdbcType=BIGINT}, #{item.preLoanCreditCost,jdbcType=DECIMAL},
+            #{item.loanCredit,jdbcType=BIGINT},
+            #{item.loanCreditCost,jdbcType=DECIMAL}, #{item.loanCreditRate,jdbcType=DECIMAL},
+            #{item.inAppUv,jdbcType=BIGINT},
+            #{item.inAppDetailUv,jdbcType=BIGINT}, #{item.inAppCart,jdbcType=BIGINT}, #{item.inAppPay,jdbcType=BIGINT},
+            #{item.inAppOrder,jdbcType=BIGINT}, #{item.attributionGamePay7dCount,jdbcType=BIGINT},
+            #{item.attributionGamePay7dCost,jdbcType=DECIMAL},
+            #{item.attributionActivePay7dPerCount,jdbcType=BIGINT}, #{item.gamePayCost,jdbcType=DECIMAL},
+            #{item.gamePayCount,jdbcType=BIGINT}, #{item.phone,jdbcType=BIGINT}, #{item.form,jdbcType=BIGINT},
+            #{item.mapSearch,jdbcType=BIGINT}, #{item.button,jdbcType=BIGINT}, #{item.view,jdbcType=BIGINT},
+            #{item.download,jdbcType=BIGINT}, #{item.qq,jdbcType=BIGINT}, #{item.lottery,jdbcType=BIGINT},
+            #{item.vote,jdbcType=BIGINT}, #{item.message,jdbcType=BIGINT}, #{item.redirect,jdbcType=BIGINT},
+            #{item.shopping,jdbcType=BIGINT}, #{item.consult,jdbcType=BIGINT}, #{item.wechat,jdbcType=BIGINT},
+            #{item.phoneConfirm,jdbcType=BIGINT}, #{item.phoneConnect,jdbcType=BIGINT},
+            #{item.consultEffective,jdbcType=BIGINT},
+            #{item.coupon,jdbcType=BIGINT}, #{item.couponSinglePage,jdbcType=BIGINT},
+            #{item.redirectToShop,jdbcType=BIGINT},
+            #{item.poiCollect,jdbcType=BIGINT}, #{item.poiAddressClick,jdbcType=BIGINT},
+            #{item.lubanOrderCnt,jdbcType=BIGINT},
+            #{item.lubanOrderStatAmount,jdbcType=DECIMAL}, #{item.lubanOrderRoi,jdbcType=DECIMAL},
+            #{item.lubanLiveEnterCnt,jdbcType=BIGINT},
+            #{item.liveWatchOneMinuteCount,jdbcType=BIGINT}, #{item.lubanLiveFollowCnt,jdbcType=BIGINT},
+            #{item.liveFansClubJoinCnt,jdbcType=BIGINT}, #{item.lubanLiveCommentCnt,jdbcType=BIGINT},
+            #{item.lubanLiveShareCnt,jdbcType=BIGINT}, #{item.lubanLiveGiftCnt,jdbcType=BIGINT},
+            #{item.lubanLiveGiftAmount,jdbcType=DECIMAL},
+            #{item.lubanLiveSlidecartClickCnt,jdbcType=BIGINT}, #{item.lubanLiveClickProductCnt,jdbcType=BIGINT},
+            #{item.lubanLivePayOrderCount,jdbcType=BIGINT}, #{item.lubanLivePayOrderStatCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickCount,jdbcType=BIGINT}, #{item.liveComponentClickCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickRate,jdbcType=DECIMAL}, #{item.wechatLoginCount,jdbcType=BIGINT},
+            #{item.attributionWechatLogin30dCount,jdbcType=BIGINT}, #{item.wechatLoginCost,jdbcType=DECIMAL},
+            #{item.attributionWechatLogin30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayCount,jdbcType=BIGINT},
+            #{item.attributionWechatFirstPay30dCount,jdbcType=BIGINT}, #{item.wechatFirstPayCost,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayRate,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dRate,jdbcType=DECIMAL}, #{item.wechatPayAmount,jdbcType=DECIMAL},
+            #{item.attributionWechatPay30dAmount,jdbcType=DECIMAL}, #{item.attributionWechatPay30dRoi,jdbcType=DECIMAL},
+            #{item.phoneEffective,jdbcType=BIGINT}, #{item.totalPlay,jdbcType=BIGINT},
+            #{item.validPlay,jdbcType=BIGINT},
+            #{item.validPlayCost,jdbcType=DECIMAL}, #{item.validPlayRate,jdbcType=DECIMAL},
+            #{item.play25FeedBreak,jdbcType=BIGINT},
+            #{item.play50FeedBreak,jdbcType=BIGINT}, #{item.play75FeedBreak,jdbcType=BIGINT},
+            #{item.play100FeedBreak,jdbcType=BIGINT},
+            #{item.averagePlayTimePerPlay,jdbcType=DECIMAL}, #{item.playOverRate,jdbcType=DECIMAL},
+            #{item.wifiPlayRate,jdbcType=DECIMAL},
+            #{item.wifiPlay,jdbcType=BIGINT}, #{item.playDurationSum,jdbcType=BIGINT},
+            #{item.advancedCreativePhoneClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCounselClick,jdbcType=BIGINT}, #{item.advancedCreativeFormClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCouponAddition,jdbcType=BIGINT}, #{item.advancedCreativeFormSubmit,jdbcType=BIGINT},
+            #{item.cardShow,jdbcType=BIGINT}, #{item.share,jdbcType=BIGINT}, #{item.comment,jdbcType=BIGINT},
+            #{item.like,jdbcType=BIGINT}, #{item.follow,jdbcType=BIGINT}, #{item.homeVisited,jdbcType=BIGINT},
+            #{item.iesChallengeClick,jdbcType=BIGINT}, #{item.iesMusicClick,jdbcType=BIGINT},
+            #{item.locationClick,jdbcType=BIGINT},
+            #{item.messageAction,jdbcType=BIGINT}, #{item.clickLandingPage,jdbcType=BIGINT},
+            #{item.clickShopwindow,jdbcType=BIGINT},
+            #{item.clickWebsite,jdbcType=BIGINT}, #{item.clickDownload,jdbcType=BIGINT},
+            #{item.clickCallDy,jdbcType=BIGINT},
+            #{item.submitCertificationCount,jdbcType=BIGINT}, #{item.approvalCount,jdbcType=BIGINT},
+            #{item.firstRentalOrderCount,jdbcType=BIGINT}, #{item.firstOrderCount,jdbcType=BIGINT},
+            #{item.commuteFirstPayCount,jdbcType=BIGINT}
+            )
+        </foreach>
+    </insert>
+
+</mapper>

+ 357 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAdvertiserReportDailyMapper.xml

@@ -0,0 +1,357 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceAdvertiserReportDailyMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceAdvertiserReportDaily">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER"/>
+        <result column="cost" property="cost" jdbcType="DECIMAL"/>
+        <result column="show" property="show" jdbcType="BIGINT"/>
+        <result column="avg_show_cost" property="avgShowCost" jdbcType="DECIMAL"/>
+        <result column="click" property="click" jdbcType="BIGINT"/>
+        <result column="avg_click_cost" property="avgClickCost" jdbcType="DECIMAL"/>
+        <result column="ctr" property="ctr" jdbcType="DECIMAL"/>
+        <result column="convert" property="convert" jdbcType="BIGINT"/>
+        <result column="convert_cost" property="convertCost" jdbcType="DECIMAL"/>
+        <result column="convert_rate" property="convertRate" jdbcType="DECIMAL"/>
+        <result column="deep_convert" property="deepConvert" jdbcType="BIGINT"/>
+        <result column="deep_convert_cost" property="deepConvertCost" jdbcType="DECIMAL"/>
+        <result column="deep_convert_rate" property="deepConvertRate" jdbcType="DECIMAL"/>
+        <result column="attribution_convert" property="attributionConvert" jdbcType="BIGINT"/>
+        <result column="attribution_convert_cost" property="attributionConvertCost" jdbcType="DECIMAL"/>
+        <result column="attribution_deep_convert" property="attributionDeepConvert" jdbcType="BIGINT"/>
+        <result column="attribution_deep_convert_cost" property="attributionDeepConvertCost" jdbcType="DECIMAL"/>
+        <result column="download_start" property="downloadStart" jdbcType="BIGINT"/>
+        <result column="download_start_cost" property="downloadStartCost" jdbcType="DECIMAL"/>
+        <result column="download_start_rate" property="downloadStartRate" jdbcType="DECIMAL"/>
+        <result column="download_finish" property="downloadFinish" jdbcType="BIGINT"/>
+        <result column="download_finish_cost" property="downloadFinishCost" jdbcType="DECIMAL"/>
+        <result column="download_finish_rate" property="downloadFinishRate" jdbcType="DECIMAL"/>
+        <result column="click_install" property="clickInstall" jdbcType="BIGINT"/>
+        <result column="install_finish" property="installFinish" jdbcType="BIGINT"/>
+        <result column="install_finish_cost" property="installFinishCost" jdbcType="DECIMAL"/>
+        <result column="install_finish_rate" property="installFinishRate" jdbcType="DECIMAL"/>
+        <result column="active" property="active" jdbcType="BIGINT"/>
+        <result column="active_cost" property="activeCost" jdbcType="DECIMAL"/>
+        <result column="active_rate" property="activeRate" jdbcType="DECIMAL"/>
+        <result column="register" property="register" jdbcType="DECIMAL"/>
+        <result column="active_register_cost" property="activeRegisterCost" jdbcType="DECIMAL"/>
+        <result column="active_register_rate" property="activeRegisterRate" jdbcType="REAL"/>
+        <result column="next_day_open" property="nextDayOpen" jdbcType="BIGINT"/>
+        <result column="next_day_open_cost" property="nextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="next_day_open_rate" property="nextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_cnt" property="attributionNextDayOpenCnt" jdbcType="BIGINT"/>
+        <result column="attribution_next_day_open_cost" property="attributionNextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_rate" property="attributionNextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="game_addiction" property="gameAddiction" jdbcType="BIGINT"/>
+        <result column="game_addiction_cost" property="gameAddictionCost" jdbcType="DECIMAL"/>
+        <result column="game_addiction_rate" property="gameAddictionRate" jdbcType="DECIMAL"/>
+        <result column="pay_count" property="payCount" jdbcType="BIGINT"/>
+        <result column="active_pay_cost" property="activePayCost" jdbcType="DECIMAL"/>
+        <result column="active_pay_rate" property="activePayRate" jdbcType="DECIMAL"/>
+        <result column="loan_completion" property="loanCompletion" jdbcType="BIGINT"/>
+        <result column="loan_completion_cost" property="loanCompletionCost" jdbcType="DECIMAL"/>
+        <result column="loan_completion_rate" property="loanCompletionRate" jdbcType="DECIMAL"/>
+        <result column="pre_loan_credit" property="preLoanCredit" jdbcType="BIGINT"/>
+        <result column="pre_loan_credit_cost" property="preLoanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit" property="loanCredit" jdbcType="BIGINT"/>
+        <result column="loan_credit_cost" property="loanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit_rate" property="loanCreditRate" jdbcType="DECIMAL"/>
+        <result column="in_app_uv" property="inAppUv" jdbcType="BIGINT"/>
+        <result column="in_app_detail_uv" property="inAppDetailUv" jdbcType="BIGINT"/>
+        <result column="in_app_cart" property="inAppCart" jdbcType="BIGINT"/>
+        <result column="in_app_pay" property="inAppPay" jdbcType="BIGINT"/>
+        <result column="in_app_order" property="inAppOrder" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_count" property="attributionGamePay7dCount" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_cost" property="attributionGamePay7dCost" jdbcType="DECIMAL"/>
+        <result column="attribution_active_pay_7d_per_count" property="attributionActivePay7dPerCount"
+                jdbcType="BIGINT"/>
+        <result column="game_pay_cost" property="gamePayCost" jdbcType="DECIMAL"/>
+        <result column="game_pay_count" property="gamePayCount" jdbcType="BIGINT"/>
+        <result column="phone" property="phone" jdbcType="BIGINT"/>
+        <result column="form" property="form" jdbcType="BIGINT"/>
+        <result column="map_search" property="mapSearch" jdbcType="BIGINT"/>
+        <result column="button" property="button" jdbcType="BIGINT"/>
+        <result column="view" property="view" jdbcType="BIGINT"/>
+        <result column="download" property="download" jdbcType="BIGINT"/>
+        <result column="qq" property="qq" jdbcType="BIGINT"/>
+        <result column="lottery" property="lottery" jdbcType="BIGINT"/>
+        <result column="vote" property="vote" jdbcType="BIGINT"/>
+        <result column="message" property="message" jdbcType="BIGINT"/>
+        <result column="redirect" property="redirect" jdbcType="BIGINT"/>
+        <result column="shopping" property="shopping" jdbcType="BIGINT"/>
+        <result column="consult" property="consult" jdbcType="BIGINT"/>
+        <result column="wechat" property="wechat" jdbcType="BIGINT"/>
+        <result column="phone_confirm" property="phoneConfirm" jdbcType="BIGINT"/>
+        <result column="phone_connect" property="phoneConnect" jdbcType="BIGINT"/>
+        <result column="consult_effective" property="consultEffective" jdbcType="BIGINT"/>
+        <result column="coupon" property="coupon" jdbcType="BIGINT"/>
+        <result column="coupon_single_page" property="couponSinglePage" jdbcType="BIGINT"/>
+        <result column="redirect_to_shop" property="redirectToShop" jdbcType="BIGINT"/>
+        <result column="poi_collect" property="poiCollect" jdbcType="BIGINT"/>
+        <result column="poi_address_click" property="poiAddressClick" jdbcType="BIGINT"/>
+        <result column="luban_order_cnt" property="lubanOrderCnt" jdbcType="BIGINT"/>
+        <result column="luban_order_stat_amount" property="lubanOrderStatAmount" jdbcType="DECIMAL"/>
+        <result column="luban_order_roi" property="lubanOrderRoi" jdbcType="DECIMAL"/>
+        <result column="luban_live_enter_cnt" property="lubanLiveEnterCnt" jdbcType="BIGINT"/>
+        <result column="live_watch_one_minute_count" property="liveWatchOneMinuteCount" jdbcType="BIGINT"/>
+        <result column="luban_live_follow_cnt" property="lubanLiveFollowCnt" jdbcType="BIGINT"/>
+        <result column="live_fans_club_join_cnt" property="liveFansClubJoinCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_comment_cnt" property="lubanLiveCommentCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_share_cnt" property="lubanLiveShareCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_cnt" property="lubanLiveGiftCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_amount" property="lubanLiveGiftAmount" jdbcType="DECIMAL"/>
+        <result column="luban_live_slidecart_click_cnt" property="lubanLiveSlidecartClickCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_click_product_cnt" property="lubanLiveClickProductCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_count" property="lubanLivePayOrderCount" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_stat_cost" property="lubanLivePayOrderStatCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_count" property="liveComponentClickCount" jdbcType="BIGINT"/>
+        <result column="live_component_click_cost" property="liveComponentClickCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_rate" property="liveComponentClickRate" jdbcType="DECIMAL"/>
+        <result column="wechat_login_count" property="wechatLoginCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_login_30d_count" property="attributionWechatLogin30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_login_cost" property="wechatLoginCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_login_30d_cost" property="attributionWechatLogin30dCost" jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_count" property="wechatFirstPayCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_first_pay_30d_count" property="attributionWechatFirstPay30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_first_pay_cost" property="wechatFirstPayCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_cost" property="attributionWechatFirstPay30dCost"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_rate" property="wechatFirstPayRate" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_rate" property="attributionWechatFirstPay30dRate"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_pay_amount" property="wechatPayAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_amount" property="attributionWechatPay30dAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_roi" property="attributionWechatPay30dRoi" jdbcType="DECIMAL"/>
+        <result column="phone_effective" property="phoneEffective" jdbcType="BIGINT"/>
+        <result column="total_play" property="totalPlay" jdbcType="BIGINT"/>
+        <result column="valid_play" property="validPlay" jdbcType="BIGINT"/>
+        <result column="valid_play_cost" property="validPlayCost" jdbcType="DECIMAL"/>
+        <result column="valid_play_rate" property="validPlayRate" jdbcType="DECIMAL"/>
+        <result column="play_25_feed_break" property="play25FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_50_feed_break" property="play50FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_75_feed_break" property="play75FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_100_feed_break" property="play100FeedBreak" jdbcType="BIGINT"/>
+        <result column="average_play_time_per_play" property="averagePlayTimePerPlay" jdbcType="DECIMAL"/>
+        <result column="play_over_rate" property="playOverRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play_rate" property="wifiPlayRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play" property="wifiPlay" jdbcType="BIGINT"/>
+        <result column="play_duration_sum" property="playDurationSum" jdbcType="BIGINT"/>
+        <result column="advanced_creative_phone_click" property="advancedCreativePhoneClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_counsel_click" property="advancedCreativeCounselClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_click" property="advancedCreativeFormClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_coupon_addition" property="advancedCreativeCouponAddition" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_submit" property="advancedCreativeFormSubmit" jdbcType="BIGINT"/>
+        <result column="card_show" property="cardShow" jdbcType="BIGINT"/>
+        <result column="share" property="share" jdbcType="BIGINT"/>
+        <result column="comment" property="comment" jdbcType="BIGINT"/>
+        <result column="like" property="like" jdbcType="BIGINT"/>
+        <result column="follow" property="follow" jdbcType="BIGINT"/>
+        <result column="home_visited" property="homeVisited" jdbcType="BIGINT"/>
+        <result column="ies_challenge_click" property="iesChallengeClick" jdbcType="BIGINT"/>
+        <result column="ies_music_click" property="iesMusicClick" jdbcType="BIGINT"/>
+        <result column="location_click" property="locationClick" jdbcType="BIGINT"/>
+        <result column="message_action" property="messageAction" jdbcType="BIGINT"/>
+        <result column="click_landing_page" property="clickLandingPage" jdbcType="BIGINT"/>
+        <result column="click_shopwindow" property="clickShopwindow" jdbcType="BIGINT"/>
+        <result column="click_website" property="clickWebsite" jdbcType="BIGINT"/>
+        <result column="click_download" property="clickDownload" jdbcType="BIGINT"/>
+        <result column="click_call_dy" property="clickCallDy" jdbcType="BIGINT"/>
+        <result column="submit_certification_count" property="submitCertificationCount" jdbcType="BIGINT"/>
+        <result column="approval_count" property="approvalCount" jdbcType="BIGINT"/>
+        <result column="first_rental_order_count" property="firstRentalOrderCount" jdbcType="BIGINT"/>
+        <result column="first_order_count" property="firstOrderCount" jdbcType="BIGINT"/>
+        <result column="commute_first_pay_count" property="commuteFirstPayCount" jdbcType="BIGINT"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, stat_datetime, cost, show, avg_show_cost, click, avg_click_cost, ctr, 
+    convert, convert_cost, convert_rate, deep_convert, deep_convert_cost, deep_convert_rate, 
+    attribution_convert, attribution_convert_cost, attribution_deep_convert, attribution_deep_convert_cost, 
+    download_start, download_start_cost, download_start_rate, download_finish, download_finish_cost, 
+    download_finish_rate, click_install, install_finish, install_finish_cost, install_finish_rate, 
+    active, active_cost, active_rate, register, active_register_cost, active_register_rate, 
+    next_day_open, next_day_open_cost, next_day_open_rate, attribution_next_day_open_cnt, 
+    attribution_next_day_open_cost, attribution_next_day_open_rate, game_addiction, game_addiction_cost, 
+    game_addiction_rate, pay_count, active_pay_cost, active_pay_rate, loan_completion, 
+    loan_completion_cost, loan_completion_rate, pre_loan_credit, pre_loan_credit_cost, 
+    loan_credit, loan_credit_cost, loan_credit_rate, in_app_uv, in_app_detail_uv, in_app_cart, 
+    in_app_pay, in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost, 
+    attribution_active_pay_7d_per_count, game_pay_cost, game_pay_count, phone, form, 
+    map_search, button, view, download, qq, lottery, vote, message, redirect, shopping, 
+    consult, wechat, phone_confirm, phone_connect, consult_effective, coupon, coupon_single_page, 
+    redirect_to_shop, poi_collect, poi_address_click, luban_order_cnt, luban_order_stat_amount, 
+    luban_order_roi, luban_live_enter_cnt, live_watch_one_minute_count, luban_live_follow_cnt, 
+    live_fans_club_join_cnt, luban_live_comment_cnt, luban_live_share_cnt, luban_live_gift_cnt, 
+    luban_live_gift_amount, luban_live_slidecart_click_cnt, luban_live_click_product_cnt, 
+    luban_live_pay_order_count, luban_live_pay_order_stat_cost, live_component_click_count, 
+    live_component_click_cost, live_component_click_rate, wechat_login_count, attribution_wechat_login_30d_count, 
+    wechat_login_cost, attribution_wechat_login_30d_cost, wechat_first_pay_count, attribution_wechat_first_pay_30d_count, 
+    wechat_first_pay_cost, attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, 
+    attribution_wechat_first_pay_30d_rate, wechat_pay_amount, attribution_wechat_pay_30d_amount, 
+    attribution_wechat_pay_30d_roi, phone_effective, total_play, valid_play, valid_play_cost, 
+    valid_play_rate, play_25_feed_break, play_50_feed_break, play_75_feed_break, play_100_feed_break, 
+    average_play_time_per_play, play_over_rate, wifi_play_rate, wifi_play, play_duration_sum, 
+    advanced_creative_phone_click, advanced_creative_counsel_click, advanced_creative_form_click, 
+    advanced_creative_coupon_addition, advanced_creative_form_submit, card_show, share, 
+    comment, like, follow, home_visited, ies_challenge_click, ies_music_click, location_click, 
+    message_action, click_landing_page, click_shopwindow, click_website, click_download, 
+    click_call_dy, submit_certification_count, approval_count, first_rental_order_count, 
+    first_order_count, commute_first_pay_count
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceAdvertiserReportDaily">
+        replace into bytedance_advertiser_report_daily (advertiser_id, stat_datetime, cost,
+        `show`, avg_show_cost, click,
+        avg_click_cost, ctr, `convert`,
+        convert_cost, convert_rate, deep_convert,
+        deep_convert_cost, deep_convert_rate, attribution_convert,
+        attribution_convert_cost, attribution_deep_convert,
+        attribution_deep_convert_cost, download_start,
+        download_start_cost, download_start_rate, download_finish,
+        download_finish_cost, download_finish_rate,
+        click_install, install_finish, install_finish_cost,
+        install_finish_rate, active, active_cost,
+        active_rate, register, active_register_cost,
+        active_register_rate, next_day_open, next_day_open_cost,
+        next_day_open_rate, attribution_next_day_open_cnt,
+        attribution_next_day_open_cost, attribution_next_day_open_rate,
+        game_addiction, game_addiction_cost, game_addiction_rate,
+        pay_count, active_pay_cost, active_pay_rate,
+        loan_completion, loan_completion_cost, loan_completion_rate,
+        pre_loan_credit, pre_loan_credit_cost, loan_credit,
+        loan_credit_cost, loan_credit_rate, in_app_uv,
+        in_app_detail_uv, in_app_cart, in_app_pay,
+        in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost,
+        attribution_active_pay_7d_per_count, game_pay_cost,
+        game_pay_count, phone, form,
+        map_search, button, `view`,
+        download, qq, lottery,
+        vote, message, redirect,
+        shopping, consult, wechat,
+        phone_confirm, phone_connect, consult_effective,
+        coupon, coupon_single_page, redirect_to_shop,
+        poi_collect, poi_address_click, luban_order_cnt,
+        luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt,
+        live_watch_one_minute_count, luban_live_follow_cnt,
+        live_fans_club_join_cnt, luban_live_comment_cnt,
+        luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount,
+        luban_live_slidecart_click_cnt, luban_live_click_product_cnt,
+        luban_live_pay_order_count, luban_live_pay_order_stat_cost,
+        live_component_click_count, live_component_click_cost,
+        live_component_click_rate, wechat_login_count,
+        attribution_wechat_login_30d_count, wechat_login_cost,
+        attribution_wechat_login_30d_cost, wechat_first_pay_count,
+        attribution_wechat_first_pay_30d_count, wechat_first_pay_cost,
+        attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate,
+        attribution_wechat_first_pay_30d_rate, wechat_pay_amount,
+        attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi,
+        phone_effective, total_play, valid_play,
+        valid_play_cost, valid_play_rate, play_25_feed_break,
+        play_50_feed_break, play_75_feed_break, play_100_feed_break,
+        average_play_time_per_play, play_over_rate, wifi_play_rate,
+        wifi_play, play_duration_sum, advanced_creative_phone_click,
+        advanced_creative_counsel_click, advanced_creative_form_click,
+        advanced_creative_coupon_addition, advanced_creative_form_submit,
+        card_show, `share`, `comment`,
+        `like`, follow, home_visited,
+        ies_challenge_click, ies_music_click, location_click,
+        message_action, click_landing_page, click_shopwindow,
+        click_website, click_download, click_call_dy,
+        submit_certification_count, approval_count,
+        first_rental_order_count, first_order_count, commute_first_pay_count
+        )
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.statDatetime,jdbcType=INTEGER}, #{item.cost,jdbcType=DECIMAL},
+            #{item.show,jdbcType=BIGINT}, #{item.avgShowCost,jdbcType=DECIMAL}, #{item.click,jdbcType=BIGINT},
+            #{item.avgClickCost,jdbcType=DECIMAL}, #{item.ctr,jdbcType=DECIMAL}, #{item.convert,jdbcType=BIGINT},
+            #{item.convertCost,jdbcType=DECIMAL}, #{item.convertRate,jdbcType=DECIMAL},
+            #{item.deepConvert,jdbcType=BIGINT},
+            #{item.deepConvertCost,jdbcType=DECIMAL}, #{item.deepConvertRate,jdbcType=DECIMAL},
+            #{item.attributionConvert,jdbcType=BIGINT},
+            #{item.attributionConvertCost,jdbcType=DECIMAL}, #{item.attributionDeepConvert,jdbcType=BIGINT},
+            #{item.attributionDeepConvertCost,jdbcType=DECIMAL}, #{item.downloadStart,jdbcType=BIGINT},
+            #{item.downloadStartCost,jdbcType=DECIMAL}, #{item.downloadStartRate,jdbcType=DECIMAL},
+            #{item.downloadFinish,jdbcType=BIGINT},
+            #{item.downloadFinishCost,jdbcType=DECIMAL}, #{item.downloadFinishRate,jdbcType=DECIMAL},
+            #{item.clickInstall,jdbcType=BIGINT}, #{item.installFinish,jdbcType=BIGINT},
+            #{item.installFinishCost,jdbcType=DECIMAL},
+            #{item.installFinishRate,jdbcType=DECIMAL}, #{item.active,jdbcType=BIGINT},
+            #{item.activeCost,jdbcType=DECIMAL},
+            #{item.activeRate,jdbcType=DECIMAL}, #{item.register,jdbcType=DECIMAL},
+            #{item.activeRegisterCost,jdbcType=DECIMAL},
+            #{item.activeRegisterRate,jdbcType=REAL}, #{item.nextDayOpen,jdbcType=BIGINT},
+            #{item.nextDayOpenCost,jdbcType=DECIMAL},
+            #{item.nextDayOpenRate,jdbcType=DECIMAL}, #{item.attributionNextDayOpenCnt,jdbcType=BIGINT},
+            #{item.attributionNextDayOpenCost,jdbcType=DECIMAL}, #{item.attributionNextDayOpenRate,jdbcType=DECIMAL},
+            #{item.gameAddiction,jdbcType=BIGINT}, #{item.gameAddictionCost,jdbcType=DECIMAL},
+            #{item.gameAddictionRate,jdbcType=DECIMAL},
+            #{item.payCount,jdbcType=BIGINT}, #{item.activePayCost,jdbcType=DECIMAL},
+            #{item.activePayRate,jdbcType=DECIMAL},
+            #{item.loanCompletion,jdbcType=BIGINT}, #{item.loanCompletionCost,jdbcType=DECIMAL},
+            #{item.loanCompletionRate,jdbcType=DECIMAL},
+            #{item.preLoanCredit,jdbcType=BIGINT}, #{item.preLoanCreditCost,jdbcType=DECIMAL},
+            #{item.loanCredit,jdbcType=BIGINT},
+            #{item.loanCreditCost,jdbcType=DECIMAL}, #{item.loanCreditRate,jdbcType=DECIMAL},
+            #{item.inAppUv,jdbcType=BIGINT},
+            #{item.inAppDetailUv,jdbcType=BIGINT}, #{item.inAppCart,jdbcType=BIGINT}, #{item.inAppPay,jdbcType=BIGINT},
+            #{item.inAppOrder,jdbcType=BIGINT}, #{item.attributionGamePay7dCount,jdbcType=BIGINT},
+            #{item.attributionGamePay7dCost,jdbcType=DECIMAL},
+            #{item.attributionActivePay7dPerCount,jdbcType=BIGINT}, #{item.gamePayCost,jdbcType=DECIMAL},
+            #{item.gamePayCount,jdbcType=BIGINT}, #{item.phone,jdbcType=BIGINT}, #{item.form,jdbcType=BIGINT},
+            #{item.mapSearch,jdbcType=BIGINT}, #{item.button,jdbcType=BIGINT}, #{item.view,jdbcType=BIGINT},
+            #{item.download,jdbcType=BIGINT}, #{item.qq,jdbcType=BIGINT}, #{item.lottery,jdbcType=BIGINT},
+            #{item.vote,jdbcType=BIGINT}, #{item.message,jdbcType=BIGINT}, #{item.redirect,jdbcType=BIGINT},
+            #{item.shopping,jdbcType=BIGINT}, #{item.consult,jdbcType=BIGINT}, #{item.wechat,jdbcType=BIGINT},
+            #{item.phoneConfirm,jdbcType=BIGINT}, #{item.phoneConnect,jdbcType=BIGINT},
+            #{item.consultEffective,jdbcType=BIGINT},
+            #{item.coupon,jdbcType=BIGINT}, #{item.couponSinglePage,jdbcType=BIGINT},
+            #{item.redirectToShop,jdbcType=BIGINT},
+            #{item.poiCollect,jdbcType=BIGINT}, #{item.poiAddressClick,jdbcType=BIGINT},
+            #{item.lubanOrderCnt,jdbcType=BIGINT},
+            #{item.lubanOrderStatAmount,jdbcType=DECIMAL}, #{item.lubanOrderRoi,jdbcType=DECIMAL},
+            #{item.lubanLiveEnterCnt,jdbcType=BIGINT},
+            #{item.liveWatchOneMinuteCount,jdbcType=BIGINT}, #{item.lubanLiveFollowCnt,jdbcType=BIGINT},
+            #{item.liveFansClubJoinCnt,jdbcType=BIGINT}, #{item.lubanLiveCommentCnt,jdbcType=BIGINT},
+            #{item.lubanLiveShareCnt,jdbcType=BIGINT}, #{item.lubanLiveGiftCnt,jdbcType=BIGINT},
+            #{item.lubanLiveGiftAmount,jdbcType=DECIMAL},
+            #{item.lubanLiveSlidecartClickCnt,jdbcType=BIGINT}, #{item.lubanLiveClickProductCnt,jdbcType=BIGINT},
+            #{item.lubanLivePayOrderCount,jdbcType=BIGINT}, #{item.lubanLivePayOrderStatCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickCount,jdbcType=BIGINT}, #{item.liveComponentClickCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickRate,jdbcType=DECIMAL}, #{item.wechatLoginCount,jdbcType=BIGINT},
+            #{item.attributionWechatLogin30dCount,jdbcType=BIGINT}, #{item.wechatLoginCost,jdbcType=DECIMAL},
+            #{item.attributionWechatLogin30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayCount,jdbcType=BIGINT},
+            #{item.attributionWechatFirstPay30dCount,jdbcType=BIGINT}, #{item.wechatFirstPayCost,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayRate,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dRate,jdbcType=DECIMAL}, #{item.wechatPayAmount,jdbcType=DECIMAL},
+            #{item.attributionWechatPay30dAmount,jdbcType=DECIMAL}, #{item.attributionWechatPay30dRoi,jdbcType=DECIMAL},
+            #{item.phoneEffective,jdbcType=BIGINT}, #{item.totalPlay,jdbcType=BIGINT},
+            #{item.validPlay,jdbcType=BIGINT},
+            #{item.validPlayCost,jdbcType=DECIMAL}, #{item.validPlayRate,jdbcType=DECIMAL},
+            #{item.play25FeedBreak,jdbcType=BIGINT},
+            #{item.play50FeedBreak,jdbcType=BIGINT}, #{item.play75FeedBreak,jdbcType=BIGINT},
+            #{item.play100FeedBreak,jdbcType=BIGINT},
+            #{item.averagePlayTimePerPlay,jdbcType=DECIMAL}, #{item.playOverRate,jdbcType=DECIMAL},
+            #{item.wifiPlayRate,jdbcType=DECIMAL},
+            #{item.wifiPlay,jdbcType=BIGINT}, #{item.playDurationSum,jdbcType=BIGINT},
+            #{item.advancedCreativePhoneClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCounselClick,jdbcType=BIGINT}, #{item.advancedCreativeFormClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCouponAddition,jdbcType=BIGINT}, #{item.advancedCreativeFormSubmit,jdbcType=BIGINT},
+            #{item.cardShow,jdbcType=BIGINT}, #{item.share,jdbcType=BIGINT}, #{item.comment,jdbcType=BIGINT},
+            #{item.like,jdbcType=BIGINT}, #{item.follow,jdbcType=BIGINT}, #{item.homeVisited,jdbcType=BIGINT},
+            #{item.iesChallengeClick,jdbcType=BIGINT}, #{item.iesMusicClick,jdbcType=BIGINT},
+            #{item.locationClick,jdbcType=BIGINT},
+            #{item.messageAction,jdbcType=BIGINT}, #{item.clickLandingPage,jdbcType=BIGINT},
+            #{item.clickShopwindow,jdbcType=BIGINT},
+            #{item.clickWebsite,jdbcType=BIGINT}, #{item.clickDownload,jdbcType=BIGINT},
+            #{item.clickCallDy,jdbcType=BIGINT},
+            #{item.submitCertificationCount,jdbcType=BIGINT}, #{item.approvalCount,jdbcType=BIGINT},
+            #{item.firstRentalOrderCount,jdbcType=BIGINT}, #{item.firstOrderCount,jdbcType=BIGINT},
+            #{item.commuteFirstPayCount,jdbcType=BIGINT}
+            )
+        </foreach>
+    </insert>
+
+</mapper>

+ 358 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAdvertiserReportHourlyMapper.xml

@@ -0,0 +1,358 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceAdvertiserReportHourlyMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceAdvertiserReportHourly">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER"/>
+        <id column="hour" property="hour" jdbcType="INTEGER"/>
+        <result column="cost" property="cost" jdbcType="DECIMAL"/>
+        <result column="show" property="show" jdbcType="BIGINT"/>
+        <result column="avg_show_cost" property="avgShowCost" jdbcType="DECIMAL"/>
+        <result column="click" property="click" jdbcType="BIGINT"/>
+        <result column="avg_click_cost" property="avgClickCost" jdbcType="DECIMAL"/>
+        <result column="ctr" property="ctr" jdbcType="DECIMAL"/>
+        <result column="convert" property="convert" jdbcType="BIGINT"/>
+        <result column="convert_cost" property="convertCost" jdbcType="DECIMAL"/>
+        <result column="convert_rate" property="convertRate" jdbcType="DECIMAL"/>
+        <result column="deep_convert" property="deepConvert" jdbcType="BIGINT"/>
+        <result column="deep_convert_cost" property="deepConvertCost" jdbcType="DECIMAL"/>
+        <result column="deep_convert_rate" property="deepConvertRate" jdbcType="DECIMAL"/>
+        <result column="attribution_convert" property="attributionConvert" jdbcType="BIGINT"/>
+        <result column="attribution_convert_cost" property="attributionConvertCost" jdbcType="DECIMAL"/>
+        <result column="attribution_deep_convert" property="attributionDeepConvert" jdbcType="BIGINT"/>
+        <result column="attribution_deep_convert_cost" property="attributionDeepConvertCost" jdbcType="DECIMAL"/>
+        <result column="download_start" property="downloadStart" jdbcType="BIGINT"/>
+        <result column="download_start_cost" property="downloadStartCost" jdbcType="DECIMAL"/>
+        <result column="download_start_rate" property="downloadStartRate" jdbcType="DECIMAL"/>
+        <result column="download_finish" property="downloadFinish" jdbcType="BIGINT"/>
+        <result column="download_finish_cost" property="downloadFinishCost" jdbcType="DECIMAL"/>
+        <result column="download_finish_rate" property="downloadFinishRate" jdbcType="DECIMAL"/>
+        <result column="click_install" property="clickInstall" jdbcType="BIGINT"/>
+        <result column="install_finish" property="installFinish" jdbcType="BIGINT"/>
+        <result column="install_finish_cost" property="installFinishCost" jdbcType="DECIMAL"/>
+        <result column="install_finish_rate" property="installFinishRate" jdbcType="DECIMAL"/>
+        <result column="active" property="active" jdbcType="BIGINT"/>
+        <result column="active_cost" property="activeCost" jdbcType="DECIMAL"/>
+        <result column="active_rate" property="activeRate" jdbcType="DECIMAL"/>
+        <result column="register" property="register" jdbcType="DECIMAL"/>
+        <result column="active_register_cost" property="activeRegisterCost" jdbcType="DECIMAL"/>
+        <result column="active_register_rate" property="activeRegisterRate" jdbcType="REAL"/>
+        <result column="next_day_open" property="nextDayOpen" jdbcType="BIGINT"/>
+        <result column="next_day_open_cost" property="nextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="next_day_open_rate" property="nextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_cnt" property="attributionNextDayOpenCnt" jdbcType="BIGINT"/>
+        <result column="attribution_next_day_open_cost" property="attributionNextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_rate" property="attributionNextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="game_addiction" property="gameAddiction" jdbcType="BIGINT"/>
+        <result column="game_addiction_cost" property="gameAddictionCost" jdbcType="DECIMAL"/>
+        <result column="game_addiction_rate" property="gameAddictionRate" jdbcType="DECIMAL"/>
+        <result column="pay_count" property="payCount" jdbcType="BIGINT"/>
+        <result column="active_pay_cost" property="activePayCost" jdbcType="DECIMAL"/>
+        <result column="active_pay_rate" property="activePayRate" jdbcType="DECIMAL"/>
+        <result column="loan_completion" property="loanCompletion" jdbcType="BIGINT"/>
+        <result column="loan_completion_cost" property="loanCompletionCost" jdbcType="DECIMAL"/>
+        <result column="loan_completion_rate" property="loanCompletionRate" jdbcType="DECIMAL"/>
+        <result column="pre_loan_credit" property="preLoanCredit" jdbcType="BIGINT"/>
+        <result column="pre_loan_credit_cost" property="preLoanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit" property="loanCredit" jdbcType="BIGINT"/>
+        <result column="loan_credit_cost" property="loanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit_rate" property="loanCreditRate" jdbcType="DECIMAL"/>
+        <result column="in_app_uv" property="inAppUv" jdbcType="BIGINT"/>
+        <result column="in_app_detail_uv" property="inAppDetailUv" jdbcType="BIGINT"/>
+        <result column="in_app_cart" property="inAppCart" jdbcType="BIGINT"/>
+        <result column="in_app_pay" property="inAppPay" jdbcType="BIGINT"/>
+        <result column="in_app_order" property="inAppOrder" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_count" property="attributionGamePay7dCount" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_cost" property="attributionGamePay7dCost" jdbcType="DECIMAL"/>
+        <result column="attribution_active_pay_7d_per_count" property="attributionActivePay7dPerCount"
+                jdbcType="BIGINT"/>
+        <result column="game_pay_cost" property="gamePayCost" jdbcType="DECIMAL"/>
+        <result column="game_pay_count" property="gamePayCount" jdbcType="BIGINT"/>
+        <result column="phone" property="phone" jdbcType="BIGINT"/>
+        <result column="form" property="form" jdbcType="BIGINT"/>
+        <result column="map_search" property="mapSearch" jdbcType="BIGINT"/>
+        <result column="button" property="button" jdbcType="BIGINT"/>
+        <result column="view" property="view" jdbcType="BIGINT"/>
+        <result column="download" property="download" jdbcType="BIGINT"/>
+        <result column="qq" property="qq" jdbcType="BIGINT"/>
+        <result column="lottery" property="lottery" jdbcType="BIGINT"/>
+        <result column="vote" property="vote" jdbcType="BIGINT"/>
+        <result column="message" property="message" jdbcType="BIGINT"/>
+        <result column="redirect" property="redirect" jdbcType="BIGINT"/>
+        <result column="shopping" property="shopping" jdbcType="BIGINT"/>
+        <result column="consult" property="consult" jdbcType="BIGINT"/>
+        <result column="wechat" property="wechat" jdbcType="BIGINT"/>
+        <result column="phone_confirm" property="phoneConfirm" jdbcType="BIGINT"/>
+        <result column="phone_connect" property="phoneConnect" jdbcType="BIGINT"/>
+        <result column="consult_effective" property="consultEffective" jdbcType="BIGINT"/>
+        <result column="coupon" property="coupon" jdbcType="BIGINT"/>
+        <result column="coupon_single_page" property="couponSinglePage" jdbcType="BIGINT"/>
+        <result column="redirect_to_shop" property="redirectToShop" jdbcType="BIGINT"/>
+        <result column="poi_collect" property="poiCollect" jdbcType="BIGINT"/>
+        <result column="poi_address_click" property="poiAddressClick" jdbcType="BIGINT"/>
+        <result column="luban_order_cnt" property="lubanOrderCnt" jdbcType="BIGINT"/>
+        <result column="luban_order_stat_amount" property="lubanOrderStatAmount" jdbcType="DECIMAL"/>
+        <result column="luban_order_roi" property="lubanOrderRoi" jdbcType="DECIMAL"/>
+        <result column="luban_live_enter_cnt" property="lubanLiveEnterCnt" jdbcType="BIGINT"/>
+        <result column="live_watch_one_minute_count" property="liveWatchOneMinuteCount" jdbcType="BIGINT"/>
+        <result column="luban_live_follow_cnt" property="lubanLiveFollowCnt" jdbcType="BIGINT"/>
+        <result column="live_fans_club_join_cnt" property="liveFansClubJoinCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_comment_cnt" property="lubanLiveCommentCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_share_cnt" property="lubanLiveShareCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_cnt" property="lubanLiveGiftCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_amount" property="lubanLiveGiftAmount" jdbcType="DECIMAL"/>
+        <result column="luban_live_slidecart_click_cnt" property="lubanLiveSlidecartClickCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_click_product_cnt" property="lubanLiveClickProductCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_count" property="lubanLivePayOrderCount" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_stat_cost" property="lubanLivePayOrderStatCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_count" property="liveComponentClickCount" jdbcType="BIGINT"/>
+        <result column="live_component_click_cost" property="liveComponentClickCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_rate" property="liveComponentClickRate" jdbcType="DECIMAL"/>
+        <result column="wechat_login_count" property="wechatLoginCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_login_30d_count" property="attributionWechatLogin30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_login_cost" property="wechatLoginCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_login_30d_cost" property="attributionWechatLogin30dCost" jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_count" property="wechatFirstPayCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_first_pay_30d_count" property="attributionWechatFirstPay30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_first_pay_cost" property="wechatFirstPayCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_cost" property="attributionWechatFirstPay30dCost"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_rate" property="wechatFirstPayRate" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_rate" property="attributionWechatFirstPay30dRate"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_pay_amount" property="wechatPayAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_amount" property="attributionWechatPay30dAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_roi" property="attributionWechatPay30dRoi" jdbcType="DECIMAL"/>
+        <result column="phone_effective" property="phoneEffective" jdbcType="BIGINT"/>
+        <result column="total_play" property="totalPlay" jdbcType="BIGINT"/>
+        <result column="valid_play" property="validPlay" jdbcType="BIGINT"/>
+        <result column="valid_play_cost" property="validPlayCost" jdbcType="DECIMAL"/>
+        <result column="valid_play_rate" property="validPlayRate" jdbcType="DECIMAL"/>
+        <result column="play_25_feed_break" property="play25FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_50_feed_break" property="play50FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_75_feed_break" property="play75FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_100_feed_break" property="play100FeedBreak" jdbcType="BIGINT"/>
+        <result column="average_play_time_per_play" property="averagePlayTimePerPlay" jdbcType="DECIMAL"/>
+        <result column="play_over_rate" property="playOverRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play_rate" property="wifiPlayRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play" property="wifiPlay" jdbcType="BIGINT"/>
+        <result column="play_duration_sum" property="playDurationSum" jdbcType="BIGINT"/>
+        <result column="advanced_creative_phone_click" property="advancedCreativePhoneClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_counsel_click" property="advancedCreativeCounselClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_click" property="advancedCreativeFormClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_coupon_addition" property="advancedCreativeCouponAddition" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_submit" property="advancedCreativeFormSubmit" jdbcType="BIGINT"/>
+        <result column="card_show" property="cardShow" jdbcType="BIGINT"/>
+        <result column="share" property="share" jdbcType="BIGINT"/>
+        <result column="comment" property="comment" jdbcType="BIGINT"/>
+        <result column="like" property="like" jdbcType="BIGINT"/>
+        <result column="follow" property="follow" jdbcType="BIGINT"/>
+        <result column="home_visited" property="homeVisited" jdbcType="BIGINT"/>
+        <result column="ies_challenge_click" property="iesChallengeClick" jdbcType="BIGINT"/>
+        <result column="ies_music_click" property="iesMusicClick" jdbcType="BIGINT"/>
+        <result column="location_click" property="locationClick" jdbcType="BIGINT"/>
+        <result column="message_action" property="messageAction" jdbcType="BIGINT"/>
+        <result column="click_landing_page" property="clickLandingPage" jdbcType="BIGINT"/>
+        <result column="click_shopwindow" property="clickShopwindow" jdbcType="BIGINT"/>
+        <result column="click_website" property="clickWebsite" jdbcType="BIGINT"/>
+        <result column="click_download" property="clickDownload" jdbcType="BIGINT"/>
+        <result column="click_call_dy" property="clickCallDy" jdbcType="BIGINT"/>
+        <result column="submit_certification_count" property="submitCertificationCount" jdbcType="BIGINT"/>
+        <result column="approval_count" property="approvalCount" jdbcType="BIGINT"/>
+        <result column="first_rental_order_count" property="firstRentalOrderCount" jdbcType="BIGINT"/>
+        <result column="first_order_count" property="firstOrderCount" jdbcType="BIGINT"/>
+        <result column="commute_first_pay_count" property="commuteFirstPayCount" jdbcType="BIGINT"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, stat_datetime, hour, cost, show, avg_show_cost, click, avg_click_cost, 
+    ctr, convert, convert_cost, convert_rate, deep_convert, deep_convert_cost, deep_convert_rate, 
+    attribution_convert, attribution_convert_cost, attribution_deep_convert, attribution_deep_convert_cost, 
+    download_start, download_start_cost, download_start_rate, download_finish, download_finish_cost, 
+    download_finish_rate, click_install, install_finish, install_finish_cost, install_finish_rate, 
+    active, active_cost, active_rate, register, active_register_cost, active_register_rate, 
+    next_day_open, next_day_open_cost, next_day_open_rate, attribution_next_day_open_cnt, 
+    attribution_next_day_open_cost, attribution_next_day_open_rate, game_addiction, game_addiction_cost, 
+    game_addiction_rate, pay_count, active_pay_cost, active_pay_rate, loan_completion, 
+    loan_completion_cost, loan_completion_rate, pre_loan_credit, pre_loan_credit_cost, 
+    loan_credit, loan_credit_cost, loan_credit_rate, in_app_uv, in_app_detail_uv, in_app_cart, 
+    in_app_pay, in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost, 
+    attribution_active_pay_7d_per_count, game_pay_cost, game_pay_count, phone, form, 
+    map_search, button, view, download, qq, lottery, vote, message, redirect, shopping, 
+    consult, wechat, phone_confirm, phone_connect, consult_effective, coupon, coupon_single_page, 
+    redirect_to_shop, poi_collect, poi_address_click, luban_order_cnt, luban_order_stat_amount, 
+    luban_order_roi, luban_live_enter_cnt, live_watch_one_minute_count, luban_live_follow_cnt, 
+    live_fans_club_join_cnt, luban_live_comment_cnt, luban_live_share_cnt, luban_live_gift_cnt, 
+    luban_live_gift_amount, luban_live_slidecart_click_cnt, luban_live_click_product_cnt, 
+    luban_live_pay_order_count, luban_live_pay_order_stat_cost, live_component_click_count, 
+    live_component_click_cost, live_component_click_rate, wechat_login_count, attribution_wechat_login_30d_count, 
+    wechat_login_cost, attribution_wechat_login_30d_cost, wechat_first_pay_count, attribution_wechat_first_pay_30d_count, 
+    wechat_first_pay_cost, attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, 
+    attribution_wechat_first_pay_30d_rate, wechat_pay_amount, attribution_wechat_pay_30d_amount, 
+    attribution_wechat_pay_30d_roi, phone_effective, total_play, valid_play, valid_play_cost, 
+    valid_play_rate, play_25_feed_break, play_50_feed_break, play_75_feed_break, play_100_feed_break, 
+    average_play_time_per_play, play_over_rate, wifi_play_rate, wifi_play, play_duration_sum, 
+    advanced_creative_phone_click, advanced_creative_counsel_click, advanced_creative_form_click, 
+    advanced_creative_coupon_addition, advanced_creative_form_submit, card_show, share, 
+    comment, like, follow, home_visited, ies_challenge_click, ies_music_click, location_click, 
+    message_action, click_landing_page, click_shopwindow, click_website, click_download, 
+    click_call_dy, submit_certification_count, approval_count, first_rental_order_count, 
+    first_order_count, commute_first_pay_count
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceAdvertiserReportHourly">
+        replace into bytedance_advertiser_report_hourly (advertiser_id, stat_datetime, `hour`,
+        cost, `show`, avg_show_cost,
+        click, avg_click_cost, ctr,
+        `convert`, convert_cost, convert_rate,
+        deep_convert, deep_convert_cost, deep_convert_rate,
+        attribution_convert, attribution_convert_cost,
+        attribution_deep_convert, attribution_deep_convert_cost,
+        download_start, download_start_cost, download_start_rate,
+        download_finish, download_finish_cost, download_finish_rate,
+        click_install, install_finish, install_finish_cost,
+        install_finish_rate, active, active_cost,
+        active_rate, register, active_register_cost,
+        active_register_rate, next_day_open, next_day_open_cost,
+        next_day_open_rate, attribution_next_day_open_cnt,
+        attribution_next_day_open_cost, attribution_next_day_open_rate,
+        game_addiction, game_addiction_cost, game_addiction_rate,
+        pay_count, active_pay_cost, active_pay_rate,
+        loan_completion, loan_completion_cost, loan_completion_rate,
+        pre_loan_credit, pre_loan_credit_cost, loan_credit,
+        loan_credit_cost, loan_credit_rate, in_app_uv,
+        in_app_detail_uv, in_app_cart, in_app_pay,
+        in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost,
+        attribution_active_pay_7d_per_count, game_pay_cost,
+        game_pay_count, phone, form,
+        map_search, button, `view`,
+        download, qq, lottery,
+        vote, message, redirect,
+        shopping, consult, wechat,
+        phone_confirm, phone_connect, consult_effective,
+        coupon, coupon_single_page, redirect_to_shop,
+        poi_collect, poi_address_click, luban_order_cnt,
+        luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt,
+        live_watch_one_minute_count, luban_live_follow_cnt,
+        live_fans_club_join_cnt, luban_live_comment_cnt,
+        luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount,
+        luban_live_slidecart_click_cnt, luban_live_click_product_cnt,
+        luban_live_pay_order_count, luban_live_pay_order_stat_cost,
+        live_component_click_count, live_component_click_cost,
+        live_component_click_rate, wechat_login_count,
+        attribution_wechat_login_30d_count, wechat_login_cost,
+        attribution_wechat_login_30d_cost, wechat_first_pay_count,
+        attribution_wechat_first_pay_30d_count, wechat_first_pay_cost,
+        attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate,
+        attribution_wechat_first_pay_30d_rate, wechat_pay_amount,
+        attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi,
+        phone_effective, total_play, valid_play,
+        valid_play_cost, valid_play_rate, play_25_feed_break,
+        play_50_feed_break, play_75_feed_break, play_100_feed_break,
+        average_play_time_per_play, play_over_rate, wifi_play_rate,
+        wifi_play, play_duration_sum, advanced_creative_phone_click,
+        advanced_creative_counsel_click, advanced_creative_form_click,
+        advanced_creative_coupon_addition, advanced_creative_form_submit,
+        card_show, `share`, `comment`,
+        `like`, follow, home_visited,
+        ies_challenge_click, ies_music_click, location_click,
+        message_action, click_landing_page, click_shopwindow,
+        click_website, click_download, click_call_dy,
+        submit_certification_count, approval_count,
+        first_rental_order_count, first_order_count, commute_first_pay_count
+        )
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.statDatetime,jdbcType=INTEGER}, #{item.hour,jdbcType=INTEGER},
+            #{item.cost,jdbcType=DECIMAL}, #{item.show,jdbcType=BIGINT}, #{item.avgShowCost,jdbcType=DECIMAL},
+            #{item.click,jdbcType=BIGINT}, #{item.avgClickCost,jdbcType=DECIMAL}, #{item.ctr,jdbcType=DECIMAL},
+            #{item.convert,jdbcType=BIGINT}, #{item.convertCost,jdbcType=DECIMAL}, #{item.convertRate,jdbcType=DECIMAL},
+            #{item.deepConvert,jdbcType=BIGINT}, #{item.deepConvertCost,jdbcType=DECIMAL},
+            #{item.deepConvertRate,jdbcType=DECIMAL},
+            #{item.attributionConvert,jdbcType=BIGINT}, #{item.attributionConvertCost,jdbcType=DECIMAL},
+            #{item.attributionDeepConvert,jdbcType=BIGINT}, #{item.attributionDeepConvertCost,jdbcType=DECIMAL},
+            #{item.downloadStart,jdbcType=BIGINT}, #{item.downloadStartCost,jdbcType=DECIMAL},
+            #{item.downloadStartRate,jdbcType=DECIMAL},
+            #{item.downloadFinish,jdbcType=BIGINT}, #{item.downloadFinishCost,jdbcType=DECIMAL},
+            #{item.downloadFinishRate,jdbcType=DECIMAL},
+            #{item.clickInstall,jdbcType=BIGINT}, #{item.installFinish,jdbcType=BIGINT},
+            #{item.installFinishCost,jdbcType=DECIMAL},
+            #{item.installFinishRate,jdbcType=DECIMAL}, #{item.active,jdbcType=BIGINT},
+            #{item.activeCost,jdbcType=DECIMAL},
+            #{item.activeRate,jdbcType=DECIMAL}, #{item.register,jdbcType=DECIMAL},
+            #{item.activeRegisterCost,jdbcType=DECIMAL},
+            #{item.activeRegisterRate,jdbcType=REAL}, #{item.nextDayOpen,jdbcType=BIGINT},
+            #{item.nextDayOpenCost,jdbcType=DECIMAL},
+            #{item.nextDayOpenRate,jdbcType=DECIMAL}, #{item.attributionNextDayOpenCnt,jdbcType=BIGINT},
+            #{item.attributionNextDayOpenCost,jdbcType=DECIMAL}, #{item.attributionNextDayOpenRate,jdbcType=DECIMAL},
+            #{item.gameAddiction,jdbcType=BIGINT}, #{item.gameAddictionCost,jdbcType=DECIMAL},
+            #{item.gameAddictionRate,jdbcType=DECIMAL},
+            #{item.payCount,jdbcType=BIGINT}, #{item.activePayCost,jdbcType=DECIMAL},
+            #{item.activePayRate,jdbcType=DECIMAL},
+            #{item.loanCompletion,jdbcType=BIGINT}, #{item.loanCompletionCost,jdbcType=DECIMAL},
+            #{item.loanCompletionRate,jdbcType=DECIMAL},
+            #{item.preLoanCredit,jdbcType=BIGINT}, #{item.preLoanCreditCost,jdbcType=DECIMAL},
+            #{item.loanCredit,jdbcType=BIGINT},
+            #{item.loanCreditCost,jdbcType=DECIMAL}, #{item.loanCreditRate,jdbcType=DECIMAL},
+            #{item.inAppUv,jdbcType=BIGINT},
+            #{item.inAppDetailUv,jdbcType=BIGINT}, #{item.inAppCart,jdbcType=BIGINT}, #{item.inAppPay,jdbcType=BIGINT},
+            #{item.inAppOrder,jdbcType=BIGINT}, #{item.attributionGamePay7dCount,jdbcType=BIGINT},
+            #{item.attributionGamePay7dCost,jdbcType=DECIMAL},
+            #{item.attributionActivePay7dPerCount,jdbcType=BIGINT}, #{item.gamePayCost,jdbcType=DECIMAL},
+            #{item.gamePayCount,jdbcType=BIGINT}, #{item.phone,jdbcType=BIGINT}, #{item.form,jdbcType=BIGINT},
+            #{item.mapSearch,jdbcType=BIGINT}, #{item.button,jdbcType=BIGINT}, #{item.view,jdbcType=BIGINT},
+            #{item.download,jdbcType=BIGINT}, #{item.qq,jdbcType=BIGINT}, #{item.lottery,jdbcType=BIGINT},
+            #{item.vote,jdbcType=BIGINT}, #{item.message,jdbcType=BIGINT}, #{item.redirect,jdbcType=BIGINT},
+            #{item.shopping,jdbcType=BIGINT}, #{item.consult,jdbcType=BIGINT}, #{item.wechat,jdbcType=BIGINT},
+            #{item.phoneConfirm,jdbcType=BIGINT}, #{item.phoneConnect,jdbcType=BIGINT},
+            #{item.consultEffective,jdbcType=BIGINT},
+            #{item.coupon,jdbcType=BIGINT}, #{item.couponSinglePage,jdbcType=BIGINT},
+            #{item.redirectToShop,jdbcType=BIGINT},
+            #{item.poiCollect,jdbcType=BIGINT}, #{item.poiAddressClick,jdbcType=BIGINT},
+            #{item.lubanOrderCnt,jdbcType=BIGINT},
+            #{item.lubanOrderStatAmount,jdbcType=DECIMAL}, #{item.lubanOrderRoi,jdbcType=DECIMAL},
+            #{item.lubanLiveEnterCnt,jdbcType=BIGINT},
+            #{item.liveWatchOneMinuteCount,jdbcType=BIGINT}, #{item.lubanLiveFollowCnt,jdbcType=BIGINT},
+            #{item.liveFansClubJoinCnt,jdbcType=BIGINT}, #{item.lubanLiveCommentCnt,jdbcType=BIGINT},
+            #{item.lubanLiveShareCnt,jdbcType=BIGINT}, #{item.lubanLiveGiftCnt,jdbcType=BIGINT},
+            #{item.lubanLiveGiftAmount,jdbcType=DECIMAL},
+            #{item.lubanLiveSlidecartClickCnt,jdbcType=BIGINT}, #{item.lubanLiveClickProductCnt,jdbcType=BIGINT},
+            #{item.lubanLivePayOrderCount,jdbcType=BIGINT}, #{item.lubanLivePayOrderStatCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickCount,jdbcType=BIGINT}, #{item.liveComponentClickCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickRate,jdbcType=DECIMAL}, #{item.wechatLoginCount,jdbcType=BIGINT},
+            #{item.attributionWechatLogin30dCount,jdbcType=BIGINT}, #{item.wechatLoginCost,jdbcType=DECIMAL},
+            #{item.attributionWechatLogin30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayCount,jdbcType=BIGINT},
+            #{item.attributionWechatFirstPay30dCount,jdbcType=BIGINT}, #{item.wechatFirstPayCost,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayRate,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dRate,jdbcType=DECIMAL}, #{item.wechatPayAmount,jdbcType=DECIMAL},
+            #{item.attributionWechatPay30dAmount,jdbcType=DECIMAL}, #{item.attributionWechatPay30dRoi,jdbcType=DECIMAL},
+            #{item.phoneEffective,jdbcType=BIGINT}, #{item.totalPlay,jdbcType=BIGINT},
+            #{item.validPlay,jdbcType=BIGINT},
+            #{item.validPlayCost,jdbcType=DECIMAL}, #{item.validPlayRate,jdbcType=DECIMAL},
+            #{item.play25FeedBreak,jdbcType=BIGINT},
+            #{item.play50FeedBreak,jdbcType=BIGINT}, #{item.play75FeedBreak,jdbcType=BIGINT},
+            #{item.play100FeedBreak,jdbcType=BIGINT},
+            #{item.averagePlayTimePerPlay,jdbcType=DECIMAL}, #{item.playOverRate,jdbcType=DECIMAL},
+            #{item.wifiPlayRate,jdbcType=DECIMAL},
+            #{item.wifiPlay,jdbcType=BIGINT}, #{item.playDurationSum,jdbcType=BIGINT},
+            #{item.advancedCreativePhoneClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCounselClick,jdbcType=BIGINT}, #{item.advancedCreativeFormClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCouponAddition,jdbcType=BIGINT}, #{item.advancedCreativeFormSubmit,jdbcType=BIGINT},
+            #{item.cardShow,jdbcType=BIGINT}, #{item.share,jdbcType=BIGINT}, #{item.comment,jdbcType=BIGINT},
+            #{item.like,jdbcType=BIGINT}, #{item.follow,jdbcType=BIGINT}, #{item.homeVisited,jdbcType=BIGINT},
+            #{item.iesChallengeClick,jdbcType=BIGINT}, #{item.iesMusicClick,jdbcType=BIGINT},
+            #{item.locationClick,jdbcType=BIGINT},
+            #{item.messageAction,jdbcType=BIGINT}, #{item.clickLandingPage,jdbcType=BIGINT},
+            #{item.clickShopwindow,jdbcType=BIGINT},
+            #{item.clickWebsite,jdbcType=BIGINT}, #{item.clickDownload,jdbcType=BIGINT},
+            #{item.clickCallDy,jdbcType=BIGINT},
+            #{item.submitCertificationCount,jdbcType=BIGINT}, #{item.approvalCount,jdbcType=BIGINT},
+            #{item.firstRentalOrderCount,jdbcType=BIGINT}, #{item.firstOrderCount,jdbcType=BIGINT},
+            #{item.commuteFirstPayCount,jdbcType=BIGINT}
+            )
+        </foreach>
+    </insert>
+
+</mapper>

+ 82 - 3
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAgentReportDailyMapper.xml

@@ -1,5 +1,84 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceAgentReportDailyMapper">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceAgentReportDailyMapper" >
+  <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceAgentReportDaily" >
+    <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT" />
+    <id column="agent_id" property="agentId" jdbcType="BIGINT" />
+    <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER" />
+    <result column="agent_name" property="agentName" jdbcType="VARCHAR" />
+    <result column="advertiser_name" property="advertiserName" jdbcType="VARCHAR" />
+    <result column="second_industry" property="secondIndustry" jdbcType="VARCHAR" />
+    <result column="first_industry" property="firstIndustry" jdbcType="VARCHAR" />
+    <result column="account_source" property="accountSource" jdbcType="VARCHAR" />
+    <result column="audit_pass_time" property="auditPassTime" jdbcType="VARCHAR" />
+    <result column="account_status" property="accountStatus" jdbcType="VARCHAR" />
+    <result column="company_id" property="companyId" jdbcType="BIGINT" />
+    <result column="company_name" property="companyName" jdbcType="VARCHAR" />
+    <result column="register_time" property="registerTime" jdbcType="VARCHAR" />
+    <result column="cost" property="cost" jdbcType="DECIMAL" />
+    <result column="cash_cost" property="cashCost" jdbcType="DECIMAL" />
+    <result column="bid_cost" property="bidCost" jdbcType="DECIMAL" />
+    <result column="brand_cost" property="brandCost" jdbcType="DECIMAL" />
+    <result column="grants_cost" property="grantsCost" jdbcType="DECIMAL" />
+    <result column="cpc_cost" property="cpcCost" jdbcType="DECIMAL" />
+    <result column="cpm_cost" property="cpmCost" jdbcType="DECIMAL" />
+    <result column="ocpc_cost" property="ocpcCost" jdbcType="DECIMAL" />
+    <result column="cpa_cost" property="cpaCost" jdbcType="DECIMAL" />
+    <result column="ocpm_cost" property="ocpmCost" jdbcType="DECIMAL" />
+    <result column="cpv_cost" property="cpvCost" jdbcType="DECIMAL" />
+    <result column="cpt_cost" property="cptCost" jdbcType="DECIMAL" />
+    <result column="gd_cost" property="gdCost" jdbcType="DECIMAL" />
+    <result column="show" property="show" jdbcType="BIGINT" />
+    <result column="cpm" property="cpm" jdbcType="VARCHAR" />
+    <result column="click" property="click" jdbcType="BIGINT" />
+    <result column="ctr" property="ctr" jdbcType="DECIMAL" />
+    <result column="cpc" property="cpc" jdbcType="DECIMAL" />
+    <result column="transfer_count" property="transferCount" jdbcType="BIGINT" />
+    <result column="today_cost" property="todayCost" jdbcType="DECIMAL" />
+    <result column="transfer_amount" property="transferAmount" jdbcType="DECIMAL" />
+    <result column="history_cost" property="historyCost" jdbcType="DECIMAL" />
+    <result column="register_days" property="registerDays" jdbcType="DECIMAL" />
+    <result column="first_cost_time" property="firstCostTime" jdbcType="VARCHAR" />
+  </resultMap>
+
+  <sql id="Base_Column_List" >
+    advertiser_id, agent_id, stat_datetime, agent_name, advertiser_name, second_industry, 
+    first_industry, account_source, audit_pass_time, account_status, company_id, company_name, 
+    register_time, cost, cash_cost, bid_cost, brand_cost, grants_cost, cpc_cost, cpm_cost, 
+    ocpc_cost, cpa_cost, ocpm_cost, cpv_cost, cpt_cost, gd_cost, show, cpm, click, ctr, 
+    cpc, transfer_count, today_cost, transfer_amount, history_cost, register_days, first_cost_time
+  </sql>
+
+  <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceAgentReportDaily" >
+    replace into bytedance_agent_report_daily (advertiser_id, agent_id, stat_datetime,
+      agent_name, advertiser_name, second_industry, 
+      first_industry, account_source, audit_pass_time, 
+      account_status, company_id, company_name, 
+      register_time, cost, cash_cost, 
+      bid_cost, brand_cost, grants_cost, 
+      cpc_cost, cpm_cost, ocpc_cost, 
+      cpa_cost, ocpm_cost, cpv_cost, 
+      cpt_cost, gd_cost, `show`,
+      cpm, click, ctr, cpc, 
+      transfer_count, today_cost, transfer_amount, 
+      history_cost, register_days, first_cost_time
+      )
+    values
+    <foreach collection="list" item="item" separator=",">
+     (#{item.advertiserId,jdbcType=BIGINT}, #{item.agentId,jdbcType=BIGINT}, #{item.statDatetime,jdbcType=INTEGER}, 
+      #{item.agentName,jdbcType=VARCHAR}, #{item.advertiserName,jdbcType=VARCHAR}, #{item.secondIndustry,jdbcType=VARCHAR}, 
+      #{item.firstIndustry,jdbcType=VARCHAR}, #{item.accountSource,jdbcType=VARCHAR}, #{item.auditPassTime,jdbcType=VARCHAR}, 
+      #{item.accountStatus,jdbcType=VARCHAR}, #{item.companyId,jdbcType=BIGINT}, #{item.companyName,jdbcType=VARCHAR}, 
+      #{item.registerTime,jdbcType=VARCHAR}, #{item.cost,jdbcType=DECIMAL}, #{item.cashCost,jdbcType=DECIMAL}, 
+      #{item.bidCost,jdbcType=DECIMAL}, #{item.brandCost,jdbcType=DECIMAL}, #{item.grantsCost,jdbcType=DECIMAL}, 
+      #{item.cpcCost,jdbcType=DECIMAL}, #{item.cpmCost,jdbcType=DECIMAL}, #{item.ocpcCost,jdbcType=DECIMAL}, 
+      #{item.cpaCost,jdbcType=DECIMAL}, #{item.ocpmCost,jdbcType=DECIMAL}, #{item.cpvCost,jdbcType=DECIMAL}, 
+      #{item.cptCost,jdbcType=DECIMAL}, #{item.gdCost,jdbcType=DECIMAL}, #{item.show,jdbcType=BIGINT}, 
+      #{item.cpm,jdbcType=VARCHAR}, #{item.click,jdbcType=BIGINT}, #{item.ctr,jdbcType=DECIMAL}, #{item.cpc,jdbcType=DECIMAL}, 
+      #{item.transferCount,jdbcType=BIGINT}, #{item.todayCost,jdbcType=DECIMAL}, #{item.transferAmount,jdbcType=DECIMAL}, 
+      #{item.historyCost,jdbcType=DECIMAL}, #{item.registerDays,jdbcType=DECIMAL}, #{item.firstCostTime,jdbcType=VARCHAR}
+      )
+    </foreach>
+  </insert>
 
 </mapper>

+ 136 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAgentReportHourlyMapper.xml

@@ -1,5 +1,139 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceAgentReportHourlyMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceAgentReportHourly">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="agent_id" property="agentId" jdbcType="BIGINT"/>
+        <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER"/>
+        <id column="hour" property="hour" jdbcType="INTEGER"/>
+        <result column="agent_name" property="agentName" jdbcType="VARCHAR"/>
+        <result column="advertiser_name" property="advertiserName" jdbcType="VARCHAR"/>
+        <result column="first_industry" property="firstIndustry" jdbcType="VARCHAR"/>
+        <result column="second_industry" property="secondIndustry" jdbcType="VARCHAR"/>
+        <result column="audit_pass_time" property="auditPassTime" jdbcType="VARCHAR"/>
+        <result column="account_status" property="accountStatus" jdbcType="VARCHAR"/>
+        <result column="company_id" property="companyId" jdbcType="BIGINT"/>
+        <result column="company_name" property="companyName" jdbcType="VARCHAR"/>
+        <result column="register_time" property="registerTime" jdbcType="VARCHAR"/>
+        <result column="account_source" property="accountSource" jdbcType="VARCHAR"/>
+        <result column="today_cost" property="todayCost" jdbcType="DECIMAL"/>
+        <result column="yesterday_cost" property="yesterdayCost" jdbcType="DECIMAL"/>
+        <result column="query_end_time" property="queryEndTime" jdbcType="BIGINT"/>
+        <result column="today_x_hour_cost" property="todayXHourCost" jdbcType="DECIMAL"/>
+        <result column="yesterday_x_hour_cost" property="yesterdayXHourCost" jdbcType="DECIMAL"/>
+        <result column="x_hour_cost_diff" property="xHourCostDiff" jdbcType="DECIMAL"/>
+        <result column="today_x_hour_convert" property="todayXHourConvert" jdbcType="DECIMAL"/>
+        <result column="yesterday_x_hour_convert" property="yesterdayXHourConvert" jdbcType="DECIMAL"/>
+        <result column="x_hour_convert_diff" property="xHourConvertDiff" jdbcType="DECIMAL"/>
+        <result column="today_x_hour_cpa" property="todayXHourCpa" jdbcType="DECIMAL"/>
+        <result column="yesterday_x_hour_cpa" property="yesterdayXHourCpa" jdbcType="DECIMAL"/>
+        <result column="x_hour_cpa_diff" property="xHourCpaDiff" jdbcType="DECIMAL"/>
+        <result column="today_x_hour_click" property="todayXHourClick" jdbcType="BIGINT"/>
+        <result column="yesterday_x_hour_click" property="yesterdayXHourClick" jdbcType="BIGINT"/>
+        <result column="x_hour_click_diff" property="xHourClickDiff" jdbcType="BIGINT"/>
+        <result column="today_x_hour_cpc" property="todayXHourCpc" jdbcType="DECIMAL"/>
+        <result column="yesterday_x_hour_cpc" property="yesterdayXHourCpc" jdbcType="DECIMAL"/>
+        <result column="x_hour_cpc_diff" property="xHourCpcDiff" jdbcType="DECIMAL"/>
+        <result column="yesterday_cash_cost" property="yesterdayCashCost" jdbcType="DECIMAL"/>
+        <result column="yesterday_bid_cash_cost" property="yesterdayBidCashCost" jdbcType="DECIMAL"/>
+        <result column="yesterday_brand_cash_cost" property="yesterdayBrandCashCost" jdbcType="DECIMAL"/>
+        <result column="yesterday_grants_cost" property="yesterdayGrantsCost" jdbcType="DECIMAL"/>
+        <result column="yesterday_mom_cost" property="yesterdayMomCost" jdbcType="DECIMAL"/>
+        <result column="yesterday_cost_diff" property="yesterdayCostDiff" jdbcType="DECIMAL"/>
+        <result column="history_cost" property="historyCost" jdbcType="DECIMAL"/>
+        <result column="history_cash_cost" property="historyCashCost" jdbcType="DECIMAL"/>
+        <result column="yesterday_ad_number" property="yesterdayAdNumber" jdbcType="DECIMAL"/>
+        <result column="register_days" property="registerDays" jdbcType="DECIMAL"/>
+        <result column="first_recharge_amount" property="firstRechargeAmount" jdbcType="DECIMAL"/>
+        <result column="first_recharge_time" property="firstRechargeTime" jdbcType="VARCHAR"/>
+        <result column="last_renew_time" property="lastRenewTime" jdbcType="VARCHAR"/>
+        <result column="total_renew_amount" property="totalRenewAmount" jdbcType="DECIMAL"/>
+        <result column="total_renew_number" property="totalRenewNumber" jdbcType="DECIMAL"/>
+        <result column="cash_balance" property="cashBalance" jdbcType="DECIMAL"/>
+        <result column="rant_balance" property="rantBalance" jdbcType="DECIMAL"/>
+        <result column="last_recharge_time" property="lastRechargeTime" jdbcType="VARCHAR"/>
+        <result column="last_renew_amount" property="lastRenewAmount" jdbcType="DECIMAL"/>
+        <result column="arpu_3cd" property="arpu3cd" jdbcType="DECIMAL"/>
+        <result column="total_balance" property="totalBalance" jdbcType="DECIMAL"/>
+        <result column="valid_balance" property="validBalance" jdbcType="DECIMAL"/>
+        <result column="customer_type" property="customerType" jdbcType="VARCHAR"/>
+        <result column="first_cost_time" property="firstCostTime" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, agent_id, stat_datetime, hour, agent_name, advertiser_name, first_industry, 
+    second_industry, audit_pass_time, account_status, company_id, company_name, register_time, 
+    account_source, today_cost, yesterday_cost, query_end_time, today_x_hour_cost, yesterday_x_hour_cost, 
+    x_hour_cost_diff, today_x_hour_convert, yesterday_x_hour_convert, x_hour_convert_diff, 
+    today_x_hour_cpa, yesterday_x_hour_cpa, x_hour_cpa_diff, today_x_hour_click, yesterday_x_hour_click, 
+    x_hour_click_diff, today_x_hour_cpc, yesterday_x_hour_cpc, x_hour_cpc_diff, yesterday_cash_cost, 
+    yesterday_bid_cash_cost, yesterday_brand_cash_cost, yesterday_grants_cost, yesterday_mom_cost, 
+    yesterday_cost_diff, history_cost, history_cash_cost, yesterday_ad_number, register_days, 
+    first_recharge_amount, first_recharge_time, last_renew_time, total_renew_amount, 
+    total_renew_number, cash_balance, rant_balance, last_recharge_time, last_renew_amount, 
+    arpu_3cd, total_balance, valid_balance, customer_type, first_cost_time
+  </sql>
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceAgentReportHourly">
+        replace into bytedance_agent_report_hourly (advertiser_id, agent_id, stat_datetime,
+        `hour`, agent_name, advertiser_name,
+        first_industry, second_industry, audit_pass_time,
+        account_status, company_id, company_name,
+        register_time, account_source, today_cost,
+        yesterday_cost, query_end_time, today_x_hour_cost,
+        yesterday_x_hour_cost, x_hour_cost_diff, today_x_hour_convert,
+        yesterday_x_hour_convert, x_hour_convert_diff,
+        today_x_hour_cpa, yesterday_x_hour_cpa, x_hour_cpa_diff,
+        today_x_hour_click, yesterday_x_hour_click, x_hour_click_diff,
+        today_x_hour_cpc, yesterday_x_hour_cpc, x_hour_cpc_diff,
+        yesterday_cash_cost, yesterday_bid_cash_cost,
+        yesterday_brand_cash_cost, yesterday_grants_cost,
+        yesterday_mom_cost, yesterday_cost_diff, history_cost,
+        history_cash_cost, yesterday_ad_number, register_days,
+        first_recharge_amount, first_recharge_time,
+        last_renew_time, total_renew_amount, total_renew_number,
+        cash_balance, rant_balance, last_recharge_time,
+        last_renew_amount, arpu_3cd, total_balance,
+        valid_balance, customer_type, first_cost_time
+        )
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.agentId,jdbcType=BIGINT},
+            #{item.statDatetime,jdbcType=INTEGER},
+            #{item.hour,jdbcType=INTEGER}, #{item.agentName,jdbcType=VARCHAR}, #{item.advertiserName,jdbcType=VARCHAR},
+            #{item.firstIndustry,jdbcType=VARCHAR}, #{item.secondIndustry,jdbcType=VARCHAR},
+            #{item.auditPassTime,jdbcType=VARCHAR},
+            #{item.accountStatus,jdbcType=VARCHAR}, #{item.companyId,jdbcType=BIGINT},
+            #{item.companyName,jdbcType=VARCHAR},
+            #{item.registerTime,jdbcType=VARCHAR}, #{item.accountSource,jdbcType=VARCHAR},
+            #{item.todayCost,jdbcType=DECIMAL},
+            #{item.yesterdayCost,jdbcType=DECIMAL}, #{item.queryEndTime,jdbcType=BIGINT},
+            #{item.todayXHourCost,jdbcType=DECIMAL},
+            #{item.yesterdayXHourCost,jdbcType=DECIMAL}, #{item.xHourCostDiff,jdbcType=DECIMAL},
+            #{item.todayXHourConvert,jdbcType=DECIMAL},
+            #{item.yesterdayXHourConvert,jdbcType=DECIMAL}, #{item.xHourConvertDiff,jdbcType=DECIMAL},
+            #{item.todayXHourCpa,jdbcType=DECIMAL}, #{item.yesterdayXHourCpa,jdbcType=DECIMAL},
+            #{item.xHourCpaDiff,jdbcType=DECIMAL},
+            #{item.todayXHourClick,jdbcType=BIGINT}, #{item.yesterdayXHourClick,jdbcType=BIGINT},
+            #{item.xHourClickDiff,jdbcType=BIGINT},
+            #{item.todayXHourCpc,jdbcType=DECIMAL}, #{item.yesterdayXHourCpc,jdbcType=DECIMAL},
+            #{item.xHourCpcDiff,jdbcType=DECIMAL},
+            #{item.yesterdayCashCost,jdbcType=DECIMAL}, #{item.yesterdayBidCashCost,jdbcType=DECIMAL},
+            #{item.yesterdayBrandCashCost,jdbcType=DECIMAL}, #{item.yesterdayGrantsCost,jdbcType=DECIMAL},
+            #{item.yesterdayMomCost,jdbcType=DECIMAL}, #{item.yesterdayCostDiff,jdbcType=DECIMAL},
+            #{item.historyCost,jdbcType=DECIMAL},
+            #{item.historyCashCost,jdbcType=DECIMAL}, #{item.yesterdayAdNumber,jdbcType=DECIMAL},
+            #{item.registerDays,jdbcType=DECIMAL},
+            #{item.firstRechargeAmount,jdbcType=DECIMAL}, #{item.firstRechargeTime,jdbcType=VARCHAR},
+            #{item.lastRenewTime,jdbcType=VARCHAR}, #{item.totalRenewAmount,jdbcType=DECIMAL},
+            #{item.totalRenewNumber,jdbcType=DECIMAL},
+            #{item.cashBalance,jdbcType=DECIMAL}, #{item.rantBalance,jdbcType=DECIMAL},
+            #{item.lastRechargeTime,jdbcType=VARCHAR},
+            #{item.lastRenewAmount,jdbcType=DECIMAL}, #{item.arpu3cd,jdbcType=DECIMAL},
+            #{item.totalBalance,jdbcType=DECIMAL},
+            #{item.validBalance,jdbcType=DECIMAL}, #{item.customerType,jdbcType=VARCHAR},
+            #{item.firstCostTime,jdbcType=VARCHAR}
+            )
+        </foreach>
+    </insert>
 
 </mapper>

+ 30 - 3
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceAudiencePackageGetMapper.xml

@@ -1,5 +1,32 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceAudiencePackageGetMapper">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceAudiencePackageGetMapper" >
+  <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceAudiencePackageGet" >
+    <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT" />
+    <id column="audience_package_id" property="audiencePackageId" jdbcType="BIGINT" />
+    <result column="name" property="name" jdbcType="VARCHAR" />
+    <result column="description" property="description" jdbcType="VARCHAR" />
+    <result column="landing_type" property="landingType" jdbcType="VARCHAR" />
+    <result column="hide_if_converted" property="hideIfConverted" jdbcType="VARCHAR" />
+    <result column="converted_time_duration" property="convertedTimeDuration" jdbcType="VARCHAR" />
+    <result column="delivery_range" property="deliveryRange" jdbcType="VARCHAR" />
+    <result column="hide_if_exists" property="hideIfExists" jdbcType="BIGINT" />
+  </resultMap>
+
+
+  <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceAudiencePackageGet" >
+    replace into bytedance_audience_package_get (advertiser_id, audience_package_id, name,
+      description, landing_type, hide_if_converted, 
+      converted_time_duration, delivery_range, hide_if_exists, 
+      audience)
+    values
+    <foreach collection="list" item="item" separator=",">
+      (#{item.advertiserId,jdbcType=BIGINT}, #{item.audiencePackageId,jdbcType=BIGINT}, #{item.name,jdbcType=VARCHAR},
+      #{item.description,jdbcType=VARCHAR}, #{item.landingType,jdbcType=VARCHAR}, #{item.hideIfConverted,jdbcType=VARCHAR},
+      #{item.convertedTimeDuration,jdbcType=VARCHAR}, #{item.deliveryRange,jdbcType=VARCHAR}, #{item.hideIfExists,jdbcType=BIGINT},
+      #{item.audience,jdbcType=LONGVARCHAR})
+    </foreach>
+
+  </insert>
 
 </mapper>

+ 42 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCampaignGetMapper.xml

@@ -1,5 +1,45 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceCampaignGetMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignGet">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="campaign_id" property="campaignId" jdbcType="BIGINT"/>
+        <result column="campaign_name" property="campaignName" jdbcType="VARCHAR"/>
+        <result column="budget" property="budget" jdbcType="INTEGER"/>
+        <result column="budget_mode" property="budgetMode" jdbcType="VARCHAR"/>
+        <result column="modify_time" property="modifyTime" jdbcType="VARCHAR"/>
+        <result column="status" property="status" jdbcType="VARCHAR"/>
+        <result column="campaign_create_time" property="campaignCreateTime" jdbcType="VARCHAR"/>
+        <result column="campaign_modify_time" property="campaignModifyTime" jdbcType="VARCHAR"/>
+        <result column="marketing_purpose" property="marketingPurpose" jdbcType="VARCHAR"/>
+        <result column="delivery_related_num" property="deliveryRelatedNum" jdbcType="VARCHAR"/>
+        <result column="delivery_mode" property="deliveryMode" jdbcType="VARCHAR"/>
+        <result column="landing_type" property="landingType" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, campaign_id, campaign_name, budget, budget_mode, modify_time, status, 
+    campaign_create_time, campaign_modify_time, marketing_purpose, delivery_related_num, 
+    delivery_mode, landing_type
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignGet">
+        replace into bytedance_campaign_get (advertiser_id, campaign_id, campaign_name,
+        budget, budget_mode, modify_time,
+        status, campaign_create_time, campaign_modify_time,
+        marketing_purpose, delivery_related_num, delivery_mode,
+        landing_type)
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.campaignId,jdbcType=BIGINT},
+            #{item.campaignName,jdbcType=VARCHAR},
+            #{item.budget,jdbcType=INTEGER}, #{item.budgetMode,jdbcType=VARCHAR}, #{item.modifyTime,jdbcType=VARCHAR},
+            #{item.status,jdbcType=VARCHAR}, #{item.campaignCreateTime,jdbcType=VARCHAR},
+            #{item.campaignModifyTime,jdbcType=VARCHAR},
+            #{item.marketingPurpose,jdbcType=VARCHAR}, #{item.deliveryRelatedNum,jdbcType=VARCHAR},
+            #{item.deliveryMode,jdbcType=VARCHAR},
+            #{item.landingType,jdbcType=VARCHAR})
+        </foreach>
+    </insert>
 
 </mapper>

+ 358 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCampaignReportDailyMapper.xml

@@ -1,5 +1,361 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceCampaignReportDailyMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportDaily">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="campaign_id" property="campaignId" jdbcType="BIGINT"/>
+        <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER"/>
+        <result column="campaign_name" property="campaignName" jdbcType="VARCHAR"/>
+        <result column="cost" property="cost" jdbcType="DECIMAL"/>
+        <result column="show" property="show" jdbcType="BIGINT"/>
+        <result column="avg_show_cost" property="avgShowCost" jdbcType="DECIMAL"/>
+        <result column="click" property="click" jdbcType="BIGINT"/>
+        <result column="avg_click_cost" property="avgClickCost" jdbcType="DECIMAL"/>
+        <result column="ctr" property="ctr" jdbcType="DECIMAL"/>
+        <result column="convert" property="convert" jdbcType="BIGINT"/>
+        <result column="convert_cost" property="convertCost" jdbcType="DECIMAL"/>
+        <result column="convert_rate" property="convertRate" jdbcType="DECIMAL"/>
+        <result column="deep_convert" property="deepConvert" jdbcType="BIGINT"/>
+        <result column="deep_convert_cost" property="deepConvertCost" jdbcType="DECIMAL"/>
+        <result column="deep_convert_rate" property="deepConvertRate" jdbcType="DECIMAL"/>
+        <result column="attribution_convert" property="attributionConvert" jdbcType="BIGINT"/>
+        <result column="attribution_convert_cost" property="attributionConvertCost" jdbcType="DECIMAL"/>
+        <result column="attribution_deep_convert" property="attributionDeepConvert" jdbcType="BIGINT"/>
+        <result column="attribution_deep_convert_cost" property="attributionDeepConvertCost" jdbcType="DECIMAL"/>
+        <result column="download_start" property="downloadStart" jdbcType="BIGINT"/>
+        <result column="download_start_cost" property="downloadStartCost" jdbcType="DECIMAL"/>
+        <result column="download_start_rate" property="downloadStartRate" jdbcType="DECIMAL"/>
+        <result column="download_finish" property="downloadFinish" jdbcType="BIGINT"/>
+        <result column="download_finish_cost" property="downloadFinishCost" jdbcType="DECIMAL"/>
+        <result column="download_finish_rate" property="downloadFinishRate" jdbcType="DECIMAL"/>
+        <result column="click_install" property="clickInstall" jdbcType="BIGINT"/>
+        <result column="install_finish" property="installFinish" jdbcType="BIGINT"/>
+        <result column="install_finish_cost" property="installFinishCost" jdbcType="DECIMAL"/>
+        <result column="install_finish_rate" property="installFinishRate" jdbcType="DECIMAL"/>
+        <result column="active" property="active" jdbcType="BIGINT"/>
+        <result column="active_cost" property="activeCost" jdbcType="DECIMAL"/>
+        <result column="active_rate" property="activeRate" jdbcType="DECIMAL"/>
+        <result column="register" property="register" jdbcType="DECIMAL"/>
+        <result column="active_register_cost" property="activeRegisterCost" jdbcType="DECIMAL"/>
+        <result column="active_register_rate" property="activeRegisterRate" jdbcType="REAL"/>
+        <result column="next_day_open" property="nextDayOpen" jdbcType="BIGINT"/>
+        <result column="next_day_open_cost" property="nextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="next_day_open_rate" property="nextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_cnt" property="attributionNextDayOpenCnt" jdbcType="BIGINT"/>
+        <result column="attribution_next_day_open_cost" property="attributionNextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_rate" property="attributionNextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="game_addiction" property="gameAddiction" jdbcType="BIGINT"/>
+        <result column="game_addiction_cost" property="gameAddictionCost" jdbcType="DECIMAL"/>
+        <result column="game_addiction_rate" property="gameAddictionRate" jdbcType="DECIMAL"/>
+        <result column="pay_count" property="payCount" jdbcType="BIGINT"/>
+        <result column="active_pay_cost" property="activePayCost" jdbcType="DECIMAL"/>
+        <result column="active_pay_rate" property="activePayRate" jdbcType="DECIMAL"/>
+        <result column="loan_completion" property="loanCompletion" jdbcType="BIGINT"/>
+        <result column="loan_completion_cost" property="loanCompletionCost" jdbcType="DECIMAL"/>
+        <result column="loan_completion_rate" property="loanCompletionRate" jdbcType="DECIMAL"/>
+        <result column="pre_loan_credit" property="preLoanCredit" jdbcType="BIGINT"/>
+        <result column="pre_loan_credit_cost" property="preLoanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit" property="loanCredit" jdbcType="BIGINT"/>
+        <result column="loan_credit_cost" property="loanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit_rate" property="loanCreditRate" jdbcType="DECIMAL"/>
+        <result column="in_app_uv" property="inAppUv" jdbcType="BIGINT"/>
+        <result column="in_app_detail_uv" property="inAppDetailUv" jdbcType="BIGINT"/>
+        <result column="in_app_cart" property="inAppCart" jdbcType="BIGINT"/>
+        <result column="in_app_pay" property="inAppPay" jdbcType="BIGINT"/>
+        <result column="in_app_order" property="inAppOrder" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_count" property="attributionGamePay7dCount" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_cost" property="attributionGamePay7dCost" jdbcType="DECIMAL"/>
+        <result column="attribution_active_pay_7d_per_count" property="attributionActivePay7dPerCount"
+                jdbcType="BIGINT"/>
+        <result column="game_pay_cost" property="gamePayCost" jdbcType="DECIMAL"/>
+        <result column="game_pay_count" property="gamePayCount" jdbcType="BIGINT"/>
+        <result column="phone" property="phone" jdbcType="BIGINT"/>
+        <result column="form" property="form" jdbcType="BIGINT"/>
+        <result column="map_search" property="mapSearch" jdbcType="BIGINT"/>
+        <result column="button" property="button" jdbcType="BIGINT"/>
+        <result column="view" property="view" jdbcType="BIGINT"/>
+        <result column="download" property="download" jdbcType="BIGINT"/>
+        <result column="qq" property="qq" jdbcType="BIGINT"/>
+        <result column="lottery" property="lottery" jdbcType="BIGINT"/>
+        <result column="vote" property="vote" jdbcType="BIGINT"/>
+        <result column="message" property="message" jdbcType="BIGINT"/>
+        <result column="redirect" property="redirect" jdbcType="BIGINT"/>
+        <result column="shopping" property="shopping" jdbcType="BIGINT"/>
+        <result column="consult" property="consult" jdbcType="BIGINT"/>
+        <result column="wechat" property="wechat" jdbcType="BIGINT"/>
+        <result column="phone_confirm" property="phoneConfirm" jdbcType="BIGINT"/>
+        <result column="phone_connect" property="phoneConnect" jdbcType="BIGINT"/>
+        <result column="consult_effective" property="consultEffective" jdbcType="BIGINT"/>
+        <result column="coupon" property="coupon" jdbcType="BIGINT"/>
+        <result column="coupon_single_page" property="couponSinglePage" jdbcType="BIGINT"/>
+        <result column="redirect_to_shop" property="redirectToShop" jdbcType="BIGINT"/>
+        <result column="poi_collect" property="poiCollect" jdbcType="BIGINT"/>
+        <result column="poi_address_click" property="poiAddressClick" jdbcType="BIGINT"/>
+        <result column="luban_order_cnt" property="lubanOrderCnt" jdbcType="BIGINT"/>
+        <result column="luban_order_stat_amount" property="lubanOrderStatAmount" jdbcType="DECIMAL"/>
+        <result column="luban_order_roi" property="lubanOrderRoi" jdbcType="DECIMAL"/>
+        <result column="luban_live_enter_cnt" property="lubanLiveEnterCnt" jdbcType="BIGINT"/>
+        <result column="live_watch_one_minute_count" property="liveWatchOneMinuteCount" jdbcType="BIGINT"/>
+        <result column="luban_live_follow_cnt" property="lubanLiveFollowCnt" jdbcType="BIGINT"/>
+        <result column="live_fans_club_join_cnt" property="liveFansClubJoinCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_comment_cnt" property="lubanLiveCommentCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_share_cnt" property="lubanLiveShareCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_cnt" property="lubanLiveGiftCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_amount" property="lubanLiveGiftAmount" jdbcType="DECIMAL"/>
+        <result column="luban_live_slidecart_click_cnt" property="lubanLiveSlidecartClickCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_click_product_cnt" property="lubanLiveClickProductCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_count" property="lubanLivePayOrderCount" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_stat_cost" property="lubanLivePayOrderStatCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_count" property="liveComponentClickCount" jdbcType="BIGINT"/>
+        <result column="live_component_click_cost" property="liveComponentClickCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_rate" property="liveComponentClickRate" jdbcType="DECIMAL"/>
+        <result column="wechat_login_count" property="wechatLoginCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_login_30d_count" property="attributionWechatLogin30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_login_cost" property="wechatLoginCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_login_30d_cost" property="attributionWechatLogin30dCost" jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_count" property="wechatFirstPayCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_first_pay_30d_count" property="attributionWechatFirstPay30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_first_pay_cost" property="wechatFirstPayCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_cost" property="attributionWechatFirstPay30dCost"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_rate" property="wechatFirstPayRate" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_rate" property="attributionWechatFirstPay30dRate"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_pay_amount" property="wechatPayAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_amount" property="attributionWechatPay30dAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_roi" property="attributionWechatPay30dRoi" jdbcType="DECIMAL"/>
+        <result column="phone_effective" property="phoneEffective" jdbcType="BIGINT"/>
+        <result column="total_play" property="totalPlay" jdbcType="BIGINT"/>
+        <result column="valid_play" property="validPlay" jdbcType="BIGINT"/>
+        <result column="valid_play_cost" property="validPlayCost" jdbcType="DECIMAL"/>
+        <result column="valid_play_rate" property="validPlayRate" jdbcType="DECIMAL"/>
+        <result column="play_25_feed_break" property="play25FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_50_feed_break" property="play50FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_75_feed_break" property="play75FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_100_feed_break" property="play100FeedBreak" jdbcType="BIGINT"/>
+        <result column="average_play_time_per_play" property="averagePlayTimePerPlay" jdbcType="DECIMAL"/>
+        <result column="play_over_rate" property="playOverRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play_rate" property="wifiPlayRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play" property="wifiPlay" jdbcType="BIGINT"/>
+        <result column="play_duration_sum" property="playDurationSum" jdbcType="BIGINT"/>
+        <result column="advanced_creative_phone_click" property="advancedCreativePhoneClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_counsel_click" property="advancedCreativeCounselClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_click" property="advancedCreativeFormClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_coupon_addition" property="advancedCreativeCouponAddition" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_submit" property="advancedCreativeFormSubmit" jdbcType="BIGINT"/>
+        <result column="card_show" property="cardShow" jdbcType="BIGINT"/>
+        <result column="share" property="share" jdbcType="BIGINT"/>
+        <result column="comment" property="comment" jdbcType="BIGINT"/>
+        <result column="like" property="like" jdbcType="BIGINT"/>
+        <result column="follow" property="follow" jdbcType="BIGINT"/>
+        <result column="home_visited" property="homeVisited" jdbcType="BIGINT"/>
+        <result column="ies_challenge_click" property="iesChallengeClick" jdbcType="BIGINT"/>
+        <result column="ies_music_click" property="iesMusicClick" jdbcType="BIGINT"/>
+        <result column="location_click" property="locationClick" jdbcType="BIGINT"/>
+        <result column="message_action" property="messageAction" jdbcType="BIGINT"/>
+        <result column="click_landing_page" property="clickLandingPage" jdbcType="BIGINT"/>
+        <result column="click_shopwindow" property="clickShopwindow" jdbcType="BIGINT"/>
+        <result column="click_website" property="clickWebsite" jdbcType="BIGINT"/>
+        <result column="click_download" property="clickDownload" jdbcType="BIGINT"/>
+        <result column="click_call_dy" property="clickCallDy" jdbcType="BIGINT"/>
+        <result column="submit_certification_count" property="submitCertificationCount" jdbcType="BIGINT"/>
+        <result column="approval_count" property="approvalCount" jdbcType="BIGINT"/>
+        <result column="first_rental_order_count" property="firstRentalOrderCount" jdbcType="BIGINT"/>
+        <result column="first_order_count" property="firstOrderCount" jdbcType="BIGINT"/>
+        <result column="commute_first_pay_count" property="commuteFirstPayCount" jdbcType="BIGINT"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, campaign_id, stat_datetime, campaign_name, cost, show, avg_show_cost, 
+    click, avg_click_cost, ctr, convert, convert_cost, convert_rate, deep_convert, deep_convert_cost, 
+    deep_convert_rate, attribution_convert, attribution_convert_cost, attribution_deep_convert, 
+    attribution_deep_convert_cost, download_start, download_start_cost, download_start_rate, 
+    download_finish, download_finish_cost, download_finish_rate, click_install, install_finish, 
+    install_finish_cost, install_finish_rate, active, active_cost, active_rate, register, 
+    active_register_cost, active_register_rate, next_day_open, next_day_open_cost, next_day_open_rate, 
+    attribution_next_day_open_cnt, attribution_next_day_open_cost, attribution_next_day_open_rate, 
+    game_addiction, game_addiction_cost, game_addiction_rate, pay_count, active_pay_cost, 
+    active_pay_rate, loan_completion, loan_completion_cost, loan_completion_rate, pre_loan_credit, 
+    pre_loan_credit_cost, loan_credit, loan_credit_cost, loan_credit_rate, in_app_uv, 
+    in_app_detail_uv, in_app_cart, in_app_pay, in_app_order, attribution_game_pay_7d_count, 
+    attribution_game_pay_7d_cost, attribution_active_pay_7d_per_count, game_pay_cost, 
+    game_pay_count, phone, form, map_search, button, view, download, qq, lottery, vote, 
+    message, redirect, shopping, consult, wechat, phone_confirm, phone_connect, consult_effective, 
+    coupon, coupon_single_page, redirect_to_shop, poi_collect, poi_address_click, luban_order_cnt, 
+    luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt, live_watch_one_minute_count, 
+    luban_live_follow_cnt, live_fans_club_join_cnt, luban_live_comment_cnt, luban_live_share_cnt, 
+    luban_live_gift_cnt, luban_live_gift_amount, luban_live_slidecart_click_cnt, luban_live_click_product_cnt, 
+    luban_live_pay_order_count, luban_live_pay_order_stat_cost, live_component_click_count, 
+    live_component_click_cost, live_component_click_rate, wechat_login_count, attribution_wechat_login_30d_count, 
+    wechat_login_cost, attribution_wechat_login_30d_cost, wechat_first_pay_count, attribution_wechat_first_pay_30d_count, 
+    wechat_first_pay_cost, attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, 
+    attribution_wechat_first_pay_30d_rate, wechat_pay_amount, attribution_wechat_pay_30d_amount, 
+    attribution_wechat_pay_30d_roi, phone_effective, total_play, valid_play, valid_play_cost, 
+    valid_play_rate, play_25_feed_break, play_50_feed_break, play_75_feed_break, play_100_feed_break, 
+    average_play_time_per_play, play_over_rate, wifi_play_rate, wifi_play, play_duration_sum, 
+    advanced_creative_phone_click, advanced_creative_counsel_click, advanced_creative_form_click, 
+    advanced_creative_coupon_addition, advanced_creative_form_submit, card_show, share, 
+    comment, like, follow, home_visited, ies_challenge_click, ies_music_click, location_click, 
+    message_action, click_landing_page, click_shopwindow, click_website, click_download, 
+    click_call_dy, submit_certification_count, approval_count, first_rental_order_count, 
+    first_order_count, commute_first_pay_count
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportDaily">
+        replace into bytedance_campaign_report_daily (advertiser_id, campaign_id, stat_datetime,
+        campaign_name, cost, `show`,
+        avg_show_cost, click, avg_click_cost,
+        ctr, `convert`, convert_cost,
+        convert_rate, deep_convert, deep_convert_cost,
+        deep_convert_rate, attribution_convert, attribution_convert_cost,
+        attribution_deep_convert, attribution_deep_convert_cost,
+        download_start, download_start_cost, download_start_rate,
+        download_finish, download_finish_cost, download_finish_rate,
+        click_install, install_finish, install_finish_cost,
+        install_finish_rate, active, active_cost,
+        active_rate, register, active_register_cost,
+        active_register_rate, next_day_open, next_day_open_cost,
+        next_day_open_rate, attribution_next_day_open_cnt,
+        attribution_next_day_open_cost, attribution_next_day_open_rate,
+        game_addiction, game_addiction_cost, game_addiction_rate,
+        pay_count, active_pay_cost, active_pay_rate,
+        loan_completion, loan_completion_cost, loan_completion_rate,
+        pre_loan_credit, pre_loan_credit_cost, loan_credit,
+        loan_credit_cost, loan_credit_rate, in_app_uv,
+        in_app_detail_uv, in_app_cart, in_app_pay,
+        in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost,
+        attribution_active_pay_7d_per_count, game_pay_cost,
+        game_pay_count, `phone`, form,
+        map_search, button, `view`,
+        download, qq, lottery,
+        vote, message, redirect,
+        shopping, consult, wechat,
+        phone_confirm, phone_connect, consult_effective,
+        coupon, coupon_single_page, redirect_to_shop,
+        poi_collect, poi_address_click, luban_order_cnt,
+        luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt,
+        live_watch_one_minute_count, luban_live_follow_cnt,
+        live_fans_club_join_cnt, luban_live_comment_cnt,
+        luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount,
+        luban_live_slidecart_click_cnt, luban_live_click_product_cnt,
+        luban_live_pay_order_count, luban_live_pay_order_stat_cost,
+        live_component_click_count, live_component_click_cost,
+        live_component_click_rate, wechat_login_count,
+        attribution_wechat_login_30d_count, wechat_login_cost,
+        attribution_wechat_login_30d_cost, wechat_first_pay_count,
+        attribution_wechat_first_pay_30d_count, wechat_first_pay_cost,
+        attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate,
+        attribution_wechat_first_pay_30d_rate, wechat_pay_amount,
+        attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi,
+        phone_effective, total_play, valid_play,
+        valid_play_cost, valid_play_rate, play_25_feed_break,
+        play_50_feed_break, play_75_feed_break, play_100_feed_break,
+        average_play_time_per_play, play_over_rate, wifi_play_rate,
+        wifi_play, play_duration_sum, advanced_creative_phone_click,
+        advanced_creative_counsel_click, advanced_creative_form_click,
+        advanced_creative_coupon_addition, advanced_creative_form_submit,
+        card_show, `share`, `comment`,
+        `like`, follow, home_visited,
+        ies_challenge_click, ies_music_click, location_click,
+        message_action, click_landing_page, click_shopwindow,
+        click_website, click_download, click_call_dy,
+        submit_certification_count, approval_count,
+        first_rental_order_count, first_order_count, commute_first_pay_count
+        )
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.campaignId,jdbcType=BIGINT},
+            #{item.statDatetime,jdbcType=INTEGER},
+            #{item.campaignName,jdbcType=VARCHAR}, #{item.cost,jdbcType=DECIMAL}, #{item.show,jdbcType=BIGINT},
+            #{item.avgShowCost,jdbcType=DECIMAL}, #{item.click,jdbcType=BIGINT}, #{item.avgClickCost,jdbcType=DECIMAL},
+            #{item.ctr,jdbcType=DECIMAL}, #{item.convert,jdbcType=BIGINT}, #{item.convertCost,jdbcType=DECIMAL},
+            #{item.convertRate,jdbcType=DECIMAL}, #{item.deepConvert,jdbcType=BIGINT},
+            #{item.deepConvertCost,jdbcType=DECIMAL},
+            #{item.deepConvertRate,jdbcType=DECIMAL}, #{item.attributionConvert,jdbcType=BIGINT},
+            #{item.attributionConvertCost,jdbcType=DECIMAL},
+            #{item.attributionDeepConvert,jdbcType=BIGINT}, #{item.attributionDeepConvertCost,jdbcType=DECIMAL},
+            #{item.downloadStart,jdbcType=BIGINT}, #{item.downloadStartCost,jdbcType=DECIMAL},
+            #{item.downloadStartRate,jdbcType=DECIMAL},
+            #{item.downloadFinish,jdbcType=BIGINT}, #{item.downloadFinishCost,jdbcType=DECIMAL},
+            #{item.downloadFinishRate,jdbcType=DECIMAL},
+            #{item.clickInstall,jdbcType=BIGINT}, #{item.installFinish,jdbcType=BIGINT},
+            #{item.installFinishCost,jdbcType=DECIMAL},
+            #{item.installFinishRate,jdbcType=DECIMAL}, #{item.active,jdbcType=BIGINT},
+            #{item.activeCost,jdbcType=DECIMAL},
+            #{item.activeRate,jdbcType=DECIMAL}, #{item.register,jdbcType=DECIMAL},
+            #{item.activeRegisterCost,jdbcType=DECIMAL},
+            #{item.activeRegisterRate,jdbcType=REAL}, #{item.nextDayOpen,jdbcType=BIGINT},
+            #{item.nextDayOpenCost,jdbcType=DECIMAL},
+            #{item.nextDayOpenRate,jdbcType=DECIMAL}, #{item.attributionNextDayOpenCnt,jdbcType=BIGINT},
+            #{item.attributionNextDayOpenCost,jdbcType=DECIMAL}, #{item.attributionNextDayOpenRate,jdbcType=DECIMAL},
+            #{item.gameAddiction,jdbcType=BIGINT}, #{item.gameAddictionCost,jdbcType=DECIMAL},
+            #{item.gameAddictionRate,jdbcType=DECIMAL},
+            #{item.payCount,jdbcType=BIGINT}, #{item.activePayCost,jdbcType=DECIMAL},
+            #{item.activePayRate,jdbcType=DECIMAL},
+            #{item.loanCompletion,jdbcType=BIGINT}, #{item.loanCompletionCost,jdbcType=DECIMAL},
+            #{item.loanCompletionRate,jdbcType=DECIMAL},
+            #{item.preLoanCredit,jdbcType=BIGINT}, #{item.preLoanCreditCost,jdbcType=DECIMAL},
+            #{item.loanCredit,jdbcType=BIGINT},
+            #{item.loanCreditCost,jdbcType=DECIMAL}, #{item.loanCreditRate,jdbcType=DECIMAL},
+            #{item.inAppUv,jdbcType=BIGINT},
+            #{item.inAppDetailUv,jdbcType=BIGINT}, #{item.inAppCart,jdbcType=BIGINT}, #{item.inAppPay,jdbcType=BIGINT},
+            #{item.inAppOrder,jdbcType=BIGINT}, #{item.attributionGamePay7dCount,jdbcType=BIGINT},
+            #{item.attributionGamePay7dCost,jdbcType=DECIMAL},
+            #{item.attributionActivePay7dPerCount,jdbcType=BIGINT}, #{item.gamePayCost,jdbcType=DECIMAL},
+            #{item.gamePayCount,jdbcType=BIGINT}, #{item.phone,jdbcType=BIGINT}, #{item.form,jdbcType=BIGINT},
+            #{item.mapSearch,jdbcType=BIGINT}, #{item.button,jdbcType=BIGINT}, #{item.view,jdbcType=BIGINT},
+            #{item.download,jdbcType=BIGINT}, #{item.qq,jdbcType=BIGINT}, #{item.lottery,jdbcType=BIGINT},
+            #{item.vote,jdbcType=BIGINT}, #{item.message,jdbcType=BIGINT}, #{item.redirect,jdbcType=BIGINT},
+            #{item.shopping,jdbcType=BIGINT}, #{item.consult,jdbcType=BIGINT}, #{item.wechat,jdbcType=BIGINT},
+            #{item.phoneConfirm,jdbcType=BIGINT}, #{item.phoneConnect,jdbcType=BIGINT},
+            #{item.consultEffective,jdbcType=BIGINT},
+            #{item.coupon,jdbcType=BIGINT}, #{item.couponSinglePage,jdbcType=BIGINT},
+            #{item.redirectToShop,jdbcType=BIGINT},
+            #{item.poiCollect,jdbcType=BIGINT}, #{item.poiAddressClick,jdbcType=BIGINT},
+            #{item.lubanOrderCnt,jdbcType=BIGINT},
+            #{item.lubanOrderStatAmount,jdbcType=DECIMAL}, #{item.lubanOrderRoi,jdbcType=DECIMAL},
+            #{item.lubanLiveEnterCnt,jdbcType=BIGINT},
+            #{item.liveWatchOneMinuteCount,jdbcType=BIGINT}, #{item.lubanLiveFollowCnt,jdbcType=BIGINT},
+            #{item.liveFansClubJoinCnt,jdbcType=BIGINT}, #{item.lubanLiveCommentCnt,jdbcType=BIGINT},
+            #{item.lubanLiveShareCnt,jdbcType=BIGINT}, #{item.lubanLiveGiftCnt,jdbcType=BIGINT},
+            #{item.lubanLiveGiftAmount,jdbcType=DECIMAL},
+            #{item.lubanLiveSlidecartClickCnt,jdbcType=BIGINT}, #{item.lubanLiveClickProductCnt,jdbcType=BIGINT},
+            #{item.lubanLivePayOrderCount,jdbcType=BIGINT}, #{item.lubanLivePayOrderStatCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickCount,jdbcType=BIGINT}, #{item.liveComponentClickCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickRate,jdbcType=DECIMAL}, #{item.wechatLoginCount,jdbcType=BIGINT},
+            #{item.attributionWechatLogin30dCount,jdbcType=BIGINT}, #{item.wechatLoginCost,jdbcType=DECIMAL},
+            #{item.attributionWechatLogin30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayCount,jdbcType=BIGINT},
+            #{item.attributionWechatFirstPay30dCount,jdbcType=BIGINT}, #{item.wechatFirstPayCost,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayRate,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dRate,jdbcType=DECIMAL}, #{item.wechatPayAmount,jdbcType=DECIMAL},
+            #{item.attributionWechatPay30dAmount,jdbcType=DECIMAL}, #{item.attributionWechatPay30dRoi,jdbcType=DECIMAL},
+            #{item.phoneEffective,jdbcType=BIGINT}, #{item.totalPlay,jdbcType=BIGINT},
+            #{item.validPlay,jdbcType=BIGINT},
+            #{item.validPlayCost,jdbcType=DECIMAL}, #{item.validPlayRate,jdbcType=DECIMAL},
+            #{item.play25FeedBreak,jdbcType=BIGINT},
+            #{item.play50FeedBreak,jdbcType=BIGINT}, #{item.play75FeedBreak,jdbcType=BIGINT},
+            #{item.play100FeedBreak,jdbcType=BIGINT},
+            #{item.averagePlayTimePerPlay,jdbcType=DECIMAL}, #{item.playOverRate,jdbcType=DECIMAL},
+            #{item.wifiPlayRate,jdbcType=DECIMAL},
+            #{item.wifiPlay,jdbcType=BIGINT}, #{item.playDurationSum,jdbcType=BIGINT},
+            #{item.advancedCreativePhoneClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCounselClick,jdbcType=BIGINT}, #{item.advancedCreativeFormClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCouponAddition,jdbcType=BIGINT}, #{item.advancedCreativeFormSubmit,jdbcType=BIGINT},
+            #{item.cardShow,jdbcType=BIGINT}, #{item.share,jdbcType=BIGINT}, #{item.comment,jdbcType=BIGINT},
+            #{item.like,jdbcType=BIGINT}, #{item.follow,jdbcType=BIGINT}, #{item.homeVisited,jdbcType=BIGINT},
+            #{item.iesChallengeClick,jdbcType=BIGINT}, #{item.iesMusicClick,jdbcType=BIGINT},
+            #{item.locationClick,jdbcType=BIGINT},
+            #{item.messageAction,jdbcType=BIGINT}, #{item.clickLandingPage,jdbcType=BIGINT},
+            #{item.clickShopwindow,jdbcType=BIGINT},
+            #{item.clickWebsite,jdbcType=BIGINT}, #{item.clickDownload,jdbcType=BIGINT},
+            #{item.clickCallDy,jdbcType=BIGINT},
+            #{item.submitCertificationCount,jdbcType=BIGINT}, #{item.approvalCount,jdbcType=BIGINT},
+            #{item.firstRentalOrderCount,jdbcType=BIGINT}, #{item.firstOrderCount,jdbcType=BIGINT},
+            #{item.commuteFirstPayCount,jdbcType=BIGINT}
+            )
+        </foreach>
+    </insert>
 
 </mapper>

+ 329 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCampaignReportHourlyMapper.xml

@@ -1,5 +1,332 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceCampaignReportHourlyMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportHourly">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="campaign_id" property="campaignId" jdbcType="BIGINT"/>
+        <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER"/>
+        <id column="hour" property="hour" jdbcType="INTEGER"/>
+        <result column="campaign_name" property="campaignName" jdbcType="VARCHAR"/>
+        <result column="cost" property="cost" jdbcType="DECIMAL"/>
+        <result column="show" property="show" jdbcType="BIGINT"/>
+        <result column="avg_show_cost" property="avgShowCost" jdbcType="DECIMAL"/>
+        <result column="click" property="click" jdbcType="BIGINT"/>
+        <result column="avg_click_cost" property="avgClickCost" jdbcType="DECIMAL"/>
+        <result column="ctr" property="ctr" jdbcType="DECIMAL"/>
+        <result column="convert" property="convert" jdbcType="BIGINT"/>
+        <result column="convert_cost" property="convertCost" jdbcType="DECIMAL"/>
+        <result column="convert_rate" property="convertRate" jdbcType="DECIMAL"/>
+        <result column="deep_convert" property="deepConvert" jdbcType="BIGINT"/>
+        <result column="deep_convert_cost" property="deepConvertCost" jdbcType="DECIMAL"/>
+        <result column="deep_convert_rate" property="deepConvertRate" jdbcType="DECIMAL"/>
+        <result column="attribution_convert" property="attributionConvert" jdbcType="BIGINT"/>
+        <result column="attribution_convert_cost" property="attributionConvertCost" jdbcType="DECIMAL"/>
+        <result column="attribution_deep_convert" property="attributionDeepConvert" jdbcType="BIGINT"/>
+        <result column="attribution_deep_convert_cost" property="attributionDeepConvertCost" jdbcType="DECIMAL"/>
+        <result column="download_start" property="downloadStart" jdbcType="BIGINT"/>
+        <result column="download_start_cost" property="downloadStartCost" jdbcType="DECIMAL"/>
+        <result column="download_start_rate" property="downloadStartRate" jdbcType="DECIMAL"/>
+        <result column="download_finish" property="downloadFinish" jdbcType="BIGINT"/>
+        <result column="download_finish_cost" property="downloadFinishCost" jdbcType="DECIMAL"/>
+        <result column="download_finish_rate" property="downloadFinishRate" jdbcType="DECIMAL"/>
+        <result column="click_install" property="clickInstall" jdbcType="BIGINT"/>
+        <result column="install_finish" property="installFinish" jdbcType="BIGINT"/>
+        <result column="install_finish_cost" property="installFinishCost" jdbcType="DECIMAL"/>
+        <result column="install_finish_rate" property="installFinishRate" jdbcType="DECIMAL"/>
+        <result column="active" property="active" jdbcType="BIGINT"/>
+        <result column="active_cost" property="activeCost" jdbcType="DECIMAL"/>
+        <result column="active_rate" property="activeRate" jdbcType="DECIMAL"/>
+        <result column="register" property="register" jdbcType="DECIMAL"/>
+        <result column="active_register_cost" property="activeRegisterCost" jdbcType="DECIMAL"/>
+        <result column="active_register_rate" property="activeRegisterRate" jdbcType="REAL"/>
+        <result column="next_day_open" property="nextDayOpen" jdbcType="BIGINT"/>
+        <result column="next_day_open_cost" property="nextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="next_day_open_rate" property="nextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_cnt" property="attributionNextDayOpenCnt" jdbcType="BIGINT"/>
+        <result column="attribution_next_day_open_cost" property="attributionNextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_rate" property="attributionNextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="game_addiction" property="gameAddiction" jdbcType="BIGINT"/>
+        <result column="game_addiction_cost" property="gameAddictionCost" jdbcType="DECIMAL"/>
+        <result column="game_addiction_rate" property="gameAddictionRate" jdbcType="DECIMAL"/>
+        <result column="pay_count" property="payCount" jdbcType="BIGINT"/>
+        <result column="active_pay_cost" property="activePayCost" jdbcType="DECIMAL"/>
+        <result column="active_pay_rate" property="activePayRate" jdbcType="DECIMAL"/>
+        <result column="loan_completion" property="loanCompletion" jdbcType="BIGINT"/>
+        <result column="loan_completion_cost" property="loanCompletionCost" jdbcType="DECIMAL"/>
+        <result column="loan_completion_rate" property="loanCompletionRate" jdbcType="DECIMAL"/>
+        <result column="pre_loan_credit" property="preLoanCredit" jdbcType="BIGINT"/>
+        <result column="pre_loan_credit_cost" property="preLoanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit" property="loanCredit" jdbcType="BIGINT"/>
+        <result column="loan_credit_cost" property="loanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit_rate" property="loanCreditRate" jdbcType="DECIMAL"/>
+        <result column="in_app_uv" property="inAppUv" jdbcType="BIGINT"/>
+        <result column="in_app_detail_uv" property="inAppDetailUv" jdbcType="BIGINT"/>
+        <result column="in_app_cart" property="inAppCart" jdbcType="BIGINT"/>
+        <result column="in_app_pay" property="inAppPay" jdbcType="BIGINT"/>
+        <result column="in_app_order" property="inAppOrder" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_count" property="attributionGamePay7dCount" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_cost" property="attributionGamePay7dCost" jdbcType="DECIMAL"/>
+        <result column="attribution_active_pay_7d_per_count" property="attributionActivePay7dPerCount"
+                jdbcType="BIGINT"/>
+        <result column="game_pay_cost" property="gamePayCost" jdbcType="DECIMAL"/>
+        <result column="game_pay_count" property="gamePayCount" jdbcType="BIGINT"/>
+        <result column="phone" property="phone" jdbcType="BIGINT"/>
+        <result column="form" property="form" jdbcType="BIGINT"/>
+        <result column="map_search" property="mapSearch" jdbcType="BIGINT"/>
+        <result column="button" property="button" jdbcType="BIGINT"/>
+        <result column="view" property="view" jdbcType="BIGINT"/>
+        <result column="download" property="download" jdbcType="BIGINT"/>
+        <result column="qq" property="qq" jdbcType="BIGINT"/>
+        <result column="lottery" property="lottery" jdbcType="BIGINT"/>
+        <result column="vote" property="vote" jdbcType="BIGINT"/>
+        <result column="message" property="message" jdbcType="BIGINT"/>
+        <result column="redirect" property="redirect" jdbcType="BIGINT"/>
+        <result column="shopping" property="shopping" jdbcType="BIGINT"/>
+        <result column="consult" property="consult" jdbcType="BIGINT"/>
+        <result column="wechat" property="wechat" jdbcType="BIGINT"/>
+        <result column="phone_confirm" property="phoneConfirm" jdbcType="BIGINT"/>
+        <result column="phone_connect" property="phoneConnect" jdbcType="BIGINT"/>
+        <result column="consult_effective" property="consultEffective" jdbcType="BIGINT"/>
+        <result column="coupon" property="coupon" jdbcType="BIGINT"/>
+        <result column="coupon_single_page" property="couponSinglePage" jdbcType="BIGINT"/>
+        <result column="redirect_to_shop" property="redirectToShop" jdbcType="BIGINT"/>
+        <result column="poi_collect" property="poiCollect" jdbcType="BIGINT"/>
+        <result column="poi_address_click" property="poiAddressClick" jdbcType="BIGINT"/>
+        <result column="luban_order_cnt" property="lubanOrderCnt" jdbcType="BIGINT"/>
+        <result column="luban_order_stat_amount" property="lubanOrderStatAmount" jdbcType="DECIMAL"/>
+        <result column="luban_order_roi" property="lubanOrderRoi" jdbcType="DECIMAL"/>
+        <result column="luban_live_enter_cnt" property="lubanLiveEnterCnt" jdbcType="BIGINT"/>
+        <result column="live_watch_one_minute_count" property="liveWatchOneMinuteCount" jdbcType="BIGINT"/>
+        <result column="luban_live_follow_cnt" property="lubanLiveFollowCnt" jdbcType="BIGINT"/>
+        <result column="live_fans_club_join_cnt" property="liveFansClubJoinCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_comment_cnt" property="lubanLiveCommentCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_share_cnt" property="lubanLiveShareCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_cnt" property="lubanLiveGiftCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_amount" property="lubanLiveGiftAmount" jdbcType="DECIMAL"/>
+        <result column="luban_live_slidecart_click_cnt" property="lubanLiveSlidecartClickCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_click_product_cnt" property="lubanLiveClickProductCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_count" property="lubanLivePayOrderCount" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_stat_cost" property="lubanLivePayOrderStatCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_count" property="liveComponentClickCount" jdbcType="BIGINT"/>
+        <result column="live_component_click_cost" property="liveComponentClickCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_rate" property="liveComponentClickRate" jdbcType="DECIMAL"/>
+        <result column="wechat_login_count" property="wechatLoginCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_login_30d_count" property="attributionWechatLogin30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_login_cost" property="wechatLoginCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_login_30d_cost" property="attributionWechatLogin30dCost" jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_count" property="wechatFirstPayCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_first_pay_30d_count" property="attributionWechatFirstPay30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_first_pay_cost" property="wechatFirstPayCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_cost" property="attributionWechatFirstPay30dCost"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_rate" property="wechatFirstPayRate" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_rate" property="attributionWechatFirstPay30dRate"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_pay_amount" property="wechatPayAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_amount" property="attributionWechatPay30dAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_roi" property="attributionWechatPay30dRoi" jdbcType="DECIMAL"/>
+        <result column="phone_effective" property="phoneEffective" jdbcType="BIGINT"/>
+        <result column="total_play" property="totalPlay" jdbcType="BIGINT"/>
+        <result column="valid_play" property="validPlay" jdbcType="BIGINT"/>
+        <result column="valid_play_cost" property="validPlayCost" jdbcType="DECIMAL"/>
+        <result column="valid_play_rate" property="validPlayRate" jdbcType="DECIMAL"/>
+        <result column="play_25_feed_break" property="play25FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_50_feed_break" property="play50FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_75_feed_break" property="play75FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_100_feed_break" property="play100FeedBreak" jdbcType="BIGINT"/>
+        <result column="average_play_time_per_play" property="averagePlayTimePerPlay" jdbcType="DECIMAL"/>
+        <result column="play_over_rate" property="playOverRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play_rate" property="wifiPlayRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play" property="wifiPlay" jdbcType="BIGINT"/>
+        <result column="play_duration_sum" property="playDurationSum" jdbcType="BIGINT"/>
+        <result column="advanced_creative_phone_click" property="advancedCreativePhoneClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_counsel_click" property="advancedCreativeCounselClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_click" property="advancedCreativeFormClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_coupon_addition" property="advancedCreativeCouponAddition" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_submit" property="advancedCreativeFormSubmit" jdbcType="BIGINT"/>
+        <result column="card_show" property="cardShow" jdbcType="BIGINT"/>
+        <result column="share" property="share" jdbcType="BIGINT"/>
+        <result column="comment" property="comment" jdbcType="BIGINT"/>
+        <result column="like" property="like" jdbcType="BIGINT"/>
+        <result column="follow" property="follow" jdbcType="BIGINT"/>
+        <result column="home_visited" property="homeVisited" jdbcType="BIGINT"/>
+        <result column="ies_challenge_click" property="iesChallengeClick" jdbcType="BIGINT"/>
+        <result column="ies_music_click" property="iesMusicClick" jdbcType="BIGINT"/>
+        <result column="location_click" property="locationClick" jdbcType="BIGINT"/>
+        <result column="message_action" property="messageAction" jdbcType="BIGINT"/>
+        <result column="click_landing_page" property="clickLandingPage" jdbcType="BIGINT"/>
+        <result column="click_shopwindow" property="clickShopwindow" jdbcType="BIGINT"/>
+        <result column="click_website" property="clickWebsite" jdbcType="BIGINT"/>
+        <result column="click_download" property="clickDownload" jdbcType="BIGINT"/>
+        <result column="click_call_dy" property="clickCallDy" jdbcType="BIGINT"/>
+        <result column="submit_certification_count" property="submitCertificationCount" jdbcType="BIGINT"/>
+        <result column="approval_count" property="approvalCount" jdbcType="BIGINT"/>
+        <result column="first_rental_order_count" property="firstRentalOrderCount" jdbcType="BIGINT"/>
+        <result column="first_order_count" property="firstOrderCount" jdbcType="BIGINT"/>
+        <result column="commute_first_pay_count" property="commuteFirstPayCount" jdbcType="BIGINT"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, campaign_id, stat_datetime, hour, campaign_name, cost, show, avg_show_cost, 
+    click, avg_click_cost, ctr, convert, convert_cost, convert_rate, deep_convert, deep_convert_cost, 
+    deep_convert_rate, attribution_convert, attribution_convert_cost, attribution_deep_convert, 
+    attribution_deep_convert_cost, download_start, download_start_cost, download_start_rate, 
+    download_finish, download_finish_cost, download_finish_rate, click_install, install_finish, 
+    install_finish_cost, install_finish_rate, active, active_cost, active_rate, register, 
+    active_register_cost, active_register_rate, next_day_open, next_day_open_cost, next_day_open_rate, 
+    attribution_next_day_open_cnt, attribution_next_day_open_cost, attribution_next_day_open_rate, 
+    game_addiction, game_addiction_cost, game_addiction_rate, pay_count, active_pay_cost, 
+    active_pay_rate, loan_completion, loan_completion_cost, loan_completion_rate, pre_loan_credit, 
+    pre_loan_credit_cost, loan_credit, loan_credit_cost, loan_credit_rate, in_app_uv, 
+    in_app_detail_uv, in_app_cart, in_app_pay, in_app_order, attribution_game_pay_7d_count, 
+    attribution_game_pay_7d_cost, attribution_active_pay_7d_per_count, game_pay_cost, 
+    game_pay_count, phone, form, map_search, button, view, download, qq, lottery, vote, 
+    message, redirect, shopping, consult, wechat, phone_confirm, phone_connect, consult_effective, 
+    coupon, coupon_single_page, redirect_to_shop, poi_collect, poi_address_click, luban_order_cnt, 
+    luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt, live_watch_one_minute_count, 
+    luban_live_follow_cnt, live_fans_club_join_cnt, luban_live_comment_cnt, luban_live_share_cnt, 
+    luban_live_gift_cnt, luban_live_gift_amount, luban_live_slidecart_click_cnt, luban_live_click_product_cnt, 
+    luban_live_pay_order_count, luban_live_pay_order_stat_cost, live_component_click_count, 
+    live_component_click_cost, live_component_click_rate, wechat_login_count, attribution_wechat_login_30d_count, 
+    wechat_login_cost, attribution_wechat_login_30d_cost, wechat_first_pay_count, attribution_wechat_first_pay_30d_count, 
+    wechat_first_pay_cost, attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, 
+    attribution_wechat_first_pay_30d_rate, wechat_pay_amount, attribution_wechat_pay_30d_amount, 
+    attribution_wechat_pay_30d_roi, phone_effective, total_play, valid_play, valid_play_cost, 
+    valid_play_rate, play_25_feed_break, play_50_feed_break, play_75_feed_break, play_100_feed_break, 
+    average_play_time_per_play, play_over_rate, wifi_play_rate, wifi_play, play_duration_sum, 
+    advanced_creative_phone_click, advanced_creative_counsel_click, advanced_creative_form_click, 
+    advanced_creative_coupon_addition, advanced_creative_form_submit, card_show, share, 
+    comment, like, follow, home_visited, ies_challenge_click, ies_music_click, location_click, 
+    message_action, click_landing_page, click_shopwindow, click_website, click_download, 
+    click_call_dy, submit_certification_count, approval_count, first_rental_order_count, 
+    first_order_count, commute_first_pay_count
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportHourly">
+    insert into bytedance_campaign_report_hourly (advertiser_id, campaign_id, stat_datetime, 
+      hour, campaign_name, cost, 
+      show, avg_show_cost, click, 
+      avg_click_cost, ctr, convert, 
+      convert_cost, convert_rate, deep_convert, 
+      deep_convert_cost, deep_convert_rate, attribution_convert, 
+      attribution_convert_cost, attribution_deep_convert, 
+      attribution_deep_convert_cost, download_start, 
+      download_start_cost, download_start_rate, download_finish, 
+      download_finish_cost, download_finish_rate, 
+      click_install, install_finish, install_finish_cost, 
+      install_finish_rate, active, active_cost, 
+      active_rate, register, active_register_cost, 
+      active_register_rate, next_day_open, next_day_open_cost, 
+      next_day_open_rate, attribution_next_day_open_cnt, 
+      attribution_next_day_open_cost, attribution_next_day_open_rate, 
+      game_addiction, game_addiction_cost, game_addiction_rate, 
+      pay_count, active_pay_cost, active_pay_rate, 
+      loan_completion, loan_completion_cost, loan_completion_rate, 
+      pre_loan_credit, pre_loan_credit_cost, loan_credit, 
+      loan_credit_cost, loan_credit_rate, in_app_uv, 
+      in_app_detail_uv, in_app_cart, in_app_pay, 
+      in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost, 
+      attribution_active_pay_7d_per_count, game_pay_cost, 
+      game_pay_count, phone, form, 
+      map_search, button, view, 
+      download, qq, lottery, 
+      vote, message, redirect, 
+      shopping, consult, wechat, 
+      phone_confirm, phone_connect, consult_effective, 
+      coupon, coupon_single_page, redirect_to_shop, 
+      poi_collect, poi_address_click, luban_order_cnt, 
+      luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt, 
+      live_watch_one_minute_count, luban_live_follow_cnt, 
+      live_fans_club_join_cnt, luban_live_comment_cnt, 
+      luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount, 
+      luban_live_slidecart_click_cnt, luban_live_click_product_cnt, 
+      luban_live_pay_order_count, luban_live_pay_order_stat_cost, 
+      live_component_click_count, live_component_click_cost, 
+      live_component_click_rate, wechat_login_count, 
+      attribution_wechat_login_30d_count, wechat_login_cost, 
+      attribution_wechat_login_30d_cost, wechat_first_pay_count, 
+      attribution_wechat_first_pay_30d_count, wechat_first_pay_cost, 
+      attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, 
+      attribution_wechat_first_pay_30d_rate, wechat_pay_amount, 
+      attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi, 
+      phone_effective, total_play, valid_play, 
+      valid_play_cost, valid_play_rate, play_25_feed_break, 
+      play_50_feed_break, play_75_feed_break, play_100_feed_break, 
+      average_play_time_per_play, play_over_rate, wifi_play_rate, 
+      wifi_play, play_duration_sum, advanced_creative_phone_click, 
+      advanced_creative_counsel_click, advanced_creative_form_click, 
+      advanced_creative_coupon_addition, advanced_creative_form_submit, 
+      card_show, share, comment, 
+      like, follow, home_visited, 
+      ies_challenge_click, ies_music_click, location_click, 
+      message_action, click_landing_page, click_shopwindow, 
+      click_website, click_download, click_call_dy, 
+      submit_certification_count, approval_count, 
+      first_rental_order_count, first_order_count, commute_first_pay_count
+      )
+    values (#{advertiserId,jdbcType=BIGINT}, #{campaignId,jdbcType=BIGINT}, #{statDatetime,jdbcType=INTEGER}, 
+      #{hour,jdbcType=INTEGER}, #{campaignName,jdbcType=VARCHAR}, #{cost,jdbcType=DECIMAL}, 
+      #{show,jdbcType=BIGINT}, #{avgShowCost,jdbcType=DECIMAL}, #{click,jdbcType=BIGINT}, 
+      #{avgClickCost,jdbcType=DECIMAL}, #{ctr,jdbcType=DECIMAL}, #{convert,jdbcType=BIGINT}, 
+      #{convertCost,jdbcType=DECIMAL}, #{convertRate,jdbcType=DECIMAL}, #{deepConvert,jdbcType=BIGINT}, 
+      #{deepConvertCost,jdbcType=DECIMAL}, #{deepConvertRate,jdbcType=DECIMAL}, #{attributionConvert,jdbcType=BIGINT}, 
+      #{attributionConvertCost,jdbcType=DECIMAL}, #{attributionDeepConvert,jdbcType=BIGINT}, 
+      #{attributionDeepConvertCost,jdbcType=DECIMAL}, #{downloadStart,jdbcType=BIGINT}, 
+      #{downloadStartCost,jdbcType=DECIMAL}, #{downloadStartRate,jdbcType=DECIMAL}, #{downloadFinish,jdbcType=BIGINT}, 
+      #{downloadFinishCost,jdbcType=DECIMAL}, #{downloadFinishRate,jdbcType=DECIMAL}, 
+      #{clickInstall,jdbcType=BIGINT}, #{installFinish,jdbcType=BIGINT}, #{installFinishCost,jdbcType=DECIMAL}, 
+      #{installFinishRate,jdbcType=DECIMAL}, #{active,jdbcType=BIGINT}, #{activeCost,jdbcType=DECIMAL}, 
+      #{activeRate,jdbcType=DECIMAL}, #{register,jdbcType=DECIMAL}, #{activeRegisterCost,jdbcType=DECIMAL}, 
+      #{activeRegisterRate,jdbcType=REAL}, #{nextDayOpen,jdbcType=BIGINT}, #{nextDayOpenCost,jdbcType=DECIMAL}, 
+      #{nextDayOpenRate,jdbcType=DECIMAL}, #{attributionNextDayOpenCnt,jdbcType=BIGINT}, 
+      #{attributionNextDayOpenCost,jdbcType=DECIMAL}, #{attributionNextDayOpenRate,jdbcType=DECIMAL}, 
+      #{gameAddiction,jdbcType=BIGINT}, #{gameAddictionCost,jdbcType=DECIMAL}, #{gameAddictionRate,jdbcType=DECIMAL}, 
+      #{payCount,jdbcType=BIGINT}, #{activePayCost,jdbcType=DECIMAL}, #{activePayRate,jdbcType=DECIMAL}, 
+      #{loanCompletion,jdbcType=BIGINT}, #{loanCompletionCost,jdbcType=DECIMAL}, #{loanCompletionRate,jdbcType=DECIMAL}, 
+      #{preLoanCredit,jdbcType=BIGINT}, #{preLoanCreditCost,jdbcType=DECIMAL}, #{loanCredit,jdbcType=BIGINT}, 
+      #{loanCreditCost,jdbcType=DECIMAL}, #{loanCreditRate,jdbcType=DECIMAL}, #{inAppUv,jdbcType=BIGINT}, 
+      #{inAppDetailUv,jdbcType=BIGINT}, #{inAppCart,jdbcType=BIGINT}, #{inAppPay,jdbcType=BIGINT}, 
+      #{inAppOrder,jdbcType=BIGINT}, #{attributionGamePay7dCount,jdbcType=BIGINT}, #{attributionGamePay7dCost,jdbcType=DECIMAL}, 
+      #{attributionActivePay7dPerCount,jdbcType=BIGINT}, #{gamePayCost,jdbcType=DECIMAL}, 
+      #{gamePayCount,jdbcType=BIGINT}, #{phone,jdbcType=BIGINT}, #{form,jdbcType=BIGINT}, 
+      #{mapSearch,jdbcType=BIGINT}, #{button,jdbcType=BIGINT}, #{view,jdbcType=BIGINT}, 
+      #{download,jdbcType=BIGINT}, #{qq,jdbcType=BIGINT}, #{lottery,jdbcType=BIGINT}, 
+      #{vote,jdbcType=BIGINT}, #{message,jdbcType=BIGINT}, #{redirect,jdbcType=BIGINT}, 
+      #{shopping,jdbcType=BIGINT}, #{consult,jdbcType=BIGINT}, #{wechat,jdbcType=BIGINT}, 
+      #{phoneConfirm,jdbcType=BIGINT}, #{phoneConnect,jdbcType=BIGINT}, #{consultEffective,jdbcType=BIGINT}, 
+      #{coupon,jdbcType=BIGINT}, #{couponSinglePage,jdbcType=BIGINT}, #{redirectToShop,jdbcType=BIGINT}, 
+      #{poiCollect,jdbcType=BIGINT}, #{poiAddressClick,jdbcType=BIGINT}, #{lubanOrderCnt,jdbcType=BIGINT}, 
+      #{lubanOrderStatAmount,jdbcType=DECIMAL}, #{lubanOrderRoi,jdbcType=DECIMAL}, #{lubanLiveEnterCnt,jdbcType=BIGINT}, 
+      #{liveWatchOneMinuteCount,jdbcType=BIGINT}, #{lubanLiveFollowCnt,jdbcType=BIGINT}, 
+      #{liveFansClubJoinCnt,jdbcType=BIGINT}, #{lubanLiveCommentCnt,jdbcType=BIGINT}, 
+      #{lubanLiveShareCnt,jdbcType=BIGINT}, #{lubanLiveGiftCnt,jdbcType=BIGINT}, #{lubanLiveGiftAmount,jdbcType=DECIMAL}, 
+      #{lubanLiveSlidecartClickCnt,jdbcType=BIGINT}, #{lubanLiveClickProductCnt,jdbcType=BIGINT}, 
+      #{lubanLivePayOrderCount,jdbcType=BIGINT}, #{lubanLivePayOrderStatCost,jdbcType=DECIMAL}, 
+      #{liveComponentClickCount,jdbcType=BIGINT}, #{liveComponentClickCost,jdbcType=DECIMAL}, 
+      #{liveComponentClickRate,jdbcType=DECIMAL}, #{wechatLoginCount,jdbcType=BIGINT}, 
+      #{attributionWechatLogin30dCount,jdbcType=BIGINT}, #{wechatLoginCost,jdbcType=DECIMAL}, 
+      #{attributionWechatLogin30dCost,jdbcType=DECIMAL}, #{wechatFirstPayCount,jdbcType=BIGINT}, 
+      #{attributionWechatFirstPay30dCount,jdbcType=BIGINT}, #{wechatFirstPayCost,jdbcType=DECIMAL}, 
+      #{attributionWechatFirstPay30dCost,jdbcType=DECIMAL}, #{wechatFirstPayRate,jdbcType=DECIMAL}, 
+      #{attributionWechatFirstPay30dRate,jdbcType=DECIMAL}, #{wechatPayAmount,jdbcType=DECIMAL}, 
+      #{attributionWechatPay30dAmount,jdbcType=DECIMAL}, #{attributionWechatPay30dRoi,jdbcType=DECIMAL}, 
+      #{phoneEffective,jdbcType=BIGINT}, #{totalPlay,jdbcType=BIGINT}, #{validPlay,jdbcType=BIGINT}, 
+      #{validPlayCost,jdbcType=DECIMAL}, #{validPlayRate,jdbcType=DECIMAL}, #{play25FeedBreak,jdbcType=BIGINT}, 
+      #{play50FeedBreak,jdbcType=BIGINT}, #{play75FeedBreak,jdbcType=BIGINT}, #{play100FeedBreak,jdbcType=BIGINT}, 
+      #{averagePlayTimePerPlay,jdbcType=DECIMAL}, #{playOverRate,jdbcType=DECIMAL}, #{wifiPlayRate,jdbcType=DECIMAL}, 
+      #{wifiPlay,jdbcType=BIGINT}, #{playDurationSum,jdbcType=BIGINT}, #{advancedCreativePhoneClick,jdbcType=BIGINT}, 
+      #{advancedCreativeCounselClick,jdbcType=BIGINT}, #{advancedCreativeFormClick,jdbcType=BIGINT}, 
+      #{advancedCreativeCouponAddition,jdbcType=BIGINT}, #{advancedCreativeFormSubmit,jdbcType=BIGINT}, 
+      #{cardShow,jdbcType=BIGINT}, #{share,jdbcType=BIGINT}, #{comment,jdbcType=BIGINT}, 
+      #{like,jdbcType=BIGINT}, #{follow,jdbcType=BIGINT}, #{homeVisited,jdbcType=BIGINT}, 
+      #{iesChallengeClick,jdbcType=BIGINT}, #{iesMusicClick,jdbcType=BIGINT}, #{locationClick,jdbcType=BIGINT}, 
+      #{messageAction,jdbcType=BIGINT}, #{clickLandingPage,jdbcType=BIGINT}, #{clickShopwindow,jdbcType=BIGINT}, 
+      #{clickWebsite,jdbcType=BIGINT}, #{clickDownload,jdbcType=BIGINT}, #{clickCallDy,jdbcType=BIGINT}, 
+      #{submitCertificationCount,jdbcType=BIGINT}, #{approvalCount,jdbcType=BIGINT}, 
+      #{firstRentalOrderCount,jdbcType=BIGINT}, #{firstOrderCount,jdbcType=BIGINT}, #{commuteFirstPayCount,jdbcType=BIGINT}
+      )
+  </insert>
 
 </mapper>

+ 44 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCreativeGetMapper.xml

@@ -1,5 +1,47 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceCreativeGetMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeGet">
+        <id column="advertiser_id" property="advertiserId" jdbcType="VARCHAR"/>
+        <id column="ad_id" property="adId" jdbcType="BIGINT"/>
+        <id column="creative_id" property="creativeId" jdbcType="BIGINT"/>
+        <result column="title" property="title" jdbcType="VARCHAR"/>
+        <result column="creative_word_ids" property="creativeWordIds" jdbcType="VARCHAR"/>
+        <result column="status" property="status" jdbcType="VARCHAR"/>
+        <result column="opt_status" property="optStatus" jdbcType="VARCHAR"/>
+        <result column="image_mode" property="imageMode" jdbcType="VARCHAR"/>
+        <result column="image_ids" property="imageIds" jdbcType="VARCHAR"/>
+        <result column="image_id" property="imageId" jdbcType="VARCHAR"/>
+        <result column="video_id" property="videoId" jdbcType="VARCHAR"/>
+        <result column="third_party_id" property="thirdPartyId" jdbcType="VARCHAR"/>
+        <result column="metarials" property="metarials" jdbcType="VARCHAR"/>
+        <result column="creative_create_time" property="creativeCreateTime" jdbcType="VARCHAR"/>
+        <result column="creative_modify_time" property="creativeModifyTime" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, ad_id, creative_id, title, creative_word_ids, status, opt_status, 
+    image_mode, image_ids, image_id, video_id, third_party_id, metarials, creative_create_time, 
+    creative_modify_time
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeGet">
+        replace into bytedance_creative_get (advertiser_id, ad_id, creative_id,
+        title, creative_word_ids, status,
+        opt_status, image_mode, image_ids,
+        image_id, video_id, third_party_id,
+        metarials, creative_create_time, creative_modify_time
+        )
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=VARCHAR}, #{item.adId,jdbcType=BIGINT}, #{item.creativeId,jdbcType=BIGINT},
+            #{item.title,jdbcType=VARCHAR}, #{item.creativeWordIds,jdbcType=VARCHAR}, #{item.status,jdbcType=VARCHAR},
+            #{item.optStatus,jdbcType=VARCHAR}, #{item.imageMode,jdbcType=VARCHAR}, #{item.imageIds,jdbcType=VARCHAR},
+            #{item.imageId,jdbcType=VARCHAR}, #{item.videoId,jdbcType=VARCHAR}, #{item.thirdPartyId,jdbcType=VARCHAR},
+            #{item.metarials,jdbcType=VARCHAR}, #{item.creativeCreateTime,jdbcType=VARCHAR},
+            #{item.creativeModifyTime,jdbcType=VARCHAR}
+            )
+        </foreach>
+    </insert>
 
 </mapper>

+ 363 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCreativeReportDailyMapper.xml

@@ -1,5 +1,366 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceCreativeReportDailyMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeReportDaily">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="campaign_id" property="campaignId" jdbcType="BIGINT"/>
+        <id column="ad_id" property="adId" jdbcType="BIGINT"/>
+        <id column="creative_id" property="creativeId" jdbcType="BIGINT"/>
+        <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER"/>
+        <result column="campaign_name" property="campaignName" jdbcType="VARCHAR"/>
+        <result column="ad_name" property="adName" jdbcType="VARCHAR"/>
+        <result column="cost" property="cost" jdbcType="DECIMAL"/>
+        <result column="show" property="show" jdbcType="BIGINT"/>
+        <result column="avg_show_cost" property="avgShowCost" jdbcType="DECIMAL"/>
+        <result column="click" property="click" jdbcType="BIGINT"/>
+        <result column="avg_click_cost" property="avgClickCost" jdbcType="DECIMAL"/>
+        <result column="ctr" property="ctr" jdbcType="DECIMAL"/>
+        <result column="convert" property="convert" jdbcType="BIGINT"/>
+        <result column="convert_cost" property="convertCost" jdbcType="DECIMAL"/>
+        <result column="convert_rate" property="convertRate" jdbcType="DECIMAL"/>
+        <result column="deep_convert" property="deepConvert" jdbcType="BIGINT"/>
+        <result column="deep_convert_cost" property="deepConvertCost" jdbcType="DECIMAL"/>
+        <result column="deep_convert_rate" property="deepConvertRate" jdbcType="DECIMAL"/>
+        <result column="attribution_convert" property="attributionConvert" jdbcType="BIGINT"/>
+        <result column="attribution_convert_cost" property="attributionConvertCost" jdbcType="DECIMAL"/>
+        <result column="attribution_deep_convert" property="attributionDeepConvert" jdbcType="BIGINT"/>
+        <result column="attribution_deep_convert_cost" property="attributionDeepConvertCost" jdbcType="DECIMAL"/>
+        <result column="download_start" property="downloadStart" jdbcType="BIGINT"/>
+        <result column="download_start_cost" property="downloadStartCost" jdbcType="DECIMAL"/>
+        <result column="download_start_rate" property="downloadStartRate" jdbcType="DECIMAL"/>
+        <result column="download_finish" property="downloadFinish" jdbcType="BIGINT"/>
+        <result column="download_finish_cost" property="downloadFinishCost" jdbcType="DECIMAL"/>
+        <result column="download_finish_rate" property="downloadFinishRate" jdbcType="DECIMAL"/>
+        <result column="click_install" property="clickInstall" jdbcType="BIGINT"/>
+        <result column="install_finish" property="installFinish" jdbcType="BIGINT"/>
+        <result column="install_finish_cost" property="installFinishCost" jdbcType="DECIMAL"/>
+        <result column="install_finish_rate" property="installFinishRate" jdbcType="DECIMAL"/>
+        <result column="active" property="active" jdbcType="BIGINT"/>
+        <result column="active_cost" property="activeCost" jdbcType="DECIMAL"/>
+        <result column="active_rate" property="activeRate" jdbcType="DECIMAL"/>
+        <result column="register" property="register" jdbcType="DECIMAL"/>
+        <result column="active_register_cost" property="activeRegisterCost" jdbcType="DECIMAL"/>
+        <result column="active_register_rate" property="activeRegisterRate" jdbcType="REAL"/>
+        <result column="next_day_open" property="nextDayOpen" jdbcType="BIGINT"/>
+        <result column="next_day_open_cost" property="nextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="next_day_open_rate" property="nextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_cnt" property="attributionNextDayOpenCnt" jdbcType="BIGINT"/>
+        <result column="attribution_next_day_open_cost" property="attributionNextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_rate" property="attributionNextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="game_addiction" property="gameAddiction" jdbcType="BIGINT"/>
+        <result column="game_addiction_cost" property="gameAddictionCost" jdbcType="DECIMAL"/>
+        <result column="game_addiction_rate" property="gameAddictionRate" jdbcType="DECIMAL"/>
+        <result column="pay_count" property="payCount" jdbcType="BIGINT"/>
+        <result column="active_pay_cost" property="activePayCost" jdbcType="DECIMAL"/>
+        <result column="active_pay_rate" property="activePayRate" jdbcType="DECIMAL"/>
+        <result column="loan_completion" property="loanCompletion" jdbcType="BIGINT"/>
+        <result column="loan_completion_cost" property="loanCompletionCost" jdbcType="DECIMAL"/>
+        <result column="loan_completion_rate" property="loanCompletionRate" jdbcType="DECIMAL"/>
+        <result column="pre_loan_credit" property="preLoanCredit" jdbcType="BIGINT"/>
+        <result column="pre_loan_credit_cost" property="preLoanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit" property="loanCredit" jdbcType="BIGINT"/>
+        <result column="loan_credit_cost" property="loanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit_rate" property="loanCreditRate" jdbcType="DECIMAL"/>
+        <result column="in_app_uv" property="inAppUv" jdbcType="BIGINT"/>
+        <result column="in_app_detail_uv" property="inAppDetailUv" jdbcType="BIGINT"/>
+        <result column="in_app_cart" property="inAppCart" jdbcType="BIGINT"/>
+        <result column="in_app_pay" property="inAppPay" jdbcType="BIGINT"/>
+        <result column="in_app_order" property="inAppOrder" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_count" property="attributionGamePay7dCount" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_cost" property="attributionGamePay7dCost" jdbcType="DECIMAL"/>
+        <result column="attribution_active_pay_7d_per_count" property="attributionActivePay7dPerCount"
+                jdbcType="BIGINT"/>
+        <result column="game_pay_cost" property="gamePayCost" jdbcType="DECIMAL"/>
+        <result column="game_pay_count" property="gamePayCount" jdbcType="BIGINT"/>
+        <result column="phone" property="phone" jdbcType="BIGINT"/>
+        <result column="form" property="form" jdbcType="BIGINT"/>
+        <result column="map_search" property="mapSearch" jdbcType="BIGINT"/>
+        <result column="button" property="button" jdbcType="BIGINT"/>
+        <result column="view" property="view" jdbcType="BIGINT"/>
+        <result column="download" property="download" jdbcType="BIGINT"/>
+        <result column="qq" property="qq" jdbcType="BIGINT"/>
+        <result column="lottery" property="lottery" jdbcType="BIGINT"/>
+        <result column="vote" property="vote" jdbcType="BIGINT"/>
+        <result column="message" property="message" jdbcType="BIGINT"/>
+        <result column="redirect" property="redirect" jdbcType="BIGINT"/>
+        <result column="shopping" property="shopping" jdbcType="BIGINT"/>
+        <result column="consult" property="consult" jdbcType="BIGINT"/>
+        <result column="wechat" property="wechat" jdbcType="BIGINT"/>
+        <result column="phone_confirm" property="phoneConfirm" jdbcType="BIGINT"/>
+        <result column="phone_connect" property="phoneConnect" jdbcType="BIGINT"/>
+        <result column="consult_effective" property="consultEffective" jdbcType="BIGINT"/>
+        <result column="coupon" property="coupon" jdbcType="BIGINT"/>
+        <result column="coupon_single_page" property="couponSinglePage" jdbcType="BIGINT"/>
+        <result column="redirect_to_shop" property="redirectToShop" jdbcType="BIGINT"/>
+        <result column="poi_collect" property="poiCollect" jdbcType="BIGINT"/>
+        <result column="poi_address_click" property="poiAddressClick" jdbcType="BIGINT"/>
+        <result column="luban_order_cnt" property="lubanOrderCnt" jdbcType="BIGINT"/>
+        <result column="luban_order_stat_amount" property="lubanOrderStatAmount" jdbcType="DECIMAL"/>
+        <result column="luban_order_roi" property="lubanOrderRoi" jdbcType="DECIMAL"/>
+        <result column="luban_live_enter_cnt" property="lubanLiveEnterCnt" jdbcType="BIGINT"/>
+        <result column="live_watch_one_minute_count" property="liveWatchOneMinuteCount" jdbcType="BIGINT"/>
+        <result column="luban_live_follow_cnt" property="lubanLiveFollowCnt" jdbcType="BIGINT"/>
+        <result column="live_fans_club_join_cnt" property="liveFansClubJoinCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_comment_cnt" property="lubanLiveCommentCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_share_cnt" property="lubanLiveShareCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_cnt" property="lubanLiveGiftCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_amount" property="lubanLiveGiftAmount" jdbcType="DECIMAL"/>
+        <result column="luban_live_slidecart_click_cnt" property="lubanLiveSlidecartClickCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_click_product_cnt" property="lubanLiveClickProductCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_count" property="lubanLivePayOrderCount" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_stat_cost" property="lubanLivePayOrderStatCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_count" property="liveComponentClickCount" jdbcType="BIGINT"/>
+        <result column="live_component_click_cost" property="liveComponentClickCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_rate" property="liveComponentClickRate" jdbcType="DECIMAL"/>
+        <result column="wechat_login_count" property="wechatLoginCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_login_30d_count" property="attributionWechatLogin30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_login_cost" property="wechatLoginCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_login_30d_cost" property="attributionWechatLogin30dCost" jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_count" property="wechatFirstPayCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_first_pay_30d_count" property="attributionWechatFirstPay30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_first_pay_cost" property="wechatFirstPayCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_cost" property="attributionWechatFirstPay30dCost"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_rate" property="wechatFirstPayRate" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_rate" property="attributionWechatFirstPay30dRate"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_pay_amount" property="wechatPayAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_amount" property="attributionWechatPay30dAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_roi" property="attributionWechatPay30dRoi" jdbcType="DECIMAL"/>
+        <result column="phone_effective" property="phoneEffective" jdbcType="BIGINT"/>
+        <result column="total_play" property="totalPlay" jdbcType="BIGINT"/>
+        <result column="valid_play" property="validPlay" jdbcType="BIGINT"/>
+        <result column="valid_play_cost" property="validPlayCost" jdbcType="DECIMAL"/>
+        <result column="valid_play_rate" property="validPlayRate" jdbcType="DECIMAL"/>
+        <result column="play_25_feed_break" property="play25FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_50_feed_break" property="play50FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_75_feed_break" property="play75FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_100_feed_break" property="play100FeedBreak" jdbcType="BIGINT"/>
+        <result column="average_play_time_per_play" property="averagePlayTimePerPlay" jdbcType="DECIMAL"/>
+        <result column="play_over_rate" property="playOverRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play_rate" property="wifiPlayRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play" property="wifiPlay" jdbcType="BIGINT"/>
+        <result column="play_duration_sum" property="playDurationSum" jdbcType="BIGINT"/>
+        <result column="advanced_creative_phone_click" property="advancedCreativePhoneClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_counsel_click" property="advancedCreativeCounselClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_click" property="advancedCreativeFormClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_coupon_addition" property="advancedCreativeCouponAddition" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_submit" property="advancedCreativeFormSubmit" jdbcType="BIGINT"/>
+        <result column="card_show" property="cardShow" jdbcType="BIGINT"/>
+        <result column="share" property="share" jdbcType="BIGINT"/>
+        <result column="comment" property="comment" jdbcType="BIGINT"/>
+        <result column="like" property="like" jdbcType="BIGINT"/>
+        <result column="follow" property="follow" jdbcType="BIGINT"/>
+        <result column="home_visited" property="homeVisited" jdbcType="BIGINT"/>
+        <result column="ies_challenge_click" property="iesChallengeClick" jdbcType="BIGINT"/>
+        <result column="ies_music_click" property="iesMusicClick" jdbcType="BIGINT"/>
+        <result column="location_click" property="locationClick" jdbcType="BIGINT"/>
+        <result column="message_action" property="messageAction" jdbcType="BIGINT"/>
+        <result column="click_landing_page" property="clickLandingPage" jdbcType="BIGINT"/>
+        <result column="click_shopwindow" property="clickShopwindow" jdbcType="BIGINT"/>
+        <result column="click_website" property="clickWebsite" jdbcType="BIGINT"/>
+        <result column="click_download" property="clickDownload" jdbcType="BIGINT"/>
+        <result column="click_call_dy" property="clickCallDy" jdbcType="BIGINT"/>
+        <result column="submit_certification_count" property="submitCertificationCount" jdbcType="BIGINT"/>
+        <result column="approval_count" property="approvalCount" jdbcType="BIGINT"/>
+        <result column="first_rental_order_count" property="firstRentalOrderCount" jdbcType="BIGINT"/>
+        <result column="first_order_count" property="firstOrderCount" jdbcType="BIGINT"/>
+        <result column="commute_first_pay_count" property="commuteFirstPayCount" jdbcType="BIGINT"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, campaign_id, ad_id, creative_id, stat_datetime, campaign_name, ad_name, 
+    cost, show, avg_show_cost, click, avg_click_cost, ctr, convert, convert_cost, convert_rate, 
+    deep_convert, deep_convert_cost, deep_convert_rate, attribution_convert, attribution_convert_cost, 
+    attribution_deep_convert, attribution_deep_convert_cost, download_start, download_start_cost, 
+    download_start_rate, download_finish, download_finish_cost, download_finish_rate, 
+    click_install, install_finish, install_finish_cost, install_finish_rate, active, 
+    active_cost, active_rate, register, active_register_cost, active_register_rate, next_day_open, 
+    next_day_open_cost, next_day_open_rate, attribution_next_day_open_cnt, attribution_next_day_open_cost, 
+    attribution_next_day_open_rate, game_addiction, game_addiction_cost, game_addiction_rate, 
+    pay_count, active_pay_cost, active_pay_rate, loan_completion, loan_completion_cost, 
+    loan_completion_rate, pre_loan_credit, pre_loan_credit_cost, loan_credit, loan_credit_cost, 
+    loan_credit_rate, in_app_uv, in_app_detail_uv, in_app_cart, in_app_pay, in_app_order, 
+    attribution_game_pay_7d_count, attribution_game_pay_7d_cost, attribution_active_pay_7d_per_count, 
+    game_pay_cost, game_pay_count, phone, form, map_search, button, view, download, qq, 
+    lottery, vote, message, redirect, shopping, consult, wechat, phone_confirm, phone_connect, 
+    consult_effective, coupon, coupon_single_page, redirect_to_shop, poi_collect, poi_address_click, 
+    luban_order_cnt, luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt, 
+    live_watch_one_minute_count, luban_live_follow_cnt, live_fans_club_join_cnt, luban_live_comment_cnt, 
+    luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount, luban_live_slidecart_click_cnt, 
+    luban_live_click_product_cnt, luban_live_pay_order_count, luban_live_pay_order_stat_cost, 
+    live_component_click_count, live_component_click_cost, live_component_click_rate, 
+    wechat_login_count, attribution_wechat_login_30d_count, wechat_login_cost, attribution_wechat_login_30d_cost, 
+    wechat_first_pay_count, attribution_wechat_first_pay_30d_count, wechat_first_pay_cost, 
+    attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, attribution_wechat_first_pay_30d_rate, 
+    wechat_pay_amount, attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi, 
+    phone_effective, total_play, valid_play, valid_play_cost, valid_play_rate, play_25_feed_break, 
+    play_50_feed_break, play_75_feed_break, play_100_feed_break, average_play_time_per_play, 
+    play_over_rate, wifi_play_rate, wifi_play, play_duration_sum, advanced_creative_phone_click, 
+    advanced_creative_counsel_click, advanced_creative_form_click, advanced_creative_coupon_addition, 
+    advanced_creative_form_submit, card_show, share, comment, like, follow, home_visited, 
+    ies_challenge_click, ies_music_click, location_click, message_action, click_landing_page, 
+    click_shopwindow, click_website, click_download, click_call_dy, submit_certification_count, 
+    approval_count, first_rental_order_count, first_order_count, commute_first_pay_count
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeReportDaily">
+        replace into bytedance_creative_report_daily (advertiser_id, campaign_id, ad_id,
+        creative_id, stat_datetime, campaign_name,
+        ad_name, cost, `show`,
+        avg_show_cost, click, avg_click_cost,
+        ctr, `convert`, convert_cost,
+        convert_rate, deep_convert, deep_convert_cost,
+        deep_convert_rate, attribution_convert, attribution_convert_cost,
+        attribution_deep_convert, attribution_deep_convert_cost,
+        download_start, download_start_cost, download_start_rate,
+        download_finish, download_finish_cost, download_finish_rate,
+        click_install, install_finish, install_finish_cost,
+        install_finish_rate, active, active_cost,
+        active_rate, register, active_register_cost,
+        active_register_rate, next_day_open, next_day_open_cost,
+        next_day_open_rate, attribution_next_day_open_cnt,
+        attribution_next_day_open_cost, attribution_next_day_open_rate,
+        game_addiction, game_addiction_cost, game_addiction_rate,
+        pay_count, active_pay_cost, active_pay_rate,
+        loan_completion, loan_completion_cost, loan_completion_rate,
+        pre_loan_credit, pre_loan_credit_cost, loan_credit,
+        loan_credit_cost, loan_credit_rate, in_app_uv,
+        in_app_detail_uv, in_app_cart, in_app_pay,
+        in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost,
+        attribution_active_pay_7d_per_count, game_pay_cost,
+        game_pay_count, phone, form,
+        map_search, button, `view`,
+        download, qq, lottery,
+        vote, message, redirect,
+        shopping, consult, wechat,
+        phone_confirm, phone_connect, consult_effective,
+        coupon, coupon_single_page, redirect_to_shop,
+        poi_collect, poi_address_click, luban_order_cnt,
+        luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt,
+        live_watch_one_minute_count, luban_live_follow_cnt,
+        live_fans_club_join_cnt, luban_live_comment_cnt,
+        luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount,
+        luban_live_slidecart_click_cnt, luban_live_click_product_cnt,
+        luban_live_pay_order_count, luban_live_pay_order_stat_cost,
+        live_component_click_count, live_component_click_cost,
+        live_component_click_rate, wechat_login_count,
+        attribution_wechat_login_30d_count, wechat_login_cost,
+        attribution_wechat_login_30d_cost, wechat_first_pay_count,
+        attribution_wechat_first_pay_30d_count, wechat_first_pay_cost,
+        attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate,
+        attribution_wechat_first_pay_30d_rate, wechat_pay_amount,
+        attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi,
+        phone_effective, total_play, valid_play,
+        valid_play_cost, valid_play_rate, play_25_feed_break,
+        play_50_feed_break, play_75_feed_break, play_100_feed_break,
+        average_play_time_per_play, play_over_rate, wifi_play_rate,
+        wifi_play, play_duration_sum, advanced_creative_phone_click,
+        advanced_creative_counsel_click, advanced_creative_form_click,
+        advanced_creative_coupon_addition, advanced_creative_form_submit,
+        card_show, `share`, `comment`,
+        `like`, follow, home_visited,
+        ies_challenge_click, ies_music_click, location_click,
+        message_action, click_landing_page, click_shopwindow,
+        click_website, click_download, click_call_dy,
+        submit_certification_count, approval_count,
+        first_rental_order_count, first_order_count, commute_first_pay_count
+        )
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.campaignId,jdbcType=BIGINT}, #{item.adId,jdbcType=BIGINT},
+            #{item.creativeId,jdbcType=BIGINT}, #{item.statDatetime,jdbcType=INTEGER},
+            #{item.campaignName,jdbcType=VARCHAR},
+            #{item.adName,jdbcType=VARCHAR}, #{item.cost,jdbcType=DECIMAL}, #{item.show,jdbcType=BIGINT},
+            #{item.avgShowCost,jdbcType=DECIMAL}, #{item.click,jdbcType=BIGINT}, #{item.avgClickCost,jdbcType=DECIMAL},
+            #{item.ctr,jdbcType=DECIMAL}, #{item.convert,jdbcType=BIGINT}, #{item.convertCost,jdbcType=DECIMAL},
+            #{item.convertRate,jdbcType=DECIMAL}, #{item.deepConvert,jdbcType=BIGINT},
+            #{item.deepConvertCost,jdbcType=DECIMAL},
+            #{item.deepConvertRate,jdbcType=DECIMAL}, #{item.attributionConvert,jdbcType=BIGINT},
+            #{item.attributionConvertCost,jdbcType=DECIMAL},
+            #{item.attributionDeepConvert,jdbcType=BIGINT}, #{item.attributionDeepConvertCost,jdbcType=DECIMAL},
+            #{item.downloadStart,jdbcType=BIGINT}, #{item.downloadStartCost,jdbcType=DECIMAL},
+            #{item.downloadStartRate,jdbcType=DECIMAL},
+            #{item.downloadFinish,jdbcType=BIGINT}, #{item.downloadFinishCost,jdbcType=DECIMAL},
+            #{item.downloadFinishRate,jdbcType=DECIMAL},
+            #{item.clickInstall,jdbcType=BIGINT}, #{item.installFinish,jdbcType=BIGINT},
+            #{item.installFinishCost,jdbcType=DECIMAL},
+            #{item.installFinishRate,jdbcType=DECIMAL}, #{item.active,jdbcType=BIGINT},
+            #{item.activeCost,jdbcType=DECIMAL},
+            #{item.activeRate,jdbcType=DECIMAL}, #{item.register,jdbcType=DECIMAL},
+            #{item.activeRegisterCost,jdbcType=DECIMAL},
+            #{item.activeRegisterRate,jdbcType=REAL}, #{item.nextDayOpen,jdbcType=BIGINT},
+            #{item.nextDayOpenCost,jdbcType=DECIMAL},
+            #{item.nextDayOpenRate,jdbcType=DECIMAL}, #{item.attributionNextDayOpenCnt,jdbcType=BIGINT},
+            #{item.attributionNextDayOpenCost,jdbcType=DECIMAL}, #{item.attributionNextDayOpenRate,jdbcType=DECIMAL},
+            #{item.gameAddiction,jdbcType=BIGINT}, #{item.gameAddictionCost,jdbcType=DECIMAL},
+            #{item.gameAddictionRate,jdbcType=DECIMAL},
+            #{item.payCount,jdbcType=BIGINT}, #{item.activePayCost,jdbcType=DECIMAL},
+            #{item.activePayRate,jdbcType=DECIMAL},
+            #{item.loanCompletion,jdbcType=BIGINT}, #{item.loanCompletionCost,jdbcType=DECIMAL},
+            #{item.loanCompletionRate,jdbcType=DECIMAL},
+            #{item.preLoanCredit,jdbcType=BIGINT}, #{item.preLoanCreditCost,jdbcType=DECIMAL},
+            #{item.loanCredit,jdbcType=BIGINT},
+            #{item.loanCreditCost,jdbcType=DECIMAL}, #{item.loanCreditRate,jdbcType=DECIMAL},
+            #{item.inAppUv,jdbcType=BIGINT},
+            #{item.inAppDetailUv,jdbcType=BIGINT}, #{item.inAppCart,jdbcType=BIGINT}, #{item.inAppPay,jdbcType=BIGINT},
+            #{item.inAppOrder,jdbcType=BIGINT}, #{item.attributionGamePay7dCount,jdbcType=BIGINT},
+            #{item.attributionGamePay7dCost,jdbcType=DECIMAL},
+            #{item.attributionActivePay7dPerCount,jdbcType=BIGINT}, #{item.gamePayCost,jdbcType=DECIMAL},
+            #{item.gamePayCount,jdbcType=BIGINT}, #{item.phone,jdbcType=BIGINT}, #{item.form,jdbcType=BIGINT},
+            #{item.mapSearch,jdbcType=BIGINT}, #{item.button,jdbcType=BIGINT}, #{item.view,jdbcType=BIGINT},
+            #{item.download,jdbcType=BIGINT}, #{item.qq,jdbcType=BIGINT}, #{item.lottery,jdbcType=BIGINT},
+            #{item.vote,jdbcType=BIGINT}, #{item.message,jdbcType=BIGINT}, #{item.redirect,jdbcType=BIGINT},
+            #{item.shopping,jdbcType=BIGINT}, #{item.consult,jdbcType=BIGINT}, #{item.wechat,jdbcType=BIGINT},
+            #{item.phoneConfirm,jdbcType=BIGINT}, #{item.phoneConnect,jdbcType=BIGINT},
+            #{item.consultEffective,jdbcType=BIGINT},
+            #{item.coupon,jdbcType=BIGINT}, #{item.couponSinglePage,jdbcType=BIGINT},
+            #{item.redirectToShop,jdbcType=BIGINT},
+            #{item.poiCollect,jdbcType=BIGINT}, #{item.poiAddressClick,jdbcType=BIGINT},
+            #{item.lubanOrderCnt,jdbcType=BIGINT},
+            #{item.lubanOrderStatAmount,jdbcType=DECIMAL}, #{item.lubanOrderRoi,jdbcType=DECIMAL},
+            #{item.lubanLiveEnterCnt,jdbcType=BIGINT},
+            #{item.liveWatchOneMinuteCount,jdbcType=BIGINT}, #{item.lubanLiveFollowCnt,jdbcType=BIGINT},
+            #{item.liveFansClubJoinCnt,jdbcType=BIGINT}, #{item.lubanLiveCommentCnt,jdbcType=BIGINT},
+            #{item.lubanLiveShareCnt,jdbcType=BIGINT}, #{item.lubanLiveGiftCnt,jdbcType=BIGINT},
+            #{item.lubanLiveGiftAmount,jdbcType=DECIMAL},
+            #{item.lubanLiveSlidecartClickCnt,jdbcType=BIGINT}, #{item.lubanLiveClickProductCnt,jdbcType=BIGINT},
+            #{item.lubanLivePayOrderCount,jdbcType=BIGINT}, #{item.lubanLivePayOrderStatCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickCount,jdbcType=BIGINT}, #{item.liveComponentClickCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickRate,jdbcType=DECIMAL}, #{item.wechatLoginCount,jdbcType=BIGINT},
+            #{item.attributionWechatLogin30dCount,jdbcType=BIGINT}, #{item.wechatLoginCost,jdbcType=DECIMAL},
+            #{item.attributionWechatLogin30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayCount,jdbcType=BIGINT},
+            #{item.attributionWechatFirstPay30dCount,jdbcType=BIGINT}, #{item.wechatFirstPayCost,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayRate,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dRate,jdbcType=DECIMAL}, #{item.wechatPayAmount,jdbcType=DECIMAL},
+            #{item.attributionWechatPay30dAmount,jdbcType=DECIMAL}, #{item.attributionWechatPay30dRoi,jdbcType=DECIMAL},
+            #{item.phoneEffective,jdbcType=BIGINT}, #{item.totalPlay,jdbcType=BIGINT},
+            #{item.validPlay,jdbcType=BIGINT},
+            #{item.validPlayCost,jdbcType=DECIMAL}, #{item.validPlayRate,jdbcType=DECIMAL},
+            #{item.play25FeedBreak,jdbcType=BIGINT},
+            #{item.play50FeedBreak,jdbcType=BIGINT}, #{item.play75FeedBreak,jdbcType=BIGINT},
+            #{item.play100FeedBreak,jdbcType=BIGINT},
+            #{item.averagePlayTimePerPlay,jdbcType=DECIMAL}, #{item.playOverRate,jdbcType=DECIMAL},
+            #{item.wifiPlayRate,jdbcType=DECIMAL},
+            #{item.wifiPlay,jdbcType=BIGINT}, #{item.playDurationSum,jdbcType=BIGINT},
+            #{item.advancedCreativePhoneClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCounselClick,jdbcType=BIGINT}, #{item.advancedCreativeFormClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCouponAddition,jdbcType=BIGINT}, #{item.advancedCreativeFormSubmit,jdbcType=BIGINT},
+            #{item.cardShow,jdbcType=BIGINT}, #{item.share,jdbcType=BIGINT}, #{item.comment,jdbcType=BIGINT},
+            #{item.like,jdbcType=BIGINT}, #{item.follow,jdbcType=BIGINT}, #{item.homeVisited,jdbcType=BIGINT},
+            #{item.iesChallengeClick,jdbcType=BIGINT}, #{item.iesMusicClick,jdbcType=BIGINT},
+            #{item.locationClick,jdbcType=BIGINT},
+            #{item.messageAction,jdbcType=BIGINT}, #{item.clickLandingPage,jdbcType=BIGINT},
+            #{item.clickShopwindow,jdbcType=BIGINT},
+            #{item.clickWebsite,jdbcType=BIGINT}, #{item.clickDownload,jdbcType=BIGINT},
+            #{item.clickCallDy,jdbcType=BIGINT},
+            #{item.submitCertificationCount,jdbcType=BIGINT}, #{item.approvalCount,jdbcType=BIGINT},
+            #{item.firstRentalOrderCount,jdbcType=BIGINT}, #{item.firstOrderCount,jdbcType=BIGINT},
+            #{item.commuteFirstPayCount,jdbcType=BIGINT}
+            )
+        </foreach>
+    </insert>
 
 </mapper>

+ 365 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceCreativeReportHourlyMapper.xml

@@ -1,5 +1,368 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceCreativeReportHourlyMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeReportHourly">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="campaign_id" property="campaignId" jdbcType="BIGINT"/>
+        <id column="ad_id" property="adId" jdbcType="BIGINT"/>
+        <id column="creative_id" property="creativeId" jdbcType="BIGINT"/>
+        <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER"/>
+        <id column="hour" property="hour" jdbcType="INTEGER"/>
+        <result column="campaign_name" property="campaignName" jdbcType="VARCHAR"/>
+        <result column="ad_name" property="adName" jdbcType="VARCHAR"/>
+        <result column="cost" property="cost" jdbcType="DECIMAL"/>
+        <result column="show" property="show" jdbcType="BIGINT"/>
+        <result column="avg_show_cost" property="avgShowCost" jdbcType="DECIMAL"/>
+        <result column="click" property="click" jdbcType="BIGINT"/>
+        <result column="avg_click_cost" property="avgClickCost" jdbcType="DECIMAL"/>
+        <result column="ctr" property="ctr" jdbcType="DECIMAL"/>
+        <result column="convert" property="convert" jdbcType="BIGINT"/>
+        <result column="convert_cost" property="convertCost" jdbcType="DECIMAL"/>
+        <result column="convert_rate" property="convertRate" jdbcType="DECIMAL"/>
+        <result column="deep_convert" property="deepConvert" jdbcType="BIGINT"/>
+        <result column="deep_convert_cost" property="deepConvertCost" jdbcType="DECIMAL"/>
+        <result column="deep_convert_rate" property="deepConvertRate" jdbcType="DECIMAL"/>
+        <result column="attribution_convert" property="attributionConvert" jdbcType="BIGINT"/>
+        <result column="attribution_convert_cost" property="attributionConvertCost" jdbcType="DECIMAL"/>
+        <result column="attribution_deep_convert" property="attributionDeepConvert" jdbcType="BIGINT"/>
+        <result column="attribution_deep_convert_cost" property="attributionDeepConvertCost" jdbcType="DECIMAL"/>
+        <result column="download_start" property="downloadStart" jdbcType="BIGINT"/>
+        <result column="download_start_cost" property="downloadStartCost" jdbcType="DECIMAL"/>
+        <result column="download_start_rate" property="downloadStartRate" jdbcType="DECIMAL"/>
+        <result column="download_finish" property="downloadFinish" jdbcType="BIGINT"/>
+        <result column="download_finish_cost" property="downloadFinishCost" jdbcType="DECIMAL"/>
+        <result column="download_finish_rate" property="downloadFinishRate" jdbcType="DECIMAL"/>
+        <result column="click_install" property="clickInstall" jdbcType="BIGINT"/>
+        <result column="install_finish" property="installFinish" jdbcType="BIGINT"/>
+        <result column="install_finish_cost" property="installFinishCost" jdbcType="DECIMAL"/>
+        <result column="install_finish_rate" property="installFinishRate" jdbcType="DECIMAL"/>
+        <result column="active" property="active" jdbcType="BIGINT"/>
+        <result column="active_cost" property="activeCost" jdbcType="DECIMAL"/>
+        <result column="active_rate" property="activeRate" jdbcType="DECIMAL"/>
+        <result column="register" property="register" jdbcType="DECIMAL"/>
+        <result column="active_register_cost" property="activeRegisterCost" jdbcType="DECIMAL"/>
+        <result column="active_register_rate" property="activeRegisterRate" jdbcType="REAL"/>
+        <result column="next_day_open" property="nextDayOpen" jdbcType="BIGINT"/>
+        <result column="next_day_open_cost" property="nextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="next_day_open_rate" property="nextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_cnt" property="attributionNextDayOpenCnt" jdbcType="BIGINT"/>
+        <result column="attribution_next_day_open_cost" property="attributionNextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_rate" property="attributionNextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="game_addiction" property="gameAddiction" jdbcType="BIGINT"/>
+        <result column="game_addiction_cost" property="gameAddictionCost" jdbcType="DECIMAL"/>
+        <result column="game_addiction_rate" property="gameAddictionRate" jdbcType="DECIMAL"/>
+        <result column="pay_count" property="payCount" jdbcType="BIGINT"/>
+        <result column="active_pay_cost" property="activePayCost" jdbcType="DECIMAL"/>
+        <result column="active_pay_rate" property="activePayRate" jdbcType="DECIMAL"/>
+        <result column="loan_completion" property="loanCompletion" jdbcType="BIGINT"/>
+        <result column="loan_completion_cost" property="loanCompletionCost" jdbcType="DECIMAL"/>
+        <result column="loan_completion_rate" property="loanCompletionRate" jdbcType="DECIMAL"/>
+        <result column="pre_loan_credit" property="preLoanCredit" jdbcType="BIGINT"/>
+        <result column="pre_loan_credit_cost" property="preLoanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit" property="loanCredit" jdbcType="BIGINT"/>
+        <result column="loan_credit_cost" property="loanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit_rate" property="loanCreditRate" jdbcType="DECIMAL"/>
+        <result column="in_app_uv" property="inAppUv" jdbcType="BIGINT"/>
+        <result column="in_app_detail_uv" property="inAppDetailUv" jdbcType="BIGINT"/>
+        <result column="in_app_cart" property="inAppCart" jdbcType="BIGINT"/>
+        <result column="in_app_pay" property="inAppPay" jdbcType="BIGINT"/>
+        <result column="in_app_order" property="inAppOrder" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_count" property="attributionGamePay7dCount" jdbcType="BIGINT"/>
+        <result column="attribution_game_pay_7d_cost" property="attributionGamePay7dCost" jdbcType="DECIMAL"/>
+        <result column="attribution_active_pay_7d_per_count" property="attributionActivePay7dPerCount"
+                jdbcType="BIGINT"/>
+        <result column="game_pay_cost" property="gamePayCost" jdbcType="DECIMAL"/>
+        <result column="game_pay_count" property="gamePayCount" jdbcType="BIGINT"/>
+        <result column="phone" property="phone" jdbcType="BIGINT"/>
+        <result column="form" property="form" jdbcType="BIGINT"/>
+        <result column="map_search" property="mapSearch" jdbcType="BIGINT"/>
+        <result column="button" property="button" jdbcType="BIGINT"/>
+        <result column="view" property="view" jdbcType="BIGINT"/>
+        <result column="download" property="download" jdbcType="BIGINT"/>
+        <result column="qq" property="qq" jdbcType="BIGINT"/>
+        <result column="lottery" property="lottery" jdbcType="BIGINT"/>
+        <result column="vote" property="vote" jdbcType="BIGINT"/>
+        <result column="message" property="message" jdbcType="BIGINT"/>
+        <result column="redirect" property="redirect" jdbcType="BIGINT"/>
+        <result column="shopping" property="shopping" jdbcType="BIGINT"/>
+        <result column="consult" property="consult" jdbcType="BIGINT"/>
+        <result column="wechat" property="wechat" jdbcType="BIGINT"/>
+        <result column="phone_confirm" property="phoneConfirm" jdbcType="BIGINT"/>
+        <result column="phone_connect" property="phoneConnect" jdbcType="BIGINT"/>
+        <result column="consult_effective" property="consultEffective" jdbcType="BIGINT"/>
+        <result column="coupon" property="coupon" jdbcType="BIGINT"/>
+        <result column="coupon_single_page" property="couponSinglePage" jdbcType="BIGINT"/>
+        <result column="redirect_to_shop" property="redirectToShop" jdbcType="BIGINT"/>
+        <result column="poi_collect" property="poiCollect" jdbcType="BIGINT"/>
+        <result column="poi_address_click" property="poiAddressClick" jdbcType="BIGINT"/>
+        <result column="luban_order_cnt" property="lubanOrderCnt" jdbcType="BIGINT"/>
+        <result column="luban_order_stat_amount" property="lubanOrderStatAmount" jdbcType="DECIMAL"/>
+        <result column="luban_order_roi" property="lubanOrderRoi" jdbcType="DECIMAL"/>
+        <result column="luban_live_enter_cnt" property="lubanLiveEnterCnt" jdbcType="BIGINT"/>
+        <result column="live_watch_one_minute_count" property="liveWatchOneMinuteCount" jdbcType="BIGINT"/>
+        <result column="luban_live_follow_cnt" property="lubanLiveFollowCnt" jdbcType="BIGINT"/>
+        <result column="live_fans_club_join_cnt" property="liveFansClubJoinCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_comment_cnt" property="lubanLiveCommentCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_share_cnt" property="lubanLiveShareCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_cnt" property="lubanLiveGiftCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_gift_amount" property="lubanLiveGiftAmount" jdbcType="DECIMAL"/>
+        <result column="luban_live_slidecart_click_cnt" property="lubanLiveSlidecartClickCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_click_product_cnt" property="lubanLiveClickProductCnt" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_count" property="lubanLivePayOrderCount" jdbcType="BIGINT"/>
+        <result column="luban_live_pay_order_stat_cost" property="lubanLivePayOrderStatCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_count" property="liveComponentClickCount" jdbcType="BIGINT"/>
+        <result column="live_component_click_cost" property="liveComponentClickCost" jdbcType="DECIMAL"/>
+        <result column="live_component_click_rate" property="liveComponentClickRate" jdbcType="DECIMAL"/>
+        <result column="wechat_login_count" property="wechatLoginCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_login_30d_count" property="attributionWechatLogin30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_login_cost" property="wechatLoginCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_login_30d_cost" property="attributionWechatLogin30dCost" jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_count" property="wechatFirstPayCount" jdbcType="BIGINT"/>
+        <result column="attribution_wechat_first_pay_30d_count" property="attributionWechatFirstPay30dCount"
+                jdbcType="BIGINT"/>
+        <result column="wechat_first_pay_cost" property="wechatFirstPayCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_cost" property="attributionWechatFirstPay30dCost"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_rate" property="wechatFirstPayRate" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_rate" property="attributionWechatFirstPay30dRate"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_pay_amount" property="wechatPayAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_amount" property="attributionWechatPay30dAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_roi" property="attributionWechatPay30dRoi" jdbcType="DECIMAL"/>
+        <result column="phone_effective" property="phoneEffective" jdbcType="BIGINT"/>
+        <result column="total_play" property="totalPlay" jdbcType="BIGINT"/>
+        <result column="valid_play" property="validPlay" jdbcType="BIGINT"/>
+        <result column="valid_play_cost" property="validPlayCost" jdbcType="DECIMAL"/>
+        <result column="valid_play_rate" property="validPlayRate" jdbcType="DECIMAL"/>
+        <result column="play_25_feed_break" property="play25FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_50_feed_break" property="play50FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_75_feed_break" property="play75FeedBreak" jdbcType="BIGINT"/>
+        <result column="play_100_feed_break" property="play100FeedBreak" jdbcType="BIGINT"/>
+        <result column="average_play_time_per_play" property="averagePlayTimePerPlay" jdbcType="DECIMAL"/>
+        <result column="play_over_rate" property="playOverRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play_rate" property="wifiPlayRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play" property="wifiPlay" jdbcType="BIGINT"/>
+        <result column="play_duration_sum" property="playDurationSum" jdbcType="BIGINT"/>
+        <result column="advanced_creative_phone_click" property="advancedCreativePhoneClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_counsel_click" property="advancedCreativeCounselClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_click" property="advancedCreativeFormClick" jdbcType="BIGINT"/>
+        <result column="advanced_creative_coupon_addition" property="advancedCreativeCouponAddition" jdbcType="BIGINT"/>
+        <result column="advanced_creative_form_submit" property="advancedCreativeFormSubmit" jdbcType="BIGINT"/>
+        <result column="card_show" property="cardShow" jdbcType="BIGINT"/>
+        <result column="share" property="share" jdbcType="BIGINT"/>
+        <result column="comment" property="comment" jdbcType="BIGINT"/>
+        <result column="like" property="like" jdbcType="BIGINT"/>
+        <result column="follow" property="follow" jdbcType="BIGINT"/>
+        <result column="home_visited" property="homeVisited" jdbcType="BIGINT"/>
+        <result column="ies_challenge_click" property="iesChallengeClick" jdbcType="BIGINT"/>
+        <result column="ies_music_click" property="iesMusicClick" jdbcType="BIGINT"/>
+        <result column="location_click" property="locationClick" jdbcType="BIGINT"/>
+        <result column="message_action" property="messageAction" jdbcType="BIGINT"/>
+        <result column="click_landing_page" property="clickLandingPage" jdbcType="BIGINT"/>
+        <result column="click_shopwindow" property="clickShopwindow" jdbcType="BIGINT"/>
+        <result column="click_website" property="clickWebsite" jdbcType="BIGINT"/>
+        <result column="click_download" property="clickDownload" jdbcType="BIGINT"/>
+        <result column="click_call_dy" property="clickCallDy" jdbcType="BIGINT"/>
+        <result column="submit_certification_count" property="submitCertificationCount" jdbcType="BIGINT"/>
+        <result column="approval_count" property="approvalCount" jdbcType="BIGINT"/>
+        <result column="first_rental_order_count" property="firstRentalOrderCount" jdbcType="BIGINT"/>
+        <result column="first_order_count" property="firstOrderCount" jdbcType="BIGINT"/>
+        <result column="commute_first_pay_count" property="commuteFirstPayCount" jdbcType="BIGINT"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, campaign_id, ad_id, creative_id, stat_datetime, hour, campaign_name, 
+    ad_name, cost, show, avg_show_cost, click, avg_click_cost, ctr, convert, convert_cost, 
+    convert_rate, deep_convert, deep_convert_cost, deep_convert_rate, attribution_convert, 
+    attribution_convert_cost, attribution_deep_convert, attribution_deep_convert_cost, 
+    download_start, download_start_cost, download_start_rate, download_finish, download_finish_cost, 
+    download_finish_rate, click_install, install_finish, install_finish_cost, install_finish_rate, 
+    active, active_cost, active_rate, register, active_register_cost, active_register_rate, 
+    next_day_open, next_day_open_cost, next_day_open_rate, attribution_next_day_open_cnt, 
+    attribution_next_day_open_cost, attribution_next_day_open_rate, game_addiction, game_addiction_cost, 
+    game_addiction_rate, pay_count, active_pay_cost, active_pay_rate, loan_completion, 
+    loan_completion_cost, loan_completion_rate, pre_loan_credit, pre_loan_credit_cost, 
+    loan_credit, loan_credit_cost, loan_credit_rate, in_app_uv, in_app_detail_uv, in_app_cart, 
+    in_app_pay, in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost, 
+    attribution_active_pay_7d_per_count, game_pay_cost, game_pay_count, phone, form, 
+    map_search, button, view, download, qq, lottery, vote, message, redirect, shopping, 
+    consult, wechat, phone_confirm, phone_connect, consult_effective, coupon, coupon_single_page, 
+    redirect_to_shop, poi_collect, poi_address_click, luban_order_cnt, luban_order_stat_amount, 
+    luban_order_roi, luban_live_enter_cnt, live_watch_one_minute_count, luban_live_follow_cnt, 
+    live_fans_club_join_cnt, luban_live_comment_cnt, luban_live_share_cnt, luban_live_gift_cnt, 
+    luban_live_gift_amount, luban_live_slidecart_click_cnt, luban_live_click_product_cnt, 
+    luban_live_pay_order_count, luban_live_pay_order_stat_cost, live_component_click_count, 
+    live_component_click_cost, live_component_click_rate, wechat_login_count, attribution_wechat_login_30d_count, 
+    wechat_login_cost, attribution_wechat_login_30d_cost, wechat_first_pay_count, attribution_wechat_first_pay_30d_count, 
+    wechat_first_pay_cost, attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, 
+    attribution_wechat_first_pay_30d_rate, wechat_pay_amount, attribution_wechat_pay_30d_amount, 
+    attribution_wechat_pay_30d_roi, phone_effective, total_play, valid_play, valid_play_cost, 
+    valid_play_rate, play_25_feed_break, play_50_feed_break, play_75_feed_break, play_100_feed_break, 
+    average_play_time_per_play, play_over_rate, wifi_play_rate, wifi_play, play_duration_sum, 
+    advanced_creative_phone_click, advanced_creative_counsel_click, advanced_creative_form_click, 
+    advanced_creative_coupon_addition, advanced_creative_form_submit, card_show, share, 
+    comment, like, follow, home_visited, ies_challenge_click, ies_music_click, location_click, 
+    message_action, click_landing_page, click_shopwindow, click_website, click_download, 
+    click_call_dy, submit_certification_count, approval_count, first_rental_order_count, 
+    first_order_count, commute_first_pay_count
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeReportHourly">
+        replace into bytedance_creative_report_hourly (advertiser_id, campaign_id, ad_id,
+        creative_id, stat_datetime, `hour`,
+        campaign_name, ad_name, cost,
+        `show`, avg_show_cost, click,
+        avg_click_cost, ctr, `convert`,
+        convert_cost, convert_rate, deep_convert,
+        deep_convert_cost, deep_convert_rate, attribution_convert,
+        attribution_convert_cost, attribution_deep_convert,
+        attribution_deep_convert_cost, download_start,
+        download_start_cost, download_start_rate, download_finish,
+        download_finish_cost, download_finish_rate,
+        click_install, install_finish, install_finish_cost,
+        install_finish_rate, active, active_cost,
+        active_rate, register, active_register_cost,
+        active_register_rate, next_day_open, next_day_open_cost,
+        next_day_open_rate, attribution_next_day_open_cnt,
+        attribution_next_day_open_cost, attribution_next_day_open_rate,
+        game_addiction, game_addiction_cost, game_addiction_rate,
+        pay_count, active_pay_cost, active_pay_rate,
+        loan_completion, loan_completion_cost, loan_completion_rate,
+        pre_loan_credit, pre_loan_credit_cost, loan_credit,
+        loan_credit_cost, loan_credit_rate, in_app_uv,
+        in_app_detail_uv, in_app_cart, in_app_pay,
+        in_app_order, attribution_game_pay_7d_count, attribution_game_pay_7d_cost,
+        attribution_active_pay_7d_per_count, game_pay_cost,
+        game_pay_count, phone, form,
+        map_search, button, `view`,
+        download, qq, lottery,
+        vote, message, redirect,
+        shopping, consult, wechat,
+        phone_confirm, phone_connect, consult_effective,
+        coupon, coupon_single_page, redirect_to_shop,
+        poi_collect, poi_address_click, luban_order_cnt,
+        luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt,
+        live_watch_one_minute_count, luban_live_follow_cnt,
+        live_fans_club_join_cnt, luban_live_comment_cnt,
+        luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount,
+        luban_live_slidecart_click_cnt, luban_live_click_product_cnt,
+        luban_live_pay_order_count, luban_live_pay_order_stat_cost,
+        live_component_click_count, live_component_click_cost,
+        live_component_click_rate, wechat_login_count,
+        attribution_wechat_login_30d_count, wechat_login_cost,
+        attribution_wechat_login_30d_cost, wechat_first_pay_count,
+        attribution_wechat_first_pay_30d_count, wechat_first_pay_cost,
+        attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate,
+        attribution_wechat_first_pay_30d_rate, wechat_pay_amount,
+        attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi,
+        phone_effective, total_play, valid_play,
+        valid_play_cost, valid_play_rate, play_25_feed_break,
+        play_50_feed_break, play_75_feed_break, play_100_feed_break,
+        average_play_time_per_play, play_over_rate, wifi_play_rate,
+        wifi_play, play_duration_sum, advanced_creative_phone_click,
+        advanced_creative_counsel_click, advanced_creative_form_click,
+        advanced_creative_coupon_addition, advanced_creative_form_submit,
+        card_show, `share`, `comment`,
+        `like`, follow, home_visited,
+        ies_challenge_click, ies_music_click, location_click,
+        message_action, click_landing_page, click_shopwindow,
+        click_website, click_download, click_call_dy,
+        submit_certification_count, approval_count,
+        first_rental_order_count, first_order_count, commute_first_pay_count
+        )
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.campaignId,jdbcType=BIGINT}, #{item.adId,jdbcType=BIGINT},
+            #{item.creativeId,jdbcType=BIGINT}, #{item.statDatetime,jdbcType=INTEGER}, #{item.hour,jdbcType=INTEGER},
+            #{item.campaignName,jdbcType=VARCHAR}, #{item.adName,jdbcType=VARCHAR}, #{item.cost,jdbcType=DECIMAL},
+            #{item.show,jdbcType=BIGINT}, #{item.avgShowCost,jdbcType=DECIMAL}, #{item.click,jdbcType=BIGINT},
+            #{item.avgClickCost,jdbcType=DECIMAL}, #{item.ctr,jdbcType=DECIMAL}, #{item.convert,jdbcType=BIGINT},
+            #{item.convertCost,jdbcType=DECIMAL}, #{item.convertRate,jdbcType=DECIMAL},
+            #{item.deepConvert,jdbcType=BIGINT},
+            #{item.deepConvertCost,jdbcType=DECIMAL}, #{item.deepConvertRate,jdbcType=DECIMAL},
+            #{item.attributionConvert,jdbcType=BIGINT},
+            #{item.attributionConvertCost,jdbcType=DECIMAL}, #{item.attributionDeepConvert,jdbcType=BIGINT},
+            #{item.attributionDeepConvertCost,jdbcType=DECIMAL}, #{item.downloadStart,jdbcType=BIGINT},
+            #{item.downloadStartCost,jdbcType=DECIMAL}, #{item.downloadStartRate,jdbcType=DECIMAL},
+            #{item.downloadFinish,jdbcType=BIGINT},
+            #{item.downloadFinishCost,jdbcType=DECIMAL}, #{item.downloadFinishRate,jdbcType=DECIMAL},
+            #{item.clickInstall,jdbcType=BIGINT}, #{item.installFinish,jdbcType=BIGINT},
+            #{item.installFinishCost,jdbcType=DECIMAL},
+            #{item.installFinishRate,jdbcType=DECIMAL}, #{item.active,jdbcType=BIGINT},
+            #{item.activeCost,jdbcType=DECIMAL},
+            #{item.activeRate,jdbcType=DECIMAL}, #{item.register,jdbcType=DECIMAL},
+            #{item.activeRegisterCost,jdbcType=DECIMAL},
+            #{item.activeRegisterRate,jdbcType=REAL}, #{item.nextDayOpen,jdbcType=BIGINT},
+            #{item.nextDayOpenCost,jdbcType=DECIMAL},
+            #{item.nextDayOpenRate,jdbcType=DECIMAL}, #{item.attributionNextDayOpenCnt,jdbcType=BIGINT},
+            #{item.attributionNextDayOpenCost,jdbcType=DECIMAL}, #{item.attributionNextDayOpenRate,jdbcType=DECIMAL},
+            #{item.gameAddiction,jdbcType=BIGINT}, #{item.gameAddictionCost,jdbcType=DECIMAL},
+            #{item.gameAddictionRate,jdbcType=DECIMAL},
+            #{item.payCount,jdbcType=BIGINT}, #{item.activePayCost,jdbcType=DECIMAL},
+            #{item.activePayRate,jdbcType=DECIMAL},
+            #{item.loanCompletion,jdbcType=BIGINT}, #{item.loanCompletionCost,jdbcType=DECIMAL},
+            #{item.loanCompletionRate,jdbcType=DECIMAL},
+            #{item.preLoanCredit,jdbcType=BIGINT}, #{item.preLoanCreditCost,jdbcType=DECIMAL},
+            #{item.loanCredit,jdbcType=BIGINT},
+            #{item.loanCreditCost,jdbcType=DECIMAL}, #{item.loanCreditRate,jdbcType=DECIMAL},
+            #{item.inAppUv,jdbcType=BIGINT},
+            #{item.inAppDetailUv,jdbcType=BIGINT}, #{item.inAppCart,jdbcType=BIGINT}, #{item.inAppPay,jdbcType=BIGINT},
+            #{item.inAppOrder,jdbcType=BIGINT}, #{item.attributionGamePay7dCount,jdbcType=BIGINT},
+            #{item.attributionGamePay7dCost,jdbcType=DECIMAL},
+            #{item.attributionActivePay7dPerCount,jdbcType=BIGINT}, #{item.gamePayCost,jdbcType=DECIMAL},
+            #{item.gamePayCount,jdbcType=BIGINT}, #{item.phone,jdbcType=BIGINT}, #{item.form,jdbcType=BIGINT},
+            #{item.mapSearch,jdbcType=BIGINT}, #{item.button,jdbcType=BIGINT}, #{item.view,jdbcType=BIGINT},
+            #{item.download,jdbcType=BIGINT}, #{item.qq,jdbcType=BIGINT}, #{item.lottery,jdbcType=BIGINT},
+            #{item.vote,jdbcType=BIGINT}, #{item.message,jdbcType=BIGINT}, #{item.redirect,jdbcType=BIGINT},
+            #{item.shopping,jdbcType=BIGINT}, #{item.consult,jdbcType=BIGINT}, #{item.wechat,jdbcType=BIGINT},
+            #{item.phoneConfirm,jdbcType=BIGINT}, #{item.phoneConnect,jdbcType=BIGINT},
+            #{item.consultEffective,jdbcType=BIGINT},
+            #{item.coupon,jdbcType=BIGINT}, #{item.couponSinglePage,jdbcType=BIGINT},
+            #{item.redirectToShop,jdbcType=BIGINT},
+            #{item.poiCollect,jdbcType=BIGINT}, #{item.poiAddressClick,jdbcType=BIGINT},
+            #{item.lubanOrderCnt,jdbcType=BIGINT},
+            #{item.lubanOrderStatAmount,jdbcType=DECIMAL}, #{item.lubanOrderRoi,jdbcType=DECIMAL},
+            #{item.lubanLiveEnterCnt,jdbcType=BIGINT},
+            #{item.liveWatchOneMinuteCount,jdbcType=BIGINT}, #{item.lubanLiveFollowCnt,jdbcType=BIGINT},
+            #{item.liveFansClubJoinCnt,jdbcType=BIGINT}, #{item.lubanLiveCommentCnt,jdbcType=BIGINT},
+            #{item.lubanLiveShareCnt,jdbcType=BIGINT}, #{item.lubanLiveGiftCnt,jdbcType=BIGINT},
+            #{item.lubanLiveGiftAmount,jdbcType=DECIMAL},
+            #{item.lubanLiveSlidecartClickCnt,jdbcType=BIGINT}, #{item.lubanLiveClickProductCnt,jdbcType=BIGINT},
+            #{item.lubanLivePayOrderCount,jdbcType=BIGINT}, #{item.lubanLivePayOrderStatCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickCount,jdbcType=BIGINT}, #{item.liveComponentClickCost,jdbcType=DECIMAL},
+            #{item.liveComponentClickRate,jdbcType=DECIMAL}, #{item.wechatLoginCount,jdbcType=BIGINT},
+            #{item.attributionWechatLogin30dCount,jdbcType=BIGINT}, #{item.wechatLoginCost,jdbcType=DECIMAL},
+            #{item.attributionWechatLogin30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayCount,jdbcType=BIGINT},
+            #{item.attributionWechatFirstPay30dCount,jdbcType=BIGINT}, #{item.wechatFirstPayCost,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dCost,jdbcType=DECIMAL}, #{item.wechatFirstPayRate,jdbcType=DECIMAL},
+            #{item.attributionWechatFirstPay30dRate,jdbcType=DECIMAL}, #{item.wechatPayAmount,jdbcType=DECIMAL},
+            #{item.attributionWechatPay30dAmount,jdbcType=DECIMAL}, #{item.attributionWechatPay30dRoi,jdbcType=DECIMAL},
+            #{item.phoneEffective,jdbcType=BIGINT}, #{item.totalPlay,jdbcType=BIGINT},
+            #{item.validPlay,jdbcType=BIGINT},
+            #{item.validPlayCost,jdbcType=DECIMAL}, #{item.validPlayRate,jdbcType=DECIMAL},
+            #{item.play25FeedBreak,jdbcType=BIGINT},
+            #{item.play50FeedBreak,jdbcType=BIGINT}, #{item.play75FeedBreak,jdbcType=BIGINT},
+            #{item.play100FeedBreak,jdbcType=BIGINT},
+            #{item.averagePlayTimePerPlay,jdbcType=DECIMAL}, #{item.playOverRate,jdbcType=DECIMAL},
+            #{item.wifiPlayRate,jdbcType=DECIMAL},
+            #{item.wifiPlay,jdbcType=BIGINT}, #{item.playDurationSum,jdbcType=BIGINT},
+            #{item.advancedCreativePhoneClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCounselClick,jdbcType=BIGINT}, #{item.advancedCreativeFormClick,jdbcType=BIGINT},
+            #{item.advancedCreativeCouponAddition,jdbcType=BIGINT}, #{item.advancedCreativeFormSubmit,jdbcType=BIGINT},
+            #{item.cardShow,jdbcType=BIGINT}, #{item.share,jdbcType=BIGINT}, #{item.comment,jdbcType=BIGINT},
+            #{item.like,jdbcType=BIGINT}, #{item.follow,jdbcType=BIGINT}, #{item.homeVisited,jdbcType=BIGINT},
+            #{item.iesChallengeClick,jdbcType=BIGINT}, #{item.iesMusicClick,jdbcType=BIGINT},
+            #{item.locationClick,jdbcType=BIGINT},
+            #{item.messageAction,jdbcType=BIGINT}, #{item.clickLandingPage,jdbcType=BIGINT},
+            #{item.clickShopwindow,jdbcType=BIGINT},
+            #{item.clickWebsite,jdbcType=BIGINT}, #{item.clickDownload,jdbcType=BIGINT},
+            #{item.clickCallDy,jdbcType=BIGINT},
+            #{item.submitCertificationCount,jdbcType=BIGINT}, #{item.approvalCount,jdbcType=BIGINT},
+            #{item.firstRentalOrderCount,jdbcType=BIGINT}, #{item.firstOrderCount,jdbcType=BIGINT},
+            #{item.commuteFirstPayCount,jdbcType=BIGINT}
+            )
+        </foreach>
+    </insert>
 
 </mapper>

+ 35 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceFileImageGetMapper.xml

@@ -1,5 +1,38 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceFileImageGetMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceFileImageGet">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="id" property="id" jdbcType="VARCHAR"/>
+        <result column="material_id" property="materialId" jdbcType="BIGINT"/>
+        <result column="size" property="size" jdbcType="BIGINT"/>
+        <result column="width" property="width" jdbcType="BIGINT"/>
+        <result column="height" property="height" jdbcType="BIGINT"/>
+        <result column="url" property="url" jdbcType="VARCHAR"/>
+        <result column="format" property="format" jdbcType="VARCHAR"/>
+        <result column="signature" property="signature" jdbcType="VARCHAR"/>
+        <result column="create_time" property="createTime" jdbcType="VARCHAR"/>
+        <result column="filename" property="filename" jdbcType="VARCHAR"/>
+        <result column="image_url" property="imageUrl" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, id, material_id, size, width, height, url, format, signature, create_time, 
+    filename, image_url
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceFileImageGet">
+        replace into bytedance_file_image_get (advertiser_id, id, material_id,
+        size, width, height, url,
+        format, signature, create_time,
+        filename, image_url)
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.id,jdbcType=VARCHAR}, #{item.materialId,jdbcType=BIGINT},
+            #{item.size,jdbcType=BIGINT}, #{item.width,jdbcType=BIGINT}, #{item.height,jdbcType=BIGINT}, #{item.url,jdbcType=VARCHAR},
+            #{item.format,jdbcType=VARCHAR}, #{item.signature,jdbcType=VARCHAR}, #{item.createTime,jdbcType=VARCHAR},
+            #{item.filename,jdbcType=VARCHAR}, #{item.imageUrl,jdbcType=VARCHAR})
+        </foreach>
+    </insert>
 
 </mapper>

+ 45 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceFileVideoGetMapper.xml

@@ -1,5 +1,48 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceFileVideoGetMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceFileVideoGet">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="id" property="id" jdbcType="VARCHAR"/>
+        <result column="size" property="size" jdbcType="BIGINT"/>
+        <result column="width" property="width" jdbcType="BIGINT"/>
+        <result column="height" property="height" jdbcType="BIGINT"/>
+        <result column="url" property="url" jdbcType="VARCHAR"/>
+        <result column="format" property="format" jdbcType="VARCHAR"/>
+        <result column="signature" property="signature" jdbcType="VARCHAR"/>
+        <result column="poster_url" property="posterUrl" jdbcType="VARCHAR"/>
+        <result column="bit_rate" property="bitRate" jdbcType="BIGINT"/>
+        <result column="duration" property="duration" jdbcType="BIGINT"/>
+        <result column="material_id" property="materialId" jdbcType="BIGINT"/>
+        <result column="source" property="source" jdbcType="VARCHAR"/>
+        <result column="create_time" property="createTime" jdbcType="VARCHAR"/>
+        <result column="filename" property="filename" jdbcType="VARCHAR"/>
+        <result column="labels" property="labels" jdbcType="VARCHAR"/>
+        <result column="video_url" property="videoUrl" jdbcType="VARCHAR"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, id, size, width, height, url, format, signature, poster_url, bit_rate, 
+    duration, material_id, source, create_time, filename, labels, video_url
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceFileVideoGet">
+        replace into bytedance_file_video_get (advertiser_id, id, size,
+        width, height, url, format,
+        signature, poster_url, bit_rate,
+        duration, material_id, source,
+        create_time, filename, labels,
+        video_url)
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.id,jdbcType=VARCHAR}, #{item.size,jdbcType=BIGINT},
+            #{item.width,jdbcType=BIGINT}, #{item.height,jdbcType=BIGINT}, #{item.url,jdbcType=VARCHAR},
+            #{item.format,jdbcType=VARCHAR},
+            #{item.signature,jdbcType=VARCHAR}, #{item.posterUrl,jdbcType=VARCHAR}, #{item.bitRate,jdbcType=BIGINT},
+            #{item.duration,jdbcType=BIGINT}, #{item.materialId,jdbcType=BIGINT}, #{item.source,jdbcType=VARCHAR},
+            #{item.createTime,jdbcType=VARCHAR}, #{item.filename,jdbcType=VARCHAR}, #{item.labels,jdbcType=VARCHAR},
+            #{item.videoUrl,jdbcType=VARCHAR})
+        </foreach>
+    </insert>
 
 </mapper>

+ 400 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/BytedanceMaterialReportDailyMapper.xml

@@ -1,5 +1,403 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
 <mapper namespace="cn.com.ctop.job.bytedance.data.mapper.BytedanceMaterialReportDailyMapper">
+    <resultMap id="BaseResultMap" type="cn.com.ctop.job.bytedance.data.entity.BytedanceMaterialReportDaily">
+        <id column="advertiser_id" property="advertiserId" jdbcType="BIGINT"/>
+        <id column="material_id" property="materialId" jdbcType="BIGINT"/>
+        <id column="image_mode" property="imageMode" jdbcType="VARCHAR"/>
+        <id column="inventory" property="inventory" jdbcType="VARCHAR"/>
+        <id column="stat_datetime" property="statDatetime" jdbcType="INTEGER"/>
+        <result column="cost" property="cost" jdbcType="DECIMAL"/>
+        <result column="show" property="show" jdbcType="INTEGER"/>
+        <result column="avg_show_cost" property="avgShowCost" jdbcType="DECIMAL"/>
+        <result column="click" property="click" jdbcType="INTEGER"/>
+        <result column="avg_click_cost" property="avgClickCost" jdbcType="DECIMAL"/>
+        <result column="ctr" property="ctr" jdbcType="DECIMAL"/>
+        <result column="convert" property="convert" jdbcType="INTEGER"/>
+        <result column="convert_cost" property="convertCost" jdbcType="DECIMAL"/>
+        <result column="convert_rate" property="convertRate" jdbcType="DECIMAL"/>
+        <result column="deep_convert" property="deepConvert" jdbcType="INTEGER"/>
+        <result column="deep_convert_cost" property="deepConvertCost" jdbcType="DECIMAL"/>
+        <result column="deep_convert_rate" property="deepConvertRate" jdbcType="DECIMAL"/>
+        <result column="attribution_convert" property="attributionConvert" jdbcType="INTEGER"/>
+        <result column="attribution_convert_cost" property="attributionConvertCost" jdbcType="DECIMAL"/>
+        <result column="attribution_deep_convert" property="attributionDeepConvert" jdbcType="INTEGER"/>
+        <result column="attribution_deep_convert_cost" property="attributionDeepConvertCost" jdbcType="DECIMAL"/>
+        <result column="download_start" property="downloadStart" jdbcType="INTEGER"/>
+        <result column="download_start_cost" property="downloadStartCost" jdbcType="DECIMAL"/>
+        <result column="download_start_rate" property="downloadStartRate" jdbcType="DECIMAL"/>
+        <result column="download_finish" property="downloadFinish" jdbcType="INTEGER"/>
+        <result column="download_finish_cost" property="downloadFinishCost" jdbcType="DECIMAL"/>
+        <result column="download_finish_rate" property="downloadFinishRate" jdbcType="DECIMAL"/>
+        <result column="click_install" property="clickInstall" jdbcType="INTEGER"/>
+        <result column="install_finish" property="installFinish" jdbcType="INTEGER"/>
+        <result column="install_finish_cost" property="installFinishCost" jdbcType="DECIMAL"/>
+        <result column="install_finish_rate" property="installFinishRate" jdbcType="DECIMAL"/>
+        <result column="active" property="active" jdbcType="INTEGER"/>
+        <result column="active_cost" property="activeCost" jdbcType="DECIMAL"/>
+        <result column="active_rate" property="activeRate" jdbcType="DECIMAL"/>
+        <result column="register" property="register" jdbcType="INTEGER"/>
+        <result column="active_register_cost" property="activeRegisterCost" jdbcType="DECIMAL"/>
+        <result column="active_register_rate" property="activeRegisterRate" jdbcType="DECIMAL"/>
+        <result column="active_pay_amount" property="activePayAmount" jdbcType="DECIMAL"/>
+        <result column="next_day_open" property="nextDayOpen" jdbcType="INTEGER"/>
+        <result column="next_day_open_cost" property="nextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="next_day_open_rate" property="nextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_cnt" property="attributionNextDayOpenCnt" jdbcType="INTEGER"/>
+        <result column="attribution_next_day_open_cost" property="attributionNextDayOpenCost" jdbcType="DECIMAL"/>
+        <result column="attribution_next_day_open_rate" property="attributionNextDayOpenRate" jdbcType="DECIMAL"/>
+        <result column="game_addiction" property="gameAddiction" jdbcType="INTEGER"/>
+        <result column="game_addiction_cost" property="gameAddictionCost" jdbcType="DECIMAL"/>
+        <result column="game_addiction_rate" property="gameAddictionRate" jdbcType="DECIMAL"/>
+        <result column="pay_count" property="payCount" jdbcType="INTEGER"/>
+        <result column="active_pay_cost" property="activePayCost" jdbcType="DECIMAL"/>
+        <result column="active_pay_rate" property="activePayRate" jdbcType="DECIMAL"/>
+        <result column="loan_completion" property="loanCompletion" jdbcType="INTEGER"/>
+        <result column="loan_completion_cost" property="loanCompletionCost" jdbcType="DECIMAL"/>
+        <result column="loan_completion_rate" property="loanCompletionRate" jdbcType="DECIMAL"/>
+        <result column="pre_loan_credit" property="preLoanCredit" jdbcType="INTEGER"/>
+        <result column="pre_loan_credit_cost" property="preLoanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit" property="loanCredit" jdbcType="INTEGER"/>
+        <result column="loan_credit_cost" property="loanCreditCost" jdbcType="DECIMAL"/>
+        <result column="loan_credit_rate" property="loanCreditRate" jdbcType="DECIMAL"/>
+        <result column="in_app_uv" property="inAppUv" jdbcType="INTEGER"/>
+        <result column="in_app_detail_uv" property="inAppDetailUv" jdbcType="INTEGER"/>
+        <result column="in_app_cart" property="inAppCart" jdbcType="INTEGER"/>
+        <result column="in_app_pay" property="inAppPay" jdbcType="INTEGER"/>
+        <result column="in_app_order" property="inAppOrder" jdbcType="INTEGER"/>
+        <result column="attribution_game_pay_7d_count" property="attributionGamePay7dCount" jdbcType="INTEGER"/>
+        <result column="attribution_game_pay_7d_cost" property="attributionGamePay7dCost" jdbcType="DECIMAL"/>
+        <result column="attribution_active_pay_7d_per_count" property="attributionActivePay7dPerCount"
+                jdbcType="INTEGER"/>
+        <result column="game_pay_cost" property="gamePayCost" jdbcType="INTEGER"/>
+        <result column="game_pay_count" property="gamePayCount" jdbcType="INTEGER"/>
+        <result column="phone" property="phone" jdbcType="INTEGER"/>
+        <result column="form" property="form" jdbcType="INTEGER"/>
+        <result column="map_search" property="mapSearch" jdbcType="INTEGER"/>
+        <result column="button" property="button" jdbcType="INTEGER"/>
+        <result column="view" property="view" jdbcType="INTEGER"/>
+        <result column="download" property="download" jdbcType="INTEGER"/>
+        <result column="qq" property="qq" jdbcType="INTEGER"/>
+        <result column="lottery" property="lottery" jdbcType="INTEGER"/>
+        <result column="vote" property="vote" jdbcType="INTEGER"/>
+        <result column="message" property="message" jdbcType="INTEGER"/>
+        <result column="redirect" property="redirect" jdbcType="INTEGER"/>
+        <result column="shopping" property="shopping" jdbcType="INTEGER"/>
+        <result column="consult" property="consult" jdbcType="INTEGER"/>
+        <result column="wechat" property="wechat" jdbcType="INTEGER"/>
+        <result column="phone_confirm" property="phoneConfirm" jdbcType="INTEGER"/>
+        <result column="phone_connect" property="phoneConnect" jdbcType="INTEGER"/>
+        <result column="consult_effective" property="consultEffective" jdbcType="INTEGER"/>
+        <result column="coupon" property="coupon" jdbcType="INTEGER"/>
+        <result column="coupon_single_page" property="couponSinglePage" jdbcType="INTEGER"/>
+        <result column="redirect_to_shop" property="redirectToShop" jdbcType="INTEGER"/>
+        <result column="poi_collect" property="poiCollect" jdbcType="INTEGER"/>
+        <result column="poi_address_click" property="poiAddressClick" jdbcType="INTEGER"/>
+        <result column="luban_order_cnt" property="lubanOrderCnt" jdbcType="INTEGER"/>
+        <result column="luban_order_stat_amount" property="lubanOrderStatAmount" jdbcType="DECIMAL"/>
+        <result column="luban_order_roi" property="lubanOrderRoi" jdbcType="DECIMAL"/>
+        <result column="luban_live_enter_cnt" property="lubanLiveEnterCnt" jdbcType="INTEGER"/>
+        <result column="live_watch_one_minute_count" property="liveWatchOneMinuteCount" jdbcType="INTEGER"/>
+        <result column="luban_live_follow_cnt" property="lubanLiveFollowCnt" jdbcType="INTEGER"/>
+        <result column="live_fans_club_join_cnt" property="liveFansClubJoinCnt" jdbcType="INTEGER"/>
+        <result column="luban_live_comment_cnt" property="lubanLiveCommentCnt" jdbcType="INTEGER"/>
+        <result column="luban_live_share_cnt" property="lubanLiveShareCnt" jdbcType="INTEGER"/>
+        <result column="luban_live_gift_cnt" property="lubanLiveGiftCnt" jdbcType="INTEGER"/>
+        <result column="luban_live_gift_amount" property="lubanLiveGiftAmount" jdbcType="DECIMAL"/>
+        <result column="luban_live_slidecart_click_cnt" property="lubanLiveSlidecartClickCnt" jdbcType="INTEGER"/>
+        <result column="luban_live_click_product_cnt" property="lubanLiveClickProductCnt" jdbcType="INTEGER"/>
+        <result column="luban_live_pay_order_count" property="lubanLivePayOrderCount" jdbcType="INTEGER"/>
+        <result column="luban_live_pay_order_stat_cost" property="lubanLivePayOrderStatCost" jdbcType="DECIMAL"/>
+        <result column="wechat_login_count" property="wechatLoginCount" jdbcType="INTEGER"/>
+        <result column="attribution_wechat_login_30d_count" property="attributionWechatLogin30dCount"
+                jdbcType="INTEGER"/>
+        <result column="wechat_login_cost" property="wechatLoginCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_login_30d_cost" property="attributionWechatLogin30dCost" jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_count" property="wechatFirstPayCount" jdbcType="INTEGER"/>
+        <result column="attribution_wechat_first_pay_30d_count" property="attributionWechatFirstPay30dCount"
+                jdbcType="INTEGER"/>
+        <result column="wechat_first_pay_cost" property="wechatFirstPayCost" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_cost" property="attributionWechatFirstPay30dCost"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_first_pay_rate" property="wechatFirstPayRate" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_first_pay_30d_rate" property="attributionWechatFirstPay30dRate"
+                jdbcType="DECIMAL"/>
+        <result column="wechat_pay_amount" property="wechatPayAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_amount" property="attributionWechatPay30dAmount" jdbcType="DECIMAL"/>
+        <result column="attribution_wechat_pay_30d_roi" property="attributionWechatPay30dRoi" jdbcType="DECIMAL"/>
+        <result column="phone_effective" property="phoneEffective" jdbcType="INTEGER"/>
+        <result column="total_play" property="totalPlay" jdbcType="INTEGER"/>
+        <result column="valid_play" property="validPlay" jdbcType="INTEGER"/>
+        <result column="valid_play_cost" property="validPlayCost" jdbcType="DECIMAL"/>
+        <result column="valid_play_rate" property="validPlayRate" jdbcType="DECIMAL"/>
+        <result column="play_25_feed_break" property="play25FeedBreak" jdbcType="INTEGER"/>
+        <result column="play_50_feed_break" property="play50FeedBreak" jdbcType="INTEGER"/>
+        <result column="play_75_feed_break" property="play75FeedBreak" jdbcType="INTEGER"/>
+        <result column="play_100_feed_break" property="play100FeedBreak" jdbcType="INTEGER"/>
+        <result column="average_play_time_per_play" property="averagePlayTimePerPlay" jdbcType="DECIMAL"/>
+        <result column="play_over_rate" property="playOverRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play_rate" property="wifiPlayRate" jdbcType="DECIMAL"/>
+        <result column="wifi_play" property="wifiPlay" jdbcType="INTEGER"/>
+        <result column="play_duration_sum" property="playDurationSum" jdbcType="BIGINT"/>
+        <result column="advanced_creative_phone_click" property="advancedCreativePhoneClick" jdbcType="INTEGER"/>
+        <result column="advanced_creative_counsel_click" property="advancedCreativeCounselClick" jdbcType="INTEGER"/>
+        <result column="advanced_creative_form_click" property="advancedCreativeFormClick" jdbcType="INTEGER"/>
+        <result column="advanced_creative_coupon_addition" property="advancedCreativeCouponAddition"
+                jdbcType="INTEGER"/>
+        <result column="advanced_creative_form_submit" property="advancedCreativeFormSubmit" jdbcType="INTEGER"/>
+        <result column="card_show" property="cardShow" jdbcType="INTEGER"/>
+        <result column="share" property="share" jdbcType="INTEGER"/>
+        <result column="comment" property="comment" jdbcType="INTEGER"/>
+        <result column="like" property="like" jdbcType="INTEGER"/>
+        <result column="follow" property="follow" jdbcType="INTEGER"/>
+        <result column="home_visited" property="homeVisited" jdbcType="INTEGER"/>
+        <result column="ies_challenge_click" property="iesChallengeClick" jdbcType="INTEGER"/>
+        <result column="ies_music_click" property="iesMusicClick" jdbcType="INTEGER"/>
+        <result column="location_click" property="locationClick" jdbcType="INTEGER"/>
+        <result column="message_action" property="messageAction" jdbcType="INTEGER"/>
+        <result column="click_landing_page" property="clickLandingPage" jdbcType="INTEGER"/>
+        <result column="click_shopwindow" property="clickShopwindow" jdbcType="INTEGER"/>
+        <result column="click_website" property="clickWebsite" jdbcType="INTEGER"/>
+        <result column="click_download" property="clickDownload" jdbcType="INTEGER"/>
+        <result column="click_call_dy" property="clickCallDy" jdbcType="INTEGER"/>
+        <result column="cpc" property="cpc" jdbcType="DECIMAL"/>
+        <result column="cpm" property="cpm" jdbcType="DECIMAL"/>
+        <result column="cpa" property="cpa" jdbcType="DECIMAL"/>
+        <result column="interact_per_cost" property="interactPerCost" jdbcType="DECIMAL"/>
+        <result column="convert_show_rate" property="convertShowRate" jdbcType="DECIMAL"/>
+        <result column="play_duration_10s_rate" property="playDuration10sRate" jdbcType="DECIMAL"/>
+        <result column="play_50_feed_break_rate" property="play50FeedBreakRate" jdbcType="DECIMAL"/>
+        <result column="play_25_feed_break_rate" property="play25FeedBreakRate" jdbcType="DECIMAL"/>
+        <result column="play_duration_5s_rate" property="playDuration5sRate" jdbcType="DECIMAL"/>
+        <result column="play_duration_2s_rate" property="playDuration2sRate" jdbcType="DECIMAL"/>
+        <result column="average_play_progress" property="averagePlayProgress" jdbcType="DECIMAL"/>
+        <result column="play_100_feed_break_rate" property="play100FeedBreakRate" jdbcType="DECIMAL"/>
+        <result column="play_duration_3s_rate" property="playDuration3sRate" jdbcType="DECIMAL"/>
+        <result column="play_75_feed_break_rate" property="play75FeedBreakRate" jdbcType="DECIMAL"/>
+        <result column="play_duration" property="playDuration" jdbcType="DECIMAL"/>
+        <result column="play_duration_3s" property="playDuration3s" jdbcType="DECIMAL"/>
+        <result column="play_duration_2s" property="playDuration2s" jdbcType="DECIMAL"/>
+        <result column="play_duration_10s" property="playDuration10s" jdbcType="DECIMAL"/>
+        <result column="average_video_play" property="averageVideoPlay" jdbcType="DECIMAL"/>
+        <result column="avg_rank" property="avgRank" jdbcType="DECIMAL"/>
+        <result column="submit_certification_count" property="submitCertificationCount" jdbcType="INTEGER"/>
+        <result column="approval_count" property="approvalCount" jdbcType="INTEGER"/>
+        <result column="first_order_count" property="firstOrderCount" jdbcType="INTEGER"/>
+        <result column="first_rental_order_count" property="firstRentalOrderCount" jdbcType="INTEGER"/>
+        <result column="commute_first_pay_count" property="commuteFirstPayCount" jdbcType="INTEGER"/>
+    </resultMap>
+
+    <sql id="Base_Column_List">
+    advertiser_id, material_id, image_mode, inventory, stat_datetime, cost, show, avg_show_cost, 
+    click, avg_click_cost, ctr, convert, convert_cost, convert_rate, deep_convert, deep_convert_cost, 
+    deep_convert_rate, attribution_convert, attribution_convert_cost, attribution_deep_convert, 
+    attribution_deep_convert_cost, download_start, download_start_cost, download_start_rate, 
+    download_finish, download_finish_cost, download_finish_rate, click_install, install_finish, 
+    install_finish_cost, install_finish_rate, active, active_cost, active_rate, register, 
+    active_register_cost, active_register_rate, active_pay_amount, next_day_open, next_day_open_cost, 
+    next_day_open_rate, attribution_next_day_open_cnt, attribution_next_day_open_cost, 
+    attribution_next_day_open_rate, game_addiction, game_addiction_cost, game_addiction_rate, 
+    pay_count, active_pay_cost, active_pay_rate, loan_completion, loan_completion_cost, 
+    loan_completion_rate, pre_loan_credit, pre_loan_credit_cost, loan_credit, loan_credit_cost, 
+    loan_credit_rate, in_app_uv, in_app_detail_uv, in_app_cart, in_app_pay, in_app_order, 
+    attribution_game_pay_7d_count, attribution_game_pay_7d_cost, attribution_active_pay_7d_per_count, 
+    game_pay_cost, game_pay_count, phone, form, map_search, button, view, download, qq, 
+    lottery, vote, message, redirect, shopping, consult, wechat, phone_confirm, phone_connect, 
+    consult_effective, coupon, coupon_single_page, redirect_to_shop, poi_collect, poi_address_click, 
+    luban_order_cnt, luban_order_stat_amount, luban_order_roi, luban_live_enter_cnt, 
+    live_watch_one_minute_count, luban_live_follow_cnt, live_fans_club_join_cnt, luban_live_comment_cnt, 
+    luban_live_share_cnt, luban_live_gift_cnt, luban_live_gift_amount, luban_live_slidecart_click_cnt, 
+    luban_live_click_product_cnt, luban_live_pay_order_count, luban_live_pay_order_stat_cost, 
+    wechat_login_count, attribution_wechat_login_30d_count, wechat_login_cost, attribution_wechat_login_30d_cost, 
+    wechat_first_pay_count, attribution_wechat_first_pay_30d_count, wechat_first_pay_cost, 
+    attribution_wechat_first_pay_30d_cost, wechat_first_pay_rate, attribution_wechat_first_pay_30d_rate, 
+    wechat_pay_amount, attribution_wechat_pay_30d_amount, attribution_wechat_pay_30d_roi, 
+    phone_effective, total_play, valid_play, valid_play_cost, valid_play_rate, play_25_feed_break, 
+    play_50_feed_break, play_75_feed_break, play_100_feed_break, average_play_time_per_play, 
+    play_over_rate, wifi_play_rate, wifi_play, play_duration_sum, advanced_creative_phone_click, 
+    advanced_creative_counsel_click, advanced_creative_form_click, advanced_creative_coupon_addition, 
+    advanced_creative_form_submit, card_show, share, comment, like, follow, home_visited, 
+    ies_challenge_click, ies_music_click, location_click, message_action, click_landing_page, 
+    click_shopwindow, click_website, click_download, click_call_dy, cpc, cpm, cpa, interact_per_cost, 
+    convert_show_rate, play_duration_10s_rate, play_50_feed_break_rate, play_25_feed_break_rate, 
+    play_duration_5s_rate, play_duration_2s_rate, average_play_progress, play_100_feed_break_rate, 
+    play_duration_3s_rate, play_75_feed_break_rate, play_duration, play_duration_3s, 
+    play_duration_2s, play_duration_10s, average_video_play, avg_rank, submit_certification_count, 
+    approval_count, first_order_count, first_rental_order_count, commute_first_pay_count
+  </sql>
+
+    <insert id="insert" parameterType="cn.com.ctop.job.bytedance.data.entity.BytedanceMaterialReportDaily">
+        replace into bytedance_material_report_daily (advertiser_id, material_id, image_mode,
+        inventory, stat_datetime, cost,
+        `show`, avg_show_cost, click,
+        avg_click_cost, ctr, `convert`,
+        convert_cost, convert_rate, deep_convert,
+        deep_convert_cost, deep_convert_rate, attribution_convert,
+        attribution_convert_cost, attribution_deep_convert,
+        attribution_deep_convert_cost, download_start,
+        download_start_cost, download_start_rate, download_finish,
+        download_finish_cost, download_finish_rate,
+        click_install, install_finish, install_finish_cost,
+        install_finish_rate, active, active_cost,
+        active_rate, register, active_register_cost,
+        active_register_rate, active_pay_amount, next_day_open,
+        next_day_open_cost, next_day_open_rate, attribution_next_day_open_cnt,
+        attribution_next_day_open_cost, attribution_next_day_open_rate,
+        game_addiction, game_addiction_cost, game_addiction_rate,
+        pay_count, active_pay_cost, active_pay_rate,
+        loan_completion, loan_completion_cost, loan_completion_rate,
+        pre_loan_credit, pre_loan_credit_cost, loan_credit,
+        loan_credit_cost, loan_credit_rate, in_app_uv,
+        in_app_detail_uv, in_app_cart, in_app_pay,
+        in_app_order, attribution_game_pay_7d_count,
+        attribution_game_pay_7d_cost, attribution_active_pay_7d_per_count,
+        game_pay_cost, game_pay_count, phone,
+        form, map_search, button,
+        `view`, download, qq,
+        lottery, vote, message,
+        redirect, shopping, consult,
+        wechat, phone_confirm, phone_connect,
+        consult_effective, coupon, coupon_single_page,
+        redirect_to_shop, poi_collect, poi_address_click,
+        luban_order_cnt, luban_order_stat_amount, luban_order_roi,
+        luban_live_enter_cnt, live_watch_one_minute_count,
+        luban_live_follow_cnt, live_fans_club_join_cnt,
+        luban_live_comment_cnt, luban_live_share_cnt,
+        luban_live_gift_cnt, luban_live_gift_amount,
+        luban_live_slidecart_click_cnt, luban_live_click_product_cnt,
+        luban_live_pay_order_count, luban_live_pay_order_stat_cost,
+        wechat_login_count, attribution_wechat_login_30d_count,
+        wechat_login_cost, attribution_wechat_login_30d_cost,
+        wechat_first_pay_count, attribution_wechat_first_pay_30d_count,
+        wechat_first_pay_cost, attribution_wechat_first_pay_30d_cost,
+        wechat_first_pay_rate, attribution_wechat_first_pay_30d_rate,
+        wechat_pay_amount, attribution_wechat_pay_30d_amount,
+        attribution_wechat_pay_30d_roi, phone_effective,
+        total_play, valid_play, valid_play_cost,
+        valid_play_rate, play_25_feed_break, play_50_feed_break,
+        play_75_feed_break, play_100_feed_break, average_play_time_per_play,
+        play_over_rate, wifi_play_rate, wifi_play,
+        play_duration_sum, advanced_creative_phone_click,
+        advanced_creative_counsel_click, advanced_creative_form_click,
+        advanced_creative_coupon_addition, advanced_creative_form_submit,
+        card_show, `share`, `comment`,
+        `like``, follow, home_visited,
+        ies_challenge_click, ies_music_click, location_click,
+        message_action, click_landing_page, click_shopwindow,
+        click_website, click_download, click_call_dy,
+        cpc, cpm, cpa, interact_per_cost,
+        convert_show_rate, play_duration_10s_rate, play_50_feed_break_rate,
+        play_25_feed_break_rate, play_duration_5s_rate,
+        play_duration_2s_rate, average_play_progress,
+        play_100_feed_break_rate, play_duration_3s_rate,
+        play_75_feed_break_rate, play_duration, play_duration_3s,
+        play_duration_2s, play_duration_10s, average_video_play,
+        avg_rank, submit_certification_count, approval_count,
+        first_order_count, first_rental_order_count,
+        commute_first_pay_count)
+        values
+        <foreach collection="list" item="item" separator=",">
+            (#{item.advertiserId,jdbcType=BIGINT}, #{item.materialId,jdbcType=BIGINT},
+            #{item.imageMode,jdbcType=VARCHAR},
+            #{item.inventory,jdbcType=VARCHAR}, #{item.statDatetime,jdbcType=INTEGER}, #{item.cost,jdbcType=DECIMAL},
+            #{item.show,jdbcType=INTEGER}, #{item.avgShowCost,jdbcType=DECIMAL}, #{item.click,jdbcType=INTEGER},
+            #{item.avgClickCost,jdbcType=DECIMAL}, #{item.ctr,jdbcType=DECIMAL}, #{item.convert,jdbcType=INTEGER},
+            #{item.convertCost,jdbcType=DECIMAL}, #{item.convertRate,jdbcType=DECIMAL},
+            #{item.deepConvert,jdbcType=INTEGER},
+            #{item.deepConvertCost,jdbcType=DECIMAL}, #{item.deepConvertRate,jdbcType=DECIMAL},
+            #{item.attributionConvert,jdbcType=INTEGER},
+            #{item.attributionConvertCost,jdbcType=DECIMAL}, #{item.attributionDeepConvert,jdbcType=INTEGER},
+            #{item.attributionDeepConvertCost,jdbcType=DECIMAL}, #{item.downloadStart,jdbcType=INTEGER},
+            #{item.downloadStartCost,jdbcType=DECIMAL}, #{item.downloadStartRate,jdbcType=DECIMAL},
+            #{item.downloadFinish,jdbcType=INTEGER},
+            #{item.downloadFinishCost,jdbcType=DECIMAL}, #{item.downloadFinishRate,jdbcType=DECIMAL},
+            #{item.clickInstall,jdbcType=INTEGER}, #{item.installFinish,jdbcType=INTEGER},
+            #{item.installFinishCost,jdbcType=DECIMAL},
+            #{item.installFinishRate,jdbcType=DECIMAL}, #{item.active,jdbcType=INTEGER},
+            #{item.activeCost,jdbcType=DECIMAL},
+            #{item.activeRate,jdbcType=DECIMAL}, #{item.register,jdbcType=INTEGER},
+            #{item.activeRegisterCost,jdbcType=DECIMAL},
+            #{item.activeRegisterRate,jdbcType=DECIMAL}, #{item.activePayAmount,jdbcType=DECIMAL},
+            #{item.nextDayOpen,jdbcType=INTEGER},
+            #{item.nextDayOpenCost,jdbcType=DECIMAL}, #{item.nextDayOpenRate,jdbcType=DECIMAL},
+            #{item.attributionNextDayOpenCnt,jdbcType=INTEGER},
+            #{item.attributionNextDayOpenCost,jdbcType=DECIMAL}, #{item.attributionNextDayOpenRate,jdbcType=DECIMAL},
+            #{item.gameAddiction,jdbcType=INTEGER}, #{item.gameAddictionCost,jdbcType=DECIMAL},
+            #{item.gameAddictionRate,jdbcType=DECIMAL},
+            #{item.payCount,jdbcType=INTEGER}, #{item.activePayCost,jdbcType=DECIMAL},
+            #{item.activePayRate,jdbcType=DECIMAL},
+            #{item.loanCompletion,jdbcType=INTEGER}, #{item.loanCompletionCost,jdbcType=DECIMAL},
+            #{item.loanCompletionRate,jdbcType=DECIMAL},
+            #{item.preLoanCredit,jdbcType=INTEGER}, #{item.preLoanCreditCost,jdbcType=DECIMAL},
+            #{item.loanCredit,jdbcType=INTEGER},
+            #{item.loanCreditCost,jdbcType=DECIMAL}, #{item.loanCreditRate,jdbcType=DECIMAL},
+            #{item.inAppUv,jdbcType=INTEGER},
+            #{item.inAppDetailUv,jdbcType=INTEGER}, #{item.inAppCart,jdbcType=INTEGER},
+            #{item.inAppPay,jdbcType=INTEGER},
+            #{item.inAppOrder,jdbcType=INTEGER}, #{item.attributionGamePay7dCount,jdbcType=INTEGER},
+            #{item.attributionGamePay7dCost,jdbcType=DECIMAL}, #{item.attributionActivePay7dPerCount,jdbcType=INTEGER},
+            #{item.gamePayCost,jdbcType=INTEGER}, #{item.gamePayCount,jdbcType=INTEGER}, #{item.phone,jdbcType=INTEGER},
+            #{item.form,jdbcType=INTEGER}, #{item.mapSearch,jdbcType=INTEGER}, #{item.button,jdbcType=INTEGER},
+            #{item.view,jdbcType=INTEGER}, #{item.download,jdbcType=INTEGER}, #{item.qq,jdbcType=INTEGER},
+            #{item.lottery,jdbcType=INTEGER}, #{item.vote,jdbcType=INTEGER}, #{item.message,jdbcType=INTEGER},
+            #{item.redirect,jdbcType=INTEGER}, #{item.shopping,jdbcType=INTEGER}, #{item.consult,jdbcType=INTEGER},
+            #{item.wechat,jdbcType=INTEGER}, #{item.phoneConfirm,jdbcType=INTEGER},
+            #{item.phoneConnect,jdbcType=INTEGER},
+            #{item.consultEffective,jdbcType=INTEGER}, #{item.coupon,jdbcType=INTEGER},
+            #{item.couponSinglePage,jdbcType=INTEGER},
+            #{item.redirectToShop,jdbcType=INTEGER}, #{item.poiCollect,jdbcType=INTEGER},
+            #{item.poiAddressClick,jdbcType=INTEGER},
+            #{item.lubanOrderCnt,jdbcType=INTEGER}, #{item.lubanOrderStatAmount,jdbcType=DECIMAL},
+            #{item.lubanOrderRoi,jdbcType=DECIMAL},
+            #{item.lubanLiveEnterCnt,jdbcType=INTEGER}, #{item.liveWatchOneMinuteCount,jdbcType=INTEGER},
+            #{item.lubanLiveFollowCnt,jdbcType=INTEGER}, #{item.liveFansClubJoinCnt,jdbcType=INTEGER},
+            #{item.lubanLiveCommentCnt,jdbcType=INTEGER}, #{item.lubanLiveShareCnt,jdbcType=INTEGER},
+            #{item.lubanLiveGiftCnt,jdbcType=INTEGER}, #{item.lubanLiveGiftAmount,jdbcType=DECIMAL},
+            #{item.lubanLiveSlidecartClickCnt,jdbcType=INTEGER}, #{item.lubanLiveClickProductCnt,jdbcType=INTEGER},
+            #{item.lubanLivePayOrderCount,jdbcType=INTEGER}, #{item.lubanLivePayOrderStatCost,jdbcType=DECIMAL},
+            #{item.wechatLoginCount,jdbcType=INTEGER}, #{item.attributionWechatLogin30dCount,jdbcType=INTEGER},
+            #{item.wechatLoginCost,jdbcType=DECIMAL}, #{item.attributionWechatLogin30dCost,jdbcType=DECIMAL},
+            #{item.wechatFirstPayCount,jdbcType=INTEGER}, #{item.attributionWechatFirstPay30dCount,jdbcType=INTEGER},
+            #{item.wechatFirstPayCost,jdbcType=DECIMAL}, #{item.attributionWechatFirstPay30dCost,jdbcType=DECIMAL},
+            #{item.wechatFirstPayRate,jdbcType=DECIMAL}, #{item.attributionWechatFirstPay30dRate,jdbcType=DECIMAL},
+            #{item.wechatPayAmount,jdbcType=DECIMAL}, #{item.attributionWechatPay30dAmount,jdbcType=DECIMAL},
+            #{item.attributionWechatPay30dRoi,jdbcType=DECIMAL}, #{item.phoneEffective,jdbcType=INTEGER},
+            #{item.totalPlay,jdbcType=INTEGER}, #{item.validPlay,jdbcType=INTEGER},
+            #{item.validPlayCost,jdbcType=DECIMAL},
+            #{item.validPlayRate,jdbcType=DECIMAL}, #{item.play25FeedBreak,jdbcType=INTEGER},
+            #{item.play50FeedBreak,jdbcType=INTEGER},
+            #{item.play75FeedBreak,jdbcType=INTEGER}, #{item.play100FeedBreak,jdbcType=INTEGER},
+            #{item.averagePlayTimePerPlay,jdbcType=DECIMAL},
+            #{item.playOverRate,jdbcType=DECIMAL}, #{item.wifiPlayRate,jdbcType=DECIMAL},
+            #{item.wifiPlay,jdbcType=INTEGER},
+            #{item.playDurationSum,jdbcType=BIGINT}, #{item.advancedCreativePhoneClick,jdbcType=INTEGER},
+            #{item.advancedCreativeCounselClick,jdbcType=INTEGER}, #{item.advancedCreativeFormClick,jdbcType=INTEGER},
+            #{item.advancedCreativeCouponAddition,jdbcType=INTEGER},
+            #{item.advancedCreativeFormSubmit,jdbcType=INTEGER},
+            #{item.cardShow,jdbcType=INTEGER}, #{item.share,jdbcType=INTEGER}, #{item.comment,jdbcType=INTEGER},
+            #{item.like,jdbcType=INTEGER}, #{item.follow,jdbcType=INTEGER}, #{item.homeVisited,jdbcType=INTEGER},
+            #{item.iesChallengeClick,jdbcType=INTEGER}, #{item.iesMusicClick,jdbcType=INTEGER},
+            #{item.locationClick,jdbcType=INTEGER},
+            #{item.messageAction,jdbcType=INTEGER}, #{item.clickLandingPage,jdbcType=INTEGER},
+            #{item.clickShopwindow,jdbcType=INTEGER},
+            #{item.clickWebsite,jdbcType=INTEGER}, #{item.clickDownload,jdbcType=INTEGER},
+            #{item.clickCallDy,jdbcType=INTEGER},
+            #{item.cpc,jdbcType=DECIMAL}, #{item.cpm,jdbcType=DECIMAL}, #{item.cpa,jdbcType=DECIMAL},
+            #{item.interactPerCost,jdbcType=DECIMAL},
+            #{item.convertShowRate,jdbcType=DECIMAL}, #{item.playDuration10sRate,jdbcType=DECIMAL},
+            #{item.play50FeedBreakRate,jdbcType=DECIMAL},
+            #{item.play25FeedBreakRate,jdbcType=DECIMAL}, #{item.playDuration5sRate,jdbcType=DECIMAL},
+            #{item.playDuration2sRate,jdbcType=DECIMAL}, #{item.averagePlayProgress,jdbcType=DECIMAL},
+            #{item.play100FeedBreakRate,jdbcType=DECIMAL}, #{item.playDuration3sRate,jdbcType=DECIMAL},
+            #{item.play75FeedBreakRate,jdbcType=DECIMAL}, #{item.playDuration,jdbcType=DECIMAL},
+            #{item.playDuration3s,jdbcType=DECIMAL},
+            #{item.playDuration2s,jdbcType=DECIMAL}, #{item.playDuration10s,jdbcType=DECIMAL},
+            #{item.averageVideoPlay,jdbcType=DECIMAL},
+            #{item.avgRank,jdbcType=DECIMAL}, #{item.submitCertificationCount,jdbcType=INTEGER},
+            #{item.approvalCount,jdbcType=INTEGER},
+            #{item.firstOrderCount,jdbcType=INTEGER}, #{item.firstRentalOrderCount,jdbcType=INTEGER},
+            #{item.commuteFirstPayCount,jdbcType=INTEGER})
+        </foreach>
+    </insert>
 
 </mapper>

+ 0 - 107
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/mapper/xml/DataMapper.xml

@@ -1,107 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="cn.com.ctop.job.bytedance.data.mapper.DataMapper">
-
-    <select id="getByPrimaryKey" resultType="cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlanDailyReport">
-        select advertiser_id as 'advertiserId' from bytedance_ad_report_daily where
-        advertiser_id=#{advertiserId} and campaign_id=#{campaignId} and ad_id=#{adId} and stat_datetime=#{statDatetime}
-   </select>
-
-    <select id="getHourlyByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlanHourlyReport">
-        select advertiser_id as 'advertiserId' from bytedance_ad_report_hourly t where
-        t.advertiser_id=#{advertiserId} and t.campaign_id=#{campaignId} and t.ad_id=#{adId} and t.stat_datetime=#{statDatetime} and  t.hour=#{hour}
-   </select>
-
-    <select id="getAdvertiseDailyByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertiseDailyReport">
-        select advertiser_id as 'advertiserId' from bytedance_advertiser_report_daily where
-        advertiser_id=#{advertiserId}  and stat_datetime=#{statDatetime}
-   </select>
-
-    <select id="getAdvertiseHourlyByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertiseHourlyReport">
-        select advertiser_id as 'advertiserId' from bytedance_advertiser_report_hourly t where
-        t.advertiser_id=#{advertiserId} and t.stat_datetime=#{statDatetime} and  t.hour=#{hour}
-   </select>
-
-    <select id="getAgentDailyByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceAgentReportDaily">
-        select advertiser_id as 'advertiserId' from bytedance_agent_report_daily where
-        advertiser_id=#{advertiserId}  and agent_id=#{agentId} and stat_datetime=#{statDatetime}
-   </select>
-
-    <select id="getAgentHourlyByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceAgentReportHourly">
-        select advertiser_id as 'advertiserId' from bytedance_agent_report_hourly t where
-        t.advertiser_id=#{advertiserId} and agent_id=#{agentId} and stat_datetime=#{statDatetime} and `hour`=#{hour}
-   </select>
-
-    <select id="getAudiencePackageByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceAudiencePackageGet">
-        select advertiser_id as 'advertiserId' from bytedance_audience_package_get t where
-        t.advertiser_id=#{advertiserId} and audience_package_id=#{audiencePackageId}
-   </select>
-
-    <select id="getCampaignByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignGet">
-        select advertiser_id as 'advertiserId' from bytedance_campaign_get t where
-        t.advertiser_id=#{advertiserId} and campaign_id=#{campaignId}
-   </select>
-
-    <select id="getCampaignDailyByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportDaily">
-        select advertiser_id as 'advertiserId' from bytedance_campaign_report_daily t where
-        t.advertiser_id=#{advertiserId} and campaign_id=#{campaignId} and stat_datetime=#{statDatetime}
-   </select>
-
-    <select id="getCampaignHourlyByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportHourly">
-        select advertiser_id as 'advertiserId' from bytedance_campaign_report_hourly t where
-        t.advertiser_id=#{advertiserId} and campaign_id=#{campaignId} and stat_datetime=#{statDatetime} and `hour`=#{hour}
-   </select>
-
-    <select id="getCreativeByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeGet">
-        select advertiser_id as 'advertiserId' from bytedance_creative_get t where
-        t.advertiser_id=#{advertiserId} and ad_id=#{adId} and creative_id=#{creativeId}
-   </select>
-
-    <select id="getCreativeDailyByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeReportDaily">
-        select advertiser_id as 'advertiserId' from bytedance_creative_report_daily t where
-        t.advertiser_id=#{advertiserId} and campaign_id =#{campaignId}
-         and ad_id=#{adId}  and creative_id=#{creativeId} and stat_datetime=#{statDatetime}
-
-   </select>
-
-    <select id="getCreativeHourlyByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeReportHourly">
-        select advertiser_id as 'advertiserId' from bytedance_creative_report_hourly t where
-         t.advertiser_id=#{advertiserId} and campaign_id =#{campaignId}
-         and ad_id=#{adId}  and creative_id=#{creativeId} and stat_datetime=#{statDatetime}
-         and `hour`=#{hour}
-   </select>
-
-    <select id="getFileImageGetByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceFileImageGet">
-        select advertiser_id as 'advertiserId' from bytedance_file_image_get t where
-         t.advertiser_id=#{advertiserId} and id =#{id}
-   </select>
-
-    <select id="getFileVideoGetByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceFileVideoGet">
-        select advertiser_id as 'advertiserId' from bytedance_file_video_get t where
-         t.advertiser_id=#{advertiserId} and id =#{id}
-
-   </select>
-
-    <select id="getMaterialReportByPrimaryKey"
-            resultType="cn.com.ctop.job.bytedance.data.entity.BytedanceMaterialReportDaily">
-        select advertiser_id as 'advertiserId' from bytedance_material_report_daily t where
-         t.advertiser_id=#{advertiserId} and material_id =#{materialId} and image_mode =#{imageMode}
-         and inventory =#{inventory} and stat_datetime =#{statDatetime}
-
-   </select>
-
-</mapper>

+ 0 - 19
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IByteDanceAdvertisePlanService.java

@@ -1,19 +0,0 @@
-package cn.com.ctop.job.bytedance.data.service;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlan;
-import cn.com.ctop.job.bytedance.data.entity.OauthToken;
-import com.baomidou.mybatisplus.extension.service.IService;
-
-import java.util.Date;
-
-/**
- * @Description: 今日头条广告计划信息
- * @Author: jeecg-boot
- * @Date: 2019-07-22
- * @Version: V1.0
- */
-public interface IByteDanceAdvertisePlanService extends IService<ByteDanceAdvertisePlan> {
-
-
-
-}

+ 0 - 12
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IByteDanceAdvertiserDailyService.java

@@ -1,12 +0,0 @@
-package cn.com.ctop.job.bytedance.data.service;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertiseDailyReport;
-import com.baomidou.mybatisplus.extension.service.IService;
-
-/**
- * @author jeecg-boot
- */
-public interface IByteDanceAdvertiserDailyService extends IService<ByteDanceAdvertiseDailyReport> {
-
-
-}

+ 0 - 12
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IByteDanceAdvertiserHourlyService.java

@@ -1,12 +0,0 @@
-package cn.com.ctop.job.bytedance.data.service;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertiseHourlyReport;
-import com.baomidou.mybatisplus.extension.service.IService;
-
-/**
- * @author jeecg-boot
- */
-public interface IByteDanceAdvertiserHourlyService extends IService<ByteDanceAdvertiseHourlyReport> {
-
-
-}

+ 0 - 14
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IByteDanceAdvertiserPlanDailyService.java

@@ -1,14 +0,0 @@
-package cn.com.ctop.job.bytedance.data.service;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlanDailyReport;
-import com.baomidou.mybatisplus.extension.service.IService;
-
-/**
- * @author jeecg-boot
- */
-public interface IByteDanceAdvertiserPlanDailyService extends IService<ByteDanceAdvertisePlanDailyReport> {
-
-
-
-
-}

+ 0 - 14
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IByteDanceAdvertiserPlanHourlyService.java

@@ -1,14 +0,0 @@
-package cn.com.ctop.job.bytedance.data.service;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlanHourlyReport;
-import com.baomidou.mybatisplus.extension.service.IService;
-
-/**
- * @author jeecg-boot
- */
-public interface IByteDanceAdvertiserPlanHourlyService extends IService<ByteDanceAdvertisePlanHourlyReport> {
-
-
-
-
-}

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceAgentReportDailyService.java

@@ -9,6 +9,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * 2021-10-21
  * @version V1.0
  */
-public interface IBytedanceAgentReportDailyService extends IService<BytedanceAgentReportDaily> {
+public interface IBytedanceAgentReportDailyService  {
 
 }

+ 2 - 4
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceAgentReportHourlyService.java

@@ -1,14 +1,12 @@
 package cn.com.ctop.job.bytedance.data.service;
 
-import cn.com.ctop.job.bytedance.data.entity.BytedanceAgentReportHourly;
-import com.baomidou.mybatisplus.extension.service.IService;
-
 /**
  * 代理商日报
+ *
  * @author jeecg-boot
  * 2021-10-21
  * @version V1.0
  */
-public interface IBytedanceAgentReportHourlyService extends IService<BytedanceAgentReportHourly> {
+public interface IBytedanceAgentReportHourlyService {
 
 }

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceAudiencePackageGetService.java

@@ -11,6 +11,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * 2021-10-21
  * @version V1.0
  */
-public interface IBytedanceAudiencePackageGetService extends IService<BytedanceAudiencePackageGet> {
+public interface IBytedanceAudiencePackageGetService  {
     void getAudiencePackageGetReport(OauthToken token);
 }

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCampaignGetService.java

@@ -11,7 +11,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * 2021-10-21
  * @version V1.0
  */
-public interface IBytedanceCampaignGetService extends IService<BytedanceCampaignGet> {
+public interface IBytedanceCampaignGetService  {
 
     void getCampaignData(OauthToken oauthToken, int pageNumber, int PageSize);
 

+ 4 - 5
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCampaignReportDailyService.java

@@ -1,16 +1,15 @@
 package cn.com.ctop.job.bytedance.data.service;
 
-import cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportDaily;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
-import com.baomidou.mybatisplus.extension.service.IService;
 
 /**
- * 获取定向包
+ * 获取广告组
+ *
  * @author jeecg-boot
  * 2021-10-21
  * @version V1.0
  */
-public interface IBytedanceCampaignReportDailyService extends IService<BytedanceCampaignReportDaily> {
+public interface IBytedanceCampaignReportDailyService {
     public void getCampaignDailyReport(OauthToken oauthToken, String yesterda, String yesterda1, String bytedanceReportTypeDaily, int pageNumber, int pageSize);
 
-    }
+}

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCampaignReportHourlyService.java

@@ -11,7 +11,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * 2021-10-21
  * @version V1.0
  */
-public interface IBytedanceCampaignReportHourlyService extends IService<BytedanceCampaignReportHourly> {
+public interface IBytedanceCampaignReportHourlyService  {
     public void getCampaignHourlyReport(OauthToken oauthToken, String yesterda, String yesterda1, String bytedanceReportTypeDaily, int pageNumber, int pageSize);
 
 }

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCreativeGetService.java

@@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * 2021-10-22
  * @version V1.0
  */
-public interface IBytedanceCreativeGetService extends IService<BytedanceCreativeGet> {
+public interface IBytedanceCreativeGetService  {
 
     void getCreativeData(OauthToken oauthToken, int page, int pageSize);
 }

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCreativeReportDailyService.java

@@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * 2021-10-22
  * @version V1.0
  */
-public interface IBytedanceCreativeReportDailyService extends IService<BytedanceCreativeReportDaily> {
+public interface IBytedanceCreativeReportDailyService {
 
     void getCreativeDailyReport(OauthToken oauthToken, String yesterda, String yesterda1, String bytedanceReportTypeDaily, int i, int i1);
 }

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceCreativeReportHourlyService.java

@@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * 2021-10-22
  * @version V1.0
  */
-public interface IBytedanceCreativeReportHourlyService extends IService<BytedanceCreativeReportHourly> {
+public interface IBytedanceCreativeReportHourlyService  {
 
     void getCampaignHourlyReport(OauthToken oauthToken, String yesterda, String yesterda1, String bytedanceReportTypeHourly, int i, int i1);
 }

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceFileImageGetService.java

@@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * 2021-10-22
  * @version V1.0
  */
-public interface IBytedanceFileImageGetService extends IService<BytedanceFileImageGet> {
+public interface IBytedanceFileImageGetService  {
 
     void getFileImageData(OauthToken oauthToken, int i, int i1);
 }

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceFileVideoGetService.java

@@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * 2021-10-22
  * @version V1.0
  */
-public interface IBytedanceFileVideoGetService extends IService<BytedanceFileVideoGet> {
+public interface IBytedanceFileVideoGetService  {
 
     void getFileVideoData(OauthToken oauthToken, int i, int i1);
 }

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/IBytedanceMaterialReportDailyService.java

@@ -11,7 +11,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * 2021-10-25
  * @version V1.0
  */
-public interface IBytedanceMaterialReportDailyService extends IService<BytedanceMaterialReportDaily> {
+public interface IBytedanceMaterialReportDailyService  {
 
     void bytedanceDailyMaterialReportJob(OauthToken oauthToken, String yesterda, String yesterda1, int i, int i1);
 }

+ 171 - 174
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/ByteDanceAdvertiserDataServiceImpl.java

@@ -3,7 +3,7 @@ package cn.com.ctop.job.bytedance.data.service.impl;
 import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.constant.CtopAdConstant;
 import cn.com.ctop.job.bytedance.data.entity.*;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
+import cn.com.ctop.job.bytedance.data.mapper.*;
 import cn.com.ctop.job.bytedance.data.service.*;
 import cn.com.ctop.job.bytedance.data.utils.DateUtils;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
@@ -12,7 +12,6 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.PropertyNamingStrategy;
 import com.alibaba.fastjson.serializer.SerializeConfig;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.xxl.job.core.context.XxlJobHelper;
 import lombok.extern.slf4j.Slf4j;
 import lombok.var;
@@ -21,6 +20,7 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.*;
@@ -38,29 +38,32 @@ public class ByteDanceAdvertiserDataServiceImpl implements IByteDanceAdvertiserD
 
     private String urlPath = "http://192.168.0.202:8765/webhook/bytedance_account_report";
 
-    @Autowired
-    private IByteDanceAdvertisePlanService advertisePlanService;
+  
 
     @Autowired
-    private IByteDanceAdvertiserPlanDailyService planDailyService;
+    private IBytedanceAgentReportDailyService agentDailyService;
 
     @Autowired
-    private IByteDanceAdvertiserPlanHourlyService planHourlyService;
+    private IBytedanceAgentReportHourlyService agentHourlyService;
 
-    @Autowired
-    private IByteDanceAdvertiserDailyService advertiserDailyService;
 
-    @Autowired
-    private IByteDanceAdvertiserHourlyService advertiserHourlyService;
+    @Resource
+    BytedanceAdGetMapper bytedanceAdGetMapper;
+    @Resource
+    BytedanceAdReportDailyMapper bytedanceAdReportDailyMapper;
+    @Resource
+    BytedanceAdReportHourlyMapper bytedanceAdReportHourlyMapper;
+    @Resource
+    BytedanceAdvertiserReportHourlyMapper bytedanceAdvertiserReportHourlyMapper;
+    @Resource
+    BytedanceAdvertiserReportDailyMapper bytedanceAdvertiserReportDailyMapper;
 
-    @Autowired
-    private IBytedanceAgentReportDailyService agentDailyService;
+    @Resource
+    BytedanceAgentReportDailyMapper bytedanceAgentReportDailyMapper;
 
-    @Autowired
-    private IBytedanceAgentReportHourlyService agentHourlyService;
+    @Resource
+    BytedanceAgentReportHourlyMapper bytedanceAgentReportHourlyMapper;
 
-    @Autowired
-    DataMapper dataMapper;
 
     public void getAd(OauthToken token, int pageNum, String ids, String date, String updateDate) {
         JSONArray getIds = null;
@@ -106,17 +109,68 @@ public class ByteDanceAdvertiserDataServiceImpl implements IByteDanceAdvertiserD
         if (null == data || data.isEmpty()) {
             return;
         }
-        for (int i = 0; i < data.size(); i++) {
-            JSONObject dataObject = data.getJSONObject(i);
-            ByteDanceAdvertisePlan advertisePlan =
-                    new ByteDanceAdvertisePlan(dataObject, String.valueOf(token.getAccountId()));
-            BigDecimal deepCpabid = dataObject.getBigDecimal("deep_cpabid");
-            if (null != deepCpabid) {
-                advertisePlan.setDeepCpaBid(deepCpabid);
+        List<BytedanceAdGet> list = new ArrayList<>();
+        try {
+            for (int i = 0; i < data.size(); i++) {
+                JSONObject dataObject = data.getJSONObject(i);
+                BytedanceAdGet advertisePlan = new BytedanceAdGet();
+                advertisePlan.setId((Long) dataObject.get("id"));
+                advertisePlan.setAccountId((Long) dataObject.get("account_id"));
+                advertisePlan.setName((String) dataObject.get("name"));
+                advertisePlan.setCampaignId((Long) dataObject.get("campaign_id"));
+                advertisePlan.setOperation(dataObject.get("operation") == null ? null : (String) dataObject.get("operation"));
+                advertisePlan.setPlanModifyTime(dataObject.get("plan_modify_time") == null ? null : (String) dataObject.get("plan_modify_time"));
+                advertisePlan.setDeliveryRange(dataObject.get("delivery_range") == null ? null : (String) dataObject.get("delivery_range"));
+                advertisePlan.setUnionVideoType(dataObject.get("union_video_type") == null ? null : (String) dataObject.get("union_video_type"));
+                advertisePlan.setDeepBidType(dataObject.get("deep_bid_type") == null ? null : (String) dataObject.get("deep_bid_type"));
+                advertisePlan.setDeepCpaBid(dataObject.get("deep_cpa_bid") == null ? null : (BigDecimal) dataObject.get("deep_cpa_bid"));
+                advertisePlan.setAdModifyTime(dataObject.get("ad_modify_time") == null ? null : (String) dataObject.get("ad_modify_time"));
+                advertisePlan.setAdCreateTime(dataObject.get("ad_create_time") == null ? null : (String) dataObject.get("ad_create_time"));
+                advertisePlan.setBudgetMode(dataObject.get("budget_mode") == null ? null : (String) dataObject.get("budget_mode"));
+                advertisePlan.setBudget(dataObject.get("budget") == null ? null : (BigDecimal) dataObject.get("budget"));
+                advertisePlan.setToutiaoStatus(dataObject.get("toutiao_status") == null ? null : (String) dataObject.get("toutiao_status"));
+                advertisePlan.setOptStatus(dataObject.get("opt_status") == null ? null : (String) dataObject.get("opt_status"));
+                advertisePlan.setStartTime(dataObject.get("start_time") == null ? null : (String) dataObject.get("start_time"));
+                advertisePlan.setEndTime(dataObject.get("end_time") == null ? null : (String) dataObject.get("end_time"));
+                advertisePlan.setBid(dataObject.get("bid") == null ? null : (BigDecimal) dataObject.get("bid"));
+                advertisePlan.setPricing(dataObject.get("pricing") == null ? null : (String) dataObject.get("pricing"));
+                advertisePlan.setScheduleType(dataObject.get("schedule_type") == null ? null : (String) dataObject.get("schedule_type"));
+                advertisePlan.setScheduleTime(dataObject.get("schedule_time") == null ? null : (String) dataObject.get("schedule_time"));
+                advertisePlan.setFlowControlMode(dataObject.get("flow_control_mode") == null ? null : (String) dataObject.get("flow_control_mode"));
+                advertisePlan.setOpenUrl(dataObject.get("open_url") == null ? null : (String) dataObject.get("open_url"));
+                advertisePlan.setDownloadType(dataObject.get("download_type") == null ? null : (String) dataObject.get("download_type"));
+                advertisePlan.setExternalUrl(dataObject.get("external_url") == null ? null : (String) dataObject.get("external_url"));
+                advertisePlan.setToutiaoPackage(dataObject.get("toutiao_package") == null ? null : (String) dataObject.get("toutiao_package"));
+                advertisePlan.setAppType(dataObject.get("app_type") == null ? null : (String) dataObject.get("app_type"));
+                advertisePlan.setAuditRejectReason(dataObject.get("audit_reject_reason") == null ? null : (String) dataObject.get("audit_reject_reason"));
+                advertisePlan.setCpaBid(dataObject.get("cpa_bid") == null ? null : (BigDecimal) dataObject.get("cpa_bid"));
+                advertisePlan.setCpaSkipFirstPhrase(dataObject.get("cpa_skip_first_phrase") == null ? null : (Integer) dataObject.get("cpa_skip_first_phrase"));
+                advertisePlan.setConvertId(dataObject.get("convert_id") == null ? null : (Long) dataObject.get("convert_id"));
+                advertisePlan.setHideIfConverted(dataObject.get("hide_if_converted") == null ? null : (String) dataObject.get("hide_if_converted"));
+                advertisePlan.setHideIfExists(dataObject.get("hide_if_exists") == null ? null : (Integer) dataObject.get("hide_if_exists"));
+                advertisePlan.setAudience(dataObject.get("audience") == null ? null : ((JSONObject) dataObject.get("audience")).toJSONString());
+                advertisePlan.setModifyTime(dataObject.get("modify_time") == null ? null : (String) dataObject.get("modify_time"));
+                advertisePlan.setGender(dataObject.get("gender") == null ? null : (String) dataObject.get("gender"));
+                advertisePlan.setPlatform(dataObject.get("platform") == null ? null : (String) dataObject.get("platform"));
+                advertisePlan.setCreateTime(dataObject.get("create_time") == null ? null : (Date) dataObject.get("create_time"));
+                advertisePlan.setUpdateTime(dataObject.get("update_time") == null ? null : (Date) dataObject.get("update_time"));
+                advertisePlan.setPlanStatus(dataObject.get("plan_status") == null ? null : (Integer) dataObject.get("plan_status"));
+                advertisePlan.setConvertedTimeDuration(dataObject.get("converted_time_duration") == null ? null : (String) dataObject.get("converted_time_duration"));
+                advertisePlan.setDownloadUrl(dataObject.get("download_url") == null ? null : (String) dataObject.get("download_url"));
+                advertisePlan.setLubanRoiGoal(dataObject.get("luban_roi_goal") == null ? null : (BigDecimal) dataObject.get("luban_roi_goal"));
+                advertisePlan.setRoiGoal(dataObject.get("roi_goal") == null ? null : (BigDecimal) dataObject.get("roi_goal"));
+                advertisePlan.setInventoryType(dataObject.get("inventory_type") == null ? null : ((JSONArray) dataObject.get("inventory_type")).toString());
+                advertisePlan.setAudiencePackageId(dataObject.get("audience_package_id") == null ? null : (Long) dataObject.get("audience_package_id"));
+                list.add(advertisePlan);
             }
-            advertisePlanService.saveOrUpdate(advertisePlan);
+            bytedanceAdGetMapper.insert(list);
+        } catch (Exception e) {
+            e.printStackTrace();
+            log.info(e.toString());
         }
+
         getAd(token, pageNum + 1, ids, date, updateDate);
+
     }
 
     @Override
@@ -174,67 +228,44 @@ public class ByteDanceAdvertiserDataServiceImpl implements IByteDanceAdvertiserD
         if (null == dataArray || dataArray.size() <= 0) {
             return;
         }
-        List<ByteDanceAdvertisePlanHourlyReport> hourlyReports = new ArrayList<>();
-        List<ByteDanceAdvertisePlanDailyReport> dailyReports = new ArrayList<>();
-        for (var i = 0; i < dataArray.size(); i++) {
-            var data = dataArray.getJSONObject(i);
-            if (null != conditions.getTimeGranularity()
-                    && CtopAdConstant.BYTEDANCE_REPORT_TYPE_HOURLY.equals(conditions.getTimeGranularity())) {
-                // 时报
-                ByteDanceAdvertisePlanHourlyReport hourlyReport =
-                        JSONObject.parseObject(data.toJSONString(), ByteDanceAdvertisePlanHourlyReport.class);
-                hourlyReport.setAdvertiserId(conditions.getAdvertiserId());
-                String hour = hourlyReport.getStatDatetime().substring(11, 13);
-                hourlyReport.setStatDatetime(conditions.getStartDate().replace("-", ""));
-                hourlyReport.setHour(Integer.parseInt(hour));
-
-                ByteDanceAdvertisePlanHourlyReport hourlyByPrimaryKey =
-                        dataMapper.getHourlyByPrimaryKey(
-                                hourlyReport.getAdvertiserId(),
-                                hourlyReport.getCampaignId(),
-                                hourlyReport.getAdId(),
-                                Integer.parseInt(hourlyReport.getStatDatetime()),
-                                hourlyReport.getHour());
-                if (hourlyByPrimaryKey != null && hourlyByPrimaryKey.getAdvertiserId() != null) {
-                    UpdateWrapper<ByteDanceAdvertisePlanHourlyReport> updateWrapper = new UpdateWrapper<>();
-                    updateWrapper
-                            .eq("advertiser_id", hourlyReport.getAdvertiserId())
-                            .eq("campaign_id", hourlyReport.getCampaignId())
-                            .eq("ad_id", hourlyReport.getAdId())
-                            .eq("hour", hourlyReport.getHour())
-                            .eq("stat_datetime", hourlyReport.getStatDatetime());
-                    planHourlyService.update(hourlyReport, updateWrapper);
+        List<BytedanceAdReportHourly> hourlyReports = new ArrayList<>();
+        List<BytedanceAdReportDaily> dailyReports = new ArrayList<>();
+        try {
+            for (var i = 0; i < dataArray.size(); i++) {
+                var data = dataArray.getJSONObject(i);
+                if (null != conditions.getTimeGranularity()
+                        && CtopAdConstant.BYTEDANCE_REPORT_TYPE_HOURLY.equals(conditions.getTimeGranularity())) {
+                    // 时报
+                    BytedanceAdReportHourly hourlyReport =
+                            JSONObject.parseObject(data.toJSONString(), BytedanceAdReportHourly.class);
+                    hourlyReport.setAdvertiserId(conditions.getAdvertiserId());
+                    String hour = hourlyReport.getStatDatetime().substring(11, 13);
+                    hourlyReport.setStatDatetime(conditions.getStartDate().replace("-", ""));
+                    hourlyReport.setHour(Integer.parseInt(hour));
+                    hourlyReports.add(hourlyReport);
+
                 } else {
-                    planHourlyService.save(hourlyReport);
-                }
-            } else {
-                // 日报
-                if (data != null) {
-                    ByteDanceAdvertisePlanDailyReport dailyReport =
-                            JSONObject.parseObject(data.toJSONString(), ByteDanceAdvertisePlanDailyReport.class);
-                    dailyReport.setAdvertiserId(conditions.getAdvertiserId());
-                    dailyReport.setStatDatetime(conditions.getStartDate().replace("-", ""));
-                    ByteDanceAdvertisePlanDailyReport byPrimaryKey =
-                            dataMapper.getByPrimaryKey(
-                                    dailyReport.getAdvertiserId(),
-                                    dailyReport.getCampaignId(),
-                                    dailyReport.getAdId(),
-                                    Integer.parseInt(dailyReport.getStatDatetime()));
-                    if (byPrimaryKey != null && byPrimaryKey.getAdvertiserId() != null) {
-                        UpdateWrapper<ByteDanceAdvertisePlanDailyReport> updateWrapper = new UpdateWrapper<>();
-                        updateWrapper
-                                .eq("advertiser_id", dailyReport.getAdvertiserId())
-                                .eq("campaign_id", dailyReport.getCampaignId())
-                                .eq("ad_id", dailyReport.getAdId())
-                                .eq("stat_datetime", dailyReport.getStatDatetime());
-                        planDailyService.update(dailyReport, updateWrapper);
-                    } else {
-                        planDailyService.save(dailyReport);
+                    // 日报
+                    if (data != null) {
+                        BytedanceAdReportDaily dailyReport =
+                                JSONObject.parseObject(data.toJSONString(), BytedanceAdReportDaily.class);
+                        dailyReport.setAdvertiserId(conditions.getAdvertiserId());
+                        dailyReport.setStatDatetime(conditions.getStartDate().replace("-", ""));
+                        dailyReports.add(dailyReport);
                     }
                 }
+                if (dailyReports.size() > 0) {
+                    bytedanceAdReportDailyMapper.insert(dailyReports);
+                }
+                if (hourlyReports.size() > 0) {
+                    bytedanceAdReportHourlyMapper.insert(hourlyReports);
+                }
             }
+        } catch (Exception e) {
+            log.info("获取计划报表数据错误:{}", e.toString());
         }
 
+
         page++;
         int totalPage =
                 getObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
@@ -300,55 +331,40 @@ public class ByteDanceAdvertiserDataServiceImpl implements IByteDanceAdvertiserD
         if (null == dataArray || dataArray.isEmpty()) {
             return;
         }
+        List<BytedanceAdvertiserReportHourly> hourlyList = new ArrayList<>();
+        List<BytedanceAdvertiserReportDaily> dailyList = new ArrayList<>();
+
+        try {
+            for (int i = 0; i < dataArray.size(); i++) {
+                JSONObject data = dataArray.getJSONObject(i);
+                if (null != conditions.getTimeGranularity()
+                        && conditions.getTimeGranularity().equals(CtopAdConstant.BYTEDANCE_REPORT_TYPE_HOURLY)) {
+                    // 时报
+                    BytedanceAdvertiserReportHourly hourlyReport =
+                            JSONObject.parseObject(data.toJSONString(), BytedanceAdvertiserReportHourly.class);
+                    hourlyReport.setAdvertiserId(conditions.getAdvertiserId());
+                    String hour = hourlyReport.getStatDatetime().substring(11, 13);
+                    hourlyReport.setStatDatetime(conditions.getStartDate().replace("-", ""));
+                    hourlyReport.setHour(Integer.parseInt(hour));
+                    hourlyList.add(hourlyReport);
 
-        for (int i = 0; i < dataArray.size(); i++) {
-            JSONObject data = dataArray.getJSONObject(i);
-            if (null != conditions.getTimeGranularity()
-                    && conditions.getTimeGranularity().equals(CtopAdConstant.BYTEDANCE_REPORT_TYPE_HOURLY)) {
-                // 时报
-                ByteDanceAdvertiseHourlyReport hourlyReport =
-                        JSONObject.parseObject(data.toJSONString(), ByteDanceAdvertiseHourlyReport.class);
-                hourlyReport.setAdvertiserId(conditions.getAdvertiserId());
-                String hour = hourlyReport.getStatDatetime().substring(11, 13);
-                hourlyReport.setStatDatetime(conditions.getStartDate().replace("-", ""));
-                hourlyReport.setHour(Integer.parseInt(hour));
-
-                ByteDanceAdvertiseHourlyReport hourlyByPrimaryKey =
-                        dataMapper.getAdvertiseHourlyByPrimaryKey(
-                                hourlyReport.getAdvertiserId(),
-                                Integer.parseInt(hourlyReport.getStatDatetime()),
-                                hourlyReport.getHour());
-                if (hourlyByPrimaryKey != null && hourlyByPrimaryKey.getAdvertiserId() != null) {
-                    UpdateWrapper<ByteDanceAdvertiseHourlyReport> updateWrapper = new UpdateWrapper<>();
-                    updateWrapper
-                            .eq("advertiser_id", hourlyReport.getAdvertiserId())
-                            .eq("hour", hourlyReport.getHour())
-                            .eq("stat_datetime", hourlyReport.getStatDatetime());
-                    advertiserHourlyService.update(hourlyReport, updateWrapper);
                 } else {
-                    advertiserHourlyService.save(hourlyReport);
-                }
-            } else {
-                // 日报
-                ByteDanceAdvertiseDailyReport dailyReport =
-                        JSONObject.parseObject(data.toJSONString(), ByteDanceAdvertiseDailyReport.class);
-                dailyReport.setAdvertiserId(conditions.getAdvertiserId());
-                dailyReport.setStatDatetime(conditions.getStartDate().replace("-", ""));
-
-                ByteDanceAdvertiseDailyReport byPrimaryKey =
-                        dataMapper.getAdvertiseDailyByPrimaryKey(
-                                dailyReport.getAdvertiserId(),  Integer.parseInt(dailyReport.getStatDatetime()));
-                if (byPrimaryKey != null && byPrimaryKey.getAdvertiserId() != null) {
-                    UpdateWrapper<ByteDanceAdvertiseDailyReport> updateWrapper = new UpdateWrapper<>();
-                    updateWrapper
-                            .eq("advertiser_id", dailyReport.getAdvertiserId())
-                            .eq("stat_datetime", dailyReport.getStatDatetime());
-
-                    advertiserDailyService.update(dailyReport, updateWrapper);
-                } else {
-                    advertiserDailyService.save(dailyReport);
+                    // 日报
+                    BytedanceAdvertiserReportDaily dailyReport =
+                            JSONObject.parseObject(data.toJSONString(), BytedanceAdvertiserReportDaily.class);
+                    dailyReport.setAdvertiserId(conditions.getAdvertiserId());
+                    dailyReport.setStatDatetime(conditions.getStartDate().replace("-", ""));
+                    dailyList.add(dailyReport);
                 }
             }
+            if (hourlyList.size() > 0) {
+                bytedanceAdvertiserReportHourlyMapper.insert(hourlyList);
+            }
+            if (dailyList.size() > 0) {
+                bytedanceAdvertiserReportDailyMapper.insert(dailyList);
+            }
+        } catch (Exception e) {
+            log.info("获取广告主数据错误:{}", e.toString());
         }
         page++;
         int totalPage =
@@ -366,9 +382,7 @@ public class ByteDanceAdvertiserDataServiceImpl implements IByteDanceAdvertiserD
             } else {
                 param.put("date_type", "daily");
             }
-
-            String s = HttpUtils.httpPostRequest(urlPath, param, null);
-            log.info("调用接口成功");
+            HttpUtils.httpPostRequest(urlPath, param, null);
         }
     }
 
@@ -417,6 +431,7 @@ public class ByteDanceAdvertiserDataServiceImpl implements IByteDanceAdvertiserD
      * 获取代理商
      */
     private void getAgentReportByPage(OauthToken token, JSONObject conditions, Integer page) {
+        log.info("获取代理商数据 accountID:{},page:{}", token.getAccountId(), page);
         SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH");
         String hour = simpleDateFormat.format(new Date());
         String nowDate = DateUtils.getNowDate("yyyyMMdd");
@@ -439,56 +454,38 @@ public class ByteDanceAdvertiserDataServiceImpl implements IByteDanceAdvertiserD
         if (null == dataArray || dataArray.isEmpty()) {
             return;
         }
-
-        for (int i = 0; i < dataArray.size(); i++) {
-            JSONObject data = dataArray.getJSONObject(i);
-            if (null != conditions.get("timeGranularity")
-                    && conditions
-                    .get("timeGranularity")
-                    .equals(CtopAdConstant.BYTEDANCE_REPORT_TYPE_HOURLY)) {
-                // 时报
-                BytedanceAgentReportHourly hourlyReport =
-                        JSONObject.parseObject(data.toJSONString(), BytedanceAgentReportHourly.class);
-                hourlyReport.setStatDatetime(nowDate);
-                hourlyReport.setHour(Integer.parseInt(hour));
-                BytedanceAgentReportHourly hourlyByPrimaryKey =
-                        dataMapper.getAgentHourlyByPrimaryKey(
-                                hourlyReport.getAdvertiserId(),
-                                hourlyReport.getAgentId(),
-                                hourlyReport.getStatDatetime(),
-                                hourlyReport.getHour());
-                if (hourlyByPrimaryKey != null && hourlyByPrimaryKey.getAdvertiserId() != null) {
-                    UpdateWrapper<BytedanceAgentReportHourly> updateWrapper = new UpdateWrapper<>();
-                    updateWrapper
-                            .eq("advertiser_id", hourlyReport.getAdvertiserId())
-                            .eq("agent_id", hourlyReport.getAgentId())
-                            .eq("hour", hourlyReport.getHour())
-                            .eq("stat_datetime", hourlyReport.getStatDatetime());
-                    agentHourlyService.update(hourlyReport, updateWrapper);
+        List<BytedanceAgentReportHourly> hourlyList = new ArrayList<>();
+        List<BytedanceAgentReportDaily> dailyList = new ArrayList<>();
+        try {
+            for (int i = 0; i < dataArray.size(); i++) {
+                JSONObject data = dataArray.getJSONObject(i);
+                if (null != conditions.get("timeGranularity")
+                        && conditions
+                        .get("timeGranularity")
+                        .equals(CtopAdConstant.BYTEDANCE_REPORT_TYPE_HOURLY)) {
+                    // 时报
+                    BytedanceAgentReportHourly hourlyReport =
+                            JSONObject.parseObject(data.toJSONString(), BytedanceAgentReportHourly.class);
+                    hourlyReport.setStatDatetime(nowDate);
+                    hourlyReport.setHour(Integer.parseInt(hour));
+                    hourlyList.add(hourlyReport);
                 } else {
-                    agentHourlyService.save(hourlyReport);
-                }
-            } else {
-                // 日报
-                BytedanceAgentReportDaily dailyReport =
-                        JSONObject.parseObject(data.toJSONString(), BytedanceAgentReportDaily.class);
-                dailyReport.setStatDatetime(((String) conditions.get("start_date")).replace("-", ""));
-                BytedanceAgentReportDaily byPrimaryKey =
-                        dataMapper.getAgentDailyByPrimaryKey(
-                                dailyReport.getAdvertiserId(),
-                                dailyReport.getAgentId(),
-                                Integer.parseInt(dailyReport.getStatDatetime()));
-                if (byPrimaryKey != null && byPrimaryKey.getAdvertiserId() != null) {
-                    UpdateWrapper<BytedanceAgentReportDaily> updateWrapper = new UpdateWrapper<>();
-                    updateWrapper
-                            .eq("advertiser_id", dailyReport.getAdvertiserId())
-                            .eq("agent_id", dailyReport.getAgentId())
-                            .eq("stat_datetime", dailyReport.getStatDatetime());
-                    agentDailyService.update(dailyReport, updateWrapper);
-                } else {
-                    agentDailyService.save(dailyReport);
+                    // 日报
+                    BytedanceAgentReportDaily dailyReport =
+                            JSONObject.parseObject(data.toJSONString(), BytedanceAgentReportDaily.class);
+                    dailyReport.setStatDatetime(((String) conditions.get("start_date")).replace("-", ""));
+                    dailyList.add(dailyReport);
                 }
             }
+            if (hourlyList.size() > 0) {
+                bytedanceAgentReportHourlyMapper.insert(hourlyList);
+            }
+            if (dailyList.size() > 0) {
+                bytedanceAgentReportDailyMapper.insert(dailyList);
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+            log.info("获取代理商数据错误:{}", e.toString());
         }
         page++;
         int totalPage =

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceAgentReportDailyServiceImpl.java

@@ -15,6 +15,6 @@ import org.springframework.stereotype.Service;
  * @version V1.0
  */
 @Service
-public class BytedanceAgentReportDailyServiceImpl extends ServiceImpl<BytedanceAgentReportDailyMapper, BytedanceAgentReportDaily> implements IBytedanceAgentReportDailyService {
+public class BytedanceAgentReportDailyServiceImpl  implements IBytedanceAgentReportDailyService {
 
 }

+ 1 - 1
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceAgentReportHourlyServiceImpl.java

@@ -14,6 +14,6 @@ import org.springframework.stereotype.Service;
  * @version V1.0
  */
 @Service
-public class BytedanceAgentReportHourlyServiceImpl extends ServiceImpl<BytedanceAgentReportHourlyMapper, BytedanceAgentReportHourly> implements IBytedanceAgentReportHourlyService {
+public class BytedanceAgentReportHourlyServiceImpl  implements IBytedanceAgentReportHourlyService {
 
 }

+ 15 - 20
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceAudiencePackageGetServiceImpl.java

@@ -4,7 +4,6 @@ import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceAudiencePackageGet;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
 import cn.com.ctop.job.bytedance.data.mapper.BytedanceAudiencePackageGetMapper;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
 import cn.com.ctop.job.bytedance.data.service.IBytedanceAudiencePackageGetService;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
 import com.alibaba.fastjson.JSON;
@@ -12,13 +11,15 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.PropertyNamingStrategy;
 import com.alibaba.fastjson.serializer.SerializeConfig;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.xxl.job.core.context.XxlJobHelper;
-import org.springframework.beans.factory.annotation.Autowired;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 获取定向包
  *
@@ -27,13 +28,13 @@ import org.springframework.stereotype.Service;
  * @version V1.0
  */
 @Service
-public class BytedanceAudiencePackageGetServiceImpl extends ServiceImpl<BytedanceAudiencePackageGetMapper, BytedanceAudiencePackageGet> implements IBytedanceAudiencePackageGetService {
+@Slf4j
+public class BytedanceAudiencePackageGetServiceImpl implements IBytedanceAudiencePackageGetService {
     @Value("${api.bytedance.api-prefix}")
     private String bytedanceApiUrl;
 
-    @Autowired
-    DataMapper dataMapper;
-
+    @Resource
+    BytedanceAudiencePackageGetMapper bytedanceAudiencePackageGetMapper;
 
 
     /**
@@ -51,39 +52,33 @@ public class BytedanceAudiencePackageGetServiceImpl extends ServiceImpl<Bytedanc
      * 获取定向包
      */
     private void getAudiencePackageGetReportByPage(OauthToken token, JSONObject conditions, Integer page) {
+        log.info("开始获取定向包数据 accountId:{},page:{}", token.getAccountId(), page);
         conditions.put("page", page);
         SerializeConfig config = new SerializeConfig();
         config.propertyNamingStrategy = PropertyNamingStrategy.SnakeCase;
         JSONObject jsonObject = JSONObject.parseObject(JSON.toJSONString(conditions, config));
         JSONObject getObject = getAudiencePackageGetStat(token, jsonObject);
         if (null == getObject) {
-            XxlJobHelper.log("头条代理商数据获取异常");
+            XxlJobHelper.log("头条定向包数据获取异常");
             return;
         }
         Integer code = getObject.getInteger("code");
         String message = getObject.getString("message");
         if (null == code || code != 0) {
-            XxlJobHelper.log("头条代理商数据获取异常:{}", message);
+            XxlJobHelper.log("头条定向包数据获取异常:{}", message);
             return;
         }
         JSONArray dataArray = getObject.getJSONObject("data").getJSONArray("audience_packages");
         if (null == dataArray || dataArray.isEmpty()) {
             return;
         }
-
+        List<BytedanceAudiencePackageGet> list = new ArrayList<>();
         for (int i = 0; i < dataArray.size(); i++) {
             JSONObject data = dataArray.getJSONObject(i);
             BytedanceAudiencePackageGet report = JSONObject.parseObject(data.toJSONString(), BytedanceAudiencePackageGet.class);
-            BytedanceAudiencePackageGet audiencePackageByPrimaryKey = dataMapper.getAudiencePackageByPrimaryKey(report.getAdvertiserId(), report.getAudiencePackageId());
-            if (audiencePackageByPrimaryKey != null && audiencePackageByPrimaryKey.getAdvertiserId() != null) {
-                UpdateWrapper<BytedanceAudiencePackageGet> updateWrapper = new UpdateWrapper<>();
-                updateWrapper.eq("advertiser_id", report.getAdvertiserId())
-                        .eq("audience_package_id", report.getAudiencePackageId());
-                this.update(report, updateWrapper);
-            } else {
-                this.save(report);
-            }
+            list.add(report);
         }
+        bytedanceAudiencePackageGetMapper.insert(list);
         page++;
         int totalPage = getObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
         if (page <= totalPage) {

+ 11 - 19
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCampaignGetServiceImpl.java

@@ -4,18 +4,18 @@ import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignGet;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
 import cn.com.ctop.job.bytedance.data.mapper.BytedanceCampaignGetMapper;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
 import cn.com.ctop.job.bytedance.data.service.IBytedanceCampaignGetService;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 获取定向包
  *
@@ -25,15 +25,15 @@ import org.springframework.stereotype.Service;
  */
 @Service
 @Slf4j
-public class BytedanceCampaignGetServiceImpl extends ServiceImpl<BytedanceCampaignGetMapper, BytedanceCampaignGet> implements IBytedanceCampaignGetService {
+public class BytedanceCampaignGetServiceImpl implements IBytedanceCampaignGetService {
     @Value("${api.bytedance.api-prefix}")
     private String bytedanceApiUrl;
-    @Autowired
-    DataMapper dataMapper;
+    @Resource
+    BytedanceCampaignGetMapper bytedanceCampaignGetMapper;
 
     @Override
     public void getCampaignData(OauthToken oauthToken, int pageNumber, int pageSize) {
-
+        log.info("开始获取广告组全量数据 accountIDL{},page:{}",oauthToken.getAccountId(),pageNumber);
         // 请求地址
         String url = bytedanceApiUrl + BytedanceConstant.BYTEDANCE_V2_CAMPAIGN_GET;
         JSONObject param = new JSONObject();
@@ -51,24 +51,16 @@ public class BytedanceCampaignGetServiceImpl extends ServiceImpl<BytedanceCampai
         if (null == data || data.isEmpty()) {
             return;
         }
-
+        List<BytedanceCampaignGet> list = new ArrayList<>();
         for (int i = 0; i < data.size(); i++) {
             JSONObject dataObject = data.getJSONObject(i);
             BytedanceCampaignGet report = JSONObject.parseObject(dataObject.toJSONString(), BytedanceCampaignGet.class);
             report.setAdvertiserId(oauthToken.getAccountId());
             report.setCampaignId((Long) dataObject.get("id"));
             report.setCampaignName((String) dataObject.get("name"));
-            BytedanceCampaignGet campaignByPrimaryKey = dataMapper.getCampaignByPrimaryKey(report.getAdvertiserId(), report.getCampaignId());
-            if (campaignByPrimaryKey != null && campaignByPrimaryKey.getAdvertiserId() != null) {
-                UpdateWrapper<BytedanceCampaignGet> updateWrapper = new UpdateWrapper<>();
-                updateWrapper.eq("advertiser_id", report.getAdvertiserId())
-                        .eq("campaign_id", report.getCampaignId());
-                this.update(report, updateWrapper);
-            } else {
-                this.save(report);
-            }
-
+            list.add(report);
         }
+        bytedanceCampaignGetMapper.insert(list);
         pageNumber++;
         int totalPage = resultObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
         if (pageNumber <= totalPage) {

+ 12 - 19
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCampaignReportDailyServiceImpl.java

@@ -4,18 +4,18 @@ import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportDaily;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
 import cn.com.ctop.job.bytedance.data.mapper.BytedanceCampaignReportDailyMapper;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
 import cn.com.ctop.job.bytedance.data.service.IBytedanceCampaignReportDailyService;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 获取定向包
  *
@@ -25,14 +25,15 @@ import org.springframework.stereotype.Service;
  */
 @Service
 @Slf4j
-public class BytedanceCampaignReportDailyServiceImpl extends ServiceImpl<BytedanceCampaignReportDailyMapper, BytedanceCampaignReportDaily> implements IBytedanceCampaignReportDailyService {
+public class BytedanceCampaignReportDailyServiceImpl implements IBytedanceCampaignReportDailyService {
     @Value("${api.bytedance.api-prefix}")
     private String bytedanceApiUrl;
-    @Autowired
-    DataMapper dataMapper;
+    @Resource
+    BytedanceCampaignReportDailyMapper bytedanceCampaignReportDailyMapper;
 
     @Override
     public void getCampaignDailyReport(OauthToken oauthToken, String yesterda, String yesterda1, String bytedanceReportTypeDaily, int pageNumber, int pageSize) {
+        log.info("开始获取广告组日报数据 accountID:{},page:{}",oauthToken.getAccountId(),pageNumber);
         // 请求地址
         String url = bytedanceApiUrl + BytedanceConstant.BYTEDANCE_V2_REPORT_CAMPAIGN_GET;
         ;
@@ -59,7 +60,7 @@ public class BytedanceCampaignReportDailyServiceImpl extends ServiceImpl<Bytedan
         if (null == data || data.isEmpty()) {
             return;
         }
-
+        List<BytedanceCampaignReportDaily> list = new ArrayList<>();
         for (int i = 0; i < data.size(); i++) {
             JSONObject dataObject = data.getJSONObject(i);
             //时报
@@ -67,19 +68,11 @@ public class BytedanceCampaignReportDailyServiceImpl extends ServiceImpl<Bytedan
             if (report.getCampaignId() != null) {
                 report.setAdvertiserId(oauthToken.getAccountId());
                 report.setStatDatetime(yesterda.replace("-", ""));
-                BytedanceCampaignReportDaily campaignDailyByPrimaryKey = dataMapper.getCampaignDailyByPrimaryKey(report.getAdvertiserId(), report.getCampaignId(), report.getStatDatetime());
-                if (campaignDailyByPrimaryKey != null && campaignDailyByPrimaryKey.getAdvertiserId() != null) {
-                    UpdateWrapper<BytedanceCampaignReportDaily> updateWrapper = new UpdateWrapper<>();
-                    updateWrapper.eq("advertiser_id", report.getAdvertiserId())
-                            .eq("campaign_id", report.getCampaignId());
-                    this.update(report, updateWrapper);
-                } else {
-                    this.save(report);
-                }
-            }
-
 
+            }
+            list.add(report);
         }
+        bytedanceCampaignReportDailyMapper.insert(list);
         pageNumber++;
         int totalPage = resultObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
         if (pageNumber <= totalPage) {

+ 11 - 19
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCampaignReportHourlyServiceImpl.java

@@ -4,18 +4,18 @@ import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCampaignReportHourly;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
 import cn.com.ctop.job.bytedance.data.mapper.BytedanceCampaignReportHourlyMapper;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
 import cn.com.ctop.job.bytedance.data.service.IBytedanceCampaignReportHourlyService;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 获取定向包
  *
@@ -25,14 +25,15 @@ import org.springframework.stereotype.Service;
  */
 @Service
 @Slf4j
-public class BytedanceCampaignReportHourlyServiceImpl extends ServiceImpl<BytedanceCampaignReportHourlyMapper, BytedanceCampaignReportHourly> implements IBytedanceCampaignReportHourlyService {
+public class BytedanceCampaignReportHourlyServiceImpl implements IBytedanceCampaignReportHourlyService {
     @Value("${api.bytedance.api-prefix}")
     private String bytedanceApiUrl;
-    @Autowired
-    DataMapper dataMapper;
+    @Resource
+    BytedanceCampaignReportHourlyMapper bytedanceCampaignReportHourlyMapper;
 
     @Override
     public void getCampaignHourlyReport(OauthToken oauthToken, String yesterda, String yesterda1, String bytedanceReportTypeDaily, int pageNumber, int pageSize) {
+        log.info("开始获取广告组时报数据 accountID:{},page:{}",oauthToken.getAccountId(),pageNumber);
         // 请求地址
         String url = bytedanceApiUrl + BytedanceConstant.BYTEDANCE_V2_REPORT_CAMPAIGN_GET;
         ;
@@ -58,7 +59,7 @@ public class BytedanceCampaignReportHourlyServiceImpl extends ServiceImpl<Byteda
         if (null == data || data.isEmpty()) {
             return;
         }
-
+        List<BytedanceCampaignReportHourly> list = new ArrayList<>();
         for (int i = 0; i < data.size(); i++) {
             JSONObject dataObject = data.getJSONObject(i);
             //时报
@@ -67,18 +68,9 @@ public class BytedanceCampaignReportHourlyServiceImpl extends ServiceImpl<Byteda
             String hour = report.getStatDatetime().substring(11, 13);
             report.setStatDatetime(yesterda.replace("-", ""));
             report.setHour(Integer.parseInt(hour));
-            report.setStatDatetime(yesterda.replace("-", ""));
-            BytedanceCampaignReportHourly campaignHourlyByPrimaryKey = dataMapper.getCampaignHourlyByPrimaryKey(report.getAdvertiserId(), report.getCampaignId(), report.getStatDatetime(), report.getHour());
-            if (campaignHourlyByPrimaryKey != null && campaignHourlyByPrimaryKey.getAdvertiserId() != null) {
-                UpdateWrapper<BytedanceCampaignReportHourly> updateWrapper = new UpdateWrapper<>();
-                updateWrapper.eq("advertiser_id", report.getAdvertiserId())
-                        .eq("campaign_id", report.getCampaignId());
-                this.update(report, updateWrapper);
-            } else {
-                this.save(report);
-            }
-
+            list.add(report);
         }
+        bytedanceCampaignReportHourlyMapper.insert(list);
         pageNumber++;
         int totalPage = resultObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
         if (pageNumber <= totalPage) {

+ 11 - 20
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCreativeGetServiceImpl.java

@@ -4,18 +4,18 @@ import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeGet;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
 import cn.com.ctop.job.bytedance.data.mapper.BytedanceCreativeGetMapper;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
 import cn.com.ctop.job.bytedance.data.service.IBytedanceCreativeGetService;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 创意信息
  *
@@ -25,14 +25,15 @@ import org.springframework.stereotype.Service;
  */
 @Service
 @Slf4j
-public class BytedanceCreativeGetServiceImpl extends ServiceImpl<BytedanceCreativeGetMapper, BytedanceCreativeGet> implements IBytedanceCreativeGetService {
+public class BytedanceCreativeGetServiceImpl implements IBytedanceCreativeGetService {
     @Value("${api.bytedance.api-prefix}")
     private String bytedanceApiUrl;
-    @Autowired
-    DataMapper dataMapper;
+    @Resource
+    BytedanceCreativeGetMapper bytedanceCreativeGetMapper;
 
     @Override
     public void getCreativeData(OauthToken oauthToken, int page, int pageSize) {
+        log.info("开始获取创意数据 accountID:{},page:{}", oauthToken.getAccountId(), page);
         // 请求地址
         String url = bytedanceApiUrl + BytedanceConstant.BYTEDANCE_V2_CREATIVE_GET;
         JSONObject param = new JSONObject();
@@ -50,23 +51,13 @@ public class BytedanceCreativeGetServiceImpl extends ServiceImpl<BytedanceCreati
         if (null == data || data.isEmpty()) {
             return;
         }
-
+        List<BytedanceCreativeGet> list = new ArrayList<>();
         for (int i = 0; i < data.size(); i++) {
             JSONObject dataObject = data.getJSONObject(i);
             BytedanceCreativeGet report = JSONObject.parseObject(dataObject.toJSONString(), BytedanceCreativeGet.class);
-
-            BytedanceCreativeGet bytedanceCreativeGet = dataMapper.getCreativeByPrimaryKey(report.getAdvertiserId(), report.getAdId(), report.getCreativeId());
-            if (bytedanceCreativeGet != null && bytedanceCreativeGet.getAdvertiserId() != null) {
-                UpdateWrapper<BytedanceCreativeGet> updateWrapper = new UpdateWrapper<>();
-                updateWrapper.eq("advertiser_id", report.getAdvertiserId())
-                        .eq("ad_id", report.getAdId())
-                        .eq("creative_id", report.getCreativeId());
-                this.update(report, updateWrapper);
-            } else {
-                this.save(report);
-            }
-
+            list.add(report);
         }
+        bytedanceCreativeGetMapper.insert(list);
         page++;
         int totalPage = resultObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
         if (page <= totalPage) {

+ 11 - 20
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCreativeReportDailyServiceImpl.java

@@ -4,18 +4,19 @@ import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeReportDaily;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
 import cn.com.ctop.job.bytedance.data.mapper.BytedanceCreativeReportDailyMapper;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
 import cn.com.ctop.job.bytedance.data.service.IBytedanceCreativeReportDailyService;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 广告创意
  *
@@ -25,14 +26,15 @@ import org.springframework.stereotype.Service;
  */
 @Service
 @Slf4j
-public class BytedanceCreativeReportDailyServiceImpl extends ServiceImpl<BytedanceCreativeReportDailyMapper, BytedanceCreativeReportDaily> implements IBytedanceCreativeReportDailyService {
+public class BytedanceCreativeReportDailyServiceImpl implements IBytedanceCreativeReportDailyService {
     @Value("${api.bytedance.api-prefix}")
     private String bytedanceApiUrl;
-    @Autowired
-    DataMapper dataMapper;
+    @Resource
+    BytedanceCreativeReportDailyMapper bytedanceCreativeReportDailyMapper;
 
     @Override
     public void getCreativeDailyReport(OauthToken oauthToken, String yesterda, String yesterda1, String bytedanceReportTypeDaily, int pageNumber, int pageSize) {
+        log.info("开始获取创意日报数据 accountID:{},page:{}", oauthToken.getAccountId(), pageNumber);
         // 请求地址
         String url = bytedanceApiUrl + BytedanceConstant.BYTEDANCE_V2_REPORT_CREATIVE_GET;
         ;
@@ -59,7 +61,7 @@ public class BytedanceCreativeReportDailyServiceImpl extends ServiceImpl<Bytedan
         if (null == data || data.isEmpty()) {
             return;
         }
-
+        List<BytedanceCreativeReportDaily> list = new ArrayList<>();
         for (int i = 0; i < data.size(); i++) {
             JSONObject dataObject = data.getJSONObject(i);
             //时报
@@ -67,20 +69,9 @@ public class BytedanceCreativeReportDailyServiceImpl extends ServiceImpl<Bytedan
 
             report.setAdvertiserId(oauthToken.getAccountId());
             report.setStatDatetime(yesterda.replace("-", ""));
-            BytedanceCreativeReportDaily creativeReportDaily = dataMapper.getCreativeDailyByPrimaryKey(report.getAdvertiserId(), report.getCampaignId(), report.getAdId(), report.getCreativeId(), report.getStatDatetime());
-            if (creativeReportDaily != null && creativeReportDaily.getAdvertiserId() != null) {
-                UpdateWrapper<BytedanceCreativeReportDaily> updateWrapper = new UpdateWrapper<>();
-                updateWrapper.eq("advertiser_id", report.getAdvertiserId())
-                        .eq("campaign_id", report.getCampaignId())
-                        .eq("ad_id", report.getAdId())
-                        .eq("creative_id", report.getCreativeId())
-                        .eq("stat_datetime", report.getStatDatetime());
-                this.update(report, updateWrapper);
-            } else {
-                this.save(report);
-            }
-
+            list.add(report);
         }
+        bytedanceCreativeReportDailyMapper.insert(list);
         pageNumber++;
         int totalPage = resultObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
         if (pageNumber <= totalPage) {

+ 11 - 23
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceCreativeReportHourlyServiceImpl.java

@@ -4,18 +4,18 @@ import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceCreativeReportHourly;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
 import cn.com.ctop.job.bytedance.data.mapper.BytedanceCreativeReportHourlyMapper;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
 import cn.com.ctop.job.bytedance.data.service.IBytedanceCreativeReportHourlyService;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 广告创意
  *
@@ -25,17 +25,17 @@ import org.springframework.stereotype.Service;
  */
 @Service
 @Slf4j
-public class BytedanceCreativeReportHourlyServiceImpl extends ServiceImpl<BytedanceCreativeReportHourlyMapper, BytedanceCreativeReportHourly> implements IBytedanceCreativeReportHourlyService {
+public class BytedanceCreativeReportHourlyServiceImpl implements IBytedanceCreativeReportHourlyService {
     @Value("${api.bytedance.api-prefix}")
     private String bytedanceApiUrl;
-    @Autowired
-    DataMapper dataMapper;
+    @Resource
+    BytedanceCreativeReportHourlyMapper bytedanceCreativeReportHourlyMapper;
 
     @Override
     public void getCampaignHourlyReport(OauthToken oauthToken, String yesterda, String yesterda1, String bytedanceReportTypeHourly, int pageNumber, int pageSize) {
+        log.info("开始获取创意时报数据 accountID:{},page:{}", oauthToken.getAccountId(), pageNumber);
         // 请求地址
         String url = bytedanceApiUrl + BytedanceConstant.BYTEDANCE_V2_REPORT_CREATIVE_GET;
-        ;
         JSONObject param = new JSONObject();
         param.put("advertiser_id", oauthToken.getAccountId());
         param.put("start_date", yesterda);
@@ -59,7 +59,7 @@ public class BytedanceCreativeReportHourlyServiceImpl extends ServiceImpl<Byteda
         if (null == data || data.isEmpty()) {
             return;
         }
-
+        List<BytedanceCreativeReportHourly> list = new ArrayList<>();
         for (int i = 0; i < data.size(); i++) {
             JSONObject dataObject = data.getJSONObject(i);
             //时报
@@ -68,21 +68,9 @@ public class BytedanceCreativeReportHourlyServiceImpl extends ServiceImpl<Byteda
             report.setHour(Integer.parseInt(hour));
             report.setAdvertiserId(oauthToken.getAccountId());
             report.setStatDatetime(yesterda.replace("-", ""));
-            BytedanceCreativeReportHourly creativeReportHourly = dataMapper.getCreativeHourlyByPrimaryKey(report.getAdvertiserId(), report.getCampaignId(), report.getAdId(), report.getCreativeId(), report.getStatDatetime(), report.getHour());
-            if (creativeReportHourly != null && creativeReportHourly.getAdvertiserId() != null) {
-                UpdateWrapper<BytedanceCreativeReportHourly> updateWrapper = new UpdateWrapper<>();
-                updateWrapper.eq("advertiser_id", report.getAdvertiserId())
-                        .eq("campaign_id", report.getCampaignId())
-                        .eq("ad_id", report.getAdId())
-                        .eq("creative_id", report.getCreativeId())
-                        .eq("hour", report.getHour())
-                        .eq("stat_datetime", report.getStatDatetime());
-                this.update(report, updateWrapper);
-            } else {
-                this.save(report);
-            }
-
+            list.add(report);
         }
+        bytedanceCreativeReportHourlyMapper.insert(list);
         pageNumber++;
         int totalPage = resultObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
         if (pageNumber <= totalPage) {

+ 16 - 25
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceFileImageGetServiceImpl.java

@@ -4,18 +4,18 @@ import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceFileImageGet;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
 import cn.com.ctop.job.bytedance.data.mapper.BytedanceFileImageGetMapper;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
 import cn.com.ctop.job.bytedance.data.service.IBytedanceFileImageGetService;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 头条图片素材
  *
@@ -25,14 +25,15 @@ import org.springframework.stereotype.Service;
  */
 @Service
 @Slf4j
-public class BytedanceFileImageGetServiceImpl extends ServiceImpl<BytedanceFileImageGetMapper, BytedanceFileImageGet> implements IBytedanceFileImageGetService {
+public class BytedanceFileImageGetServiceImpl implements IBytedanceFileImageGetService {
     @Value("${api.bytedance.api-prefix}")
     private String bytedanceApiUrl;
-    @Autowired
-    DataMapper dataMapper;
+    @Resource
+    BytedanceFileImageGetMapper bytedanceFileImageGetMapper;
 
     @Override
     public void getFileImageData(OauthToken oauthToken, int page, int pageSize) {
+        log.info("开始获取图片素材 accountID:{},page:{}", oauthToken.getAccountId(), page);
         // 请求地址
         String url = bytedanceApiUrl + BytedanceConstant.BYTEDANCE_V2_FILE_IMAGE_GET;
         JSONObject param = new JSONObject();
@@ -50,33 +51,23 @@ public class BytedanceFileImageGetServiceImpl extends ServiceImpl<BytedanceFileI
         if (null == data || data.isEmpty()) {
             return;
         }
-
+        List<BytedanceFileImageGet> list = new ArrayList<>();
         for (int i = 0; i < data.size(); i++) {
             JSONObject dataObject = data.getJSONObject(i);
             try {
                 BytedanceFileImageGet report = JSONObject.parseObject(dataObject.toJSONString(), BytedanceFileImageGet.class);
                 report.setAdvertiserId(oauthToken.getAccountId());
-                if(null!=report.getId()&&report.getId().contains("web")){
-                    report.setImageUrl("https://sf6-ttcdn-tos.pstatp.com/obj/"+report.getId()) ;
-                }else{
-                    report.setImageUrl("https://sf6-ttcdn-tos.pstatp.com/obj/mosaic-legacy/"+report.getId()) ;
-                }
-                BytedanceFileImageGet bytedanceCreativeGet = dataMapper.getFileImageGetByPrimaryKey(report.getAdvertiserId(), report.getId());
-                if (bytedanceCreativeGet != null && bytedanceCreativeGet.getAdvertiserId() != null) {
-                    UpdateWrapper<BytedanceFileImageGet> updateWrapper = new UpdateWrapper<>();
-                    updateWrapper.eq("advertiser_id", report.getAdvertiserId())
-                            .eq("id", report.getId());
-                    this.update(report, updateWrapper);
+                if (null != report.getId() && report.getId().contains("web")) {
+                    report.setImageUrl("https://sf6-ttcdn-tos.pstatp.com/obj/" + report.getId());
                 } else {
-                    this.save(report);
+                    report.setImageUrl("https://sf6-ttcdn-tos.pstatp.com/obj/mosaic-legacy/" + report.getId());
                 }
-            }catch (Exception e){
-                log.info("错误:{}",e.toString());
+                list.add(report);
+            } catch (Exception e) {
+                log.info("错误:{}", e.toString());
             }
-
-
-
         }
+        bytedanceFileImageGetMapper.insert(list);
         page++;
         int totalPage = resultObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
         if (page <= totalPage) {

+ 19 - 27
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceFileVideoGetServiceImpl.java

@@ -4,18 +4,18 @@ import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceFileVideoGet;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
 import cn.com.ctop.job.bytedance.data.mapper.BytedanceFileVideoGetMapper;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
 import cn.com.ctop.job.bytedance.data.service.IBytedanceFileVideoGetService;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 头条-视频素材
  *
@@ -25,14 +25,15 @@ import org.springframework.stereotype.Service;
  */
 @Service
 @Slf4j
-public class BytedanceFileVideoGetServiceImpl extends ServiceImpl<BytedanceFileVideoGetMapper, BytedanceFileVideoGet> implements IBytedanceFileVideoGetService {
+public class BytedanceFileVideoGetServiceImpl implements IBytedanceFileVideoGetService {
     @Value("${api.bytedance.api-prefix}")
     private String bytedanceApiUrl;
-    @Autowired
-    DataMapper dataMapper;
+    @Resource
+    BytedanceFileVideoGetMapper bytedanceFileVideoGetMapper;
 
     @Override
     public void getFileVideoData(OauthToken oauthToken, int page, int pageSize) {
+        log.info("开始获取视频素材 accountID:{},page:{}", oauthToken.getAccountId(), page);
         // 请求地址
         String url = bytedanceApiUrl + BytedanceConstant.BYTEDANCE_V2_FILE_VIDEO_GET;
         JSONObject param = new JSONObject();
@@ -50,29 +51,20 @@ public class BytedanceFileVideoGetServiceImpl extends ServiceImpl<BytedanceFileV
         if (null == data || data.isEmpty()) {
             return;
         }
-
+        List<BytedanceFileVideoGet> list = new ArrayList<>();
         for (int i = 0; i < data.size(); i++) {
             JSONObject dataObject = data.getJSONObject(i);
-          try {
-              BytedanceFileVideoGet report = JSONObject.parseObject(dataObject.toJSONString(), BytedanceFileVideoGet.class);
-              report.setAdvertiserId(oauthToken.getAccountId());
-
-              BytedanceFileVideoGet bytedanceCreativeGet = dataMapper.getFileVideoGetByPrimaryKey(report.getAdvertiserId(), report.getId());
-
-              report.setVideoUrl("https://aweme.snssdk.com/aweme/v1/playwm/?video_id=" + report.getId() + "&line=0");
-              if (bytedanceCreativeGet != null && bytedanceCreativeGet.getAdvertiserId() != null) {
-                  UpdateWrapper<BytedanceFileVideoGet> updateWrapper = new UpdateWrapper<>();
-                  updateWrapper.eq("advertiser_id", report.getAdvertiserId())
-                          .eq("id", report.getId());
-                  this.update(report, updateWrapper);
-              }  else {
-                  this.save(report);
-              }
-          }catch (Exception e){
-              log.info("错误:{}",e.toString());
-          }
-
+            try {
+                BytedanceFileVideoGet report = JSONObject.parseObject(dataObject.toJSONString(), BytedanceFileVideoGet.class);
+                report.setAdvertiserId(oauthToken.getAccountId());
+                report.setVideoUrl("https://aweme.snssdk.com/aweme/v1/playwm/?video_id=" + report.getId() + "&line=0");
+                list.add(report);
+            } catch (Exception e) {
+                log.info("错误:{}", e.toString());
+            }
         }
+
+        bytedanceFileVideoGetMapper.insert(list);
         page++;
         int totalPage = resultObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
         if (page <= totalPage) {

+ 16 - 28
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/BytedanceMaterialReportDailyServiceImpl.java

@@ -4,18 +4,18 @@ import cn.com.ctop.job.bytedance.data.constant.BytedanceConstant;
 import cn.com.ctop.job.bytedance.data.entity.BytedanceMaterialReportDaily;
 import cn.com.ctop.job.bytedance.data.entity.OauthToken;
 import cn.com.ctop.job.bytedance.data.mapper.BytedanceMaterialReportDailyMapper;
-import cn.com.ctop.job.bytedance.data.mapper.DataMapper;
 import cn.com.ctop.job.bytedance.data.service.IBytedanceMaterialReportDailyService;
 import cn.com.ctop.job.bytedance.data.utils.HttpUtils;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 图片与视频素材日报
  *
@@ -25,14 +25,15 @@ import org.springframework.stereotype.Service;
  */
 @Service
 @Slf4j
-public class BytedanceMaterialReportDailyServiceImpl extends ServiceImpl<BytedanceMaterialReportDailyMapper, BytedanceMaterialReportDaily> implements IBytedanceMaterialReportDailyService {
+public class BytedanceMaterialReportDailyServiceImpl implements IBytedanceMaterialReportDailyService {
     @Value("${api.bytedance.api-prefix}")
     private String bytedanceApiUrl;
-    @Autowired
-    DataMapper dataMapper;
+    @Resource
+    BytedanceMaterialReportDailyMapper bytedanceMaterialReportDailyMapper;
 
     @Override
     public void bytedanceDailyMaterialReportJob(OauthToken oauthToken, String yesterda, String yesterda1, int page, int pageSize) {
+        log.info("开始获取图片和视频素材日报 accountID:{},page:{}", oauthToken.getAccountId(), page);
         // 请求地址
         String url = bytedanceApiUrl + BytedanceConstant.BYTEDANCE_V2_REPORT_INTEGRATED_GET;
         JSONObject param = new JSONObject();
@@ -54,12 +55,11 @@ public class BytedanceMaterialReportDailyServiceImpl extends ServiceImpl<Bytedan
         if (null == data || data.isEmpty()) {
             return;
         }
-
+        List<BytedanceMaterialReportDaily> list = new ArrayList<>();
         for (int i = 0; i < data.size(); i++) {
             JSONObject dataObject = data.getJSONObject(i);
             JSONObject dimensions = data.getJSONObject(i).getJSONObject("dimensions");
             JSONObject metrics = data.getJSONObject(i).getJSONObject("metrics");
-
             try {
                 BytedanceMaterialReportDaily report = JSONObject.parseObject(metrics.toJSONString(), BytedanceMaterialReportDaily.class);
                 report.setAdvertiserId(oauthToken.getAccountId());
@@ -67,29 +67,17 @@ public class BytedanceMaterialReportDailyServiceImpl extends ServiceImpl<Bytedan
                 report.setImageMode((String) dimensions.get("image_mode"));
                 report.setInventory((String) dimensions.get("inventory"));
                 report.setStatDatetime(yesterda.replace("-", ""));
-                report.setSubmitCertificationCount(dataObject.get("submit_certification_count")==null?null:Integer.parseInt((String) dataObject.get("submit_certification_count")));
-                report.setApprovalCount(dataObject.get("approval_count")==null?null:Integer.parseInt((String) dataObject.get("approval_count")));
-                report.setFirstOrderCount(dataObject.get("first_order_count")==null?null:Integer.parseInt((String) dataObject.get("first_order_count")));
-                report.setFirstRentalOrderCount(dataObject.get("first_rental_order_count")==null?null:Integer.parseInt((String) dataObject.get("first_rental_order_count")));
-                report.setCommuteFirstPayCount(dataObject.get("commute_first_pay_count")==null?null:Integer.parseInt((String) dataObject.get("commute_first_pay_count")));
-                BytedanceMaterialReportDaily materialReport = dataMapper.getMaterialReportByPrimaryKey(report.getAdvertiserId(), report.getMaterialId(), report.getImageMode(), report.getInventory(), report.getStatDatetime());
-                if (materialReport != null && materialReport.getAdvertiserId() != null) {
-                    UpdateWrapper<BytedanceMaterialReportDaily> updateWrapper = new UpdateWrapper<>();
-                    updateWrapper.eq("advertiser_id", report.getAdvertiserId())
-                            .eq("material_id", report.getMaterialId())
-                            .eq("image_mode", report.getImageMode())
-                            .eq("inventory", report.getInventory())
-                            .eq("stat_datetime", report.getStatDatetime());
-                    this.update(report, updateWrapper);
-                } else {
-                    this.save(report);
-                }
+                report.setSubmitCertificationCount(dataObject.get("submit_certification_count") == null ? null : Integer.parseInt((String) dataObject.get("submit_certification_count")));
+                report.setApprovalCount(dataObject.get("approval_count") == null ? null : Integer.parseInt((String) dataObject.get("approval_count")));
+                report.setFirstOrderCount(dataObject.get("first_order_count") == null ? null : Integer.parseInt((String) dataObject.get("first_order_count")));
+                report.setFirstRentalOrderCount(dataObject.get("first_rental_order_count") == null ? null : Integer.parseInt((String) dataObject.get("first_rental_order_count")));
+                report.setCommuteFirstPayCount(dataObject.get("commute_first_pay_count") == null ? null : Integer.parseInt((String) dataObject.get("commute_first_pay_count")));
+                list.add(report);
             } catch (Exception e) {
                 log.info("错误:{}", e.toString());
             }
-
-
         }
+        bytedanceMaterialReportDailyMapper.insert(list);
         page++;
         int totalPage = resultObject.getJSONObject("data").getJSONObject("page_info").getInteger("total_page");
         if (page <= totalPage) {

+ 0 - 21
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/IByteDanceAdvertiseDailyServiceImpl.java

@@ -1,21 +0,0 @@
-package cn.com.ctop.job.bytedance.data.service.impl;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertiseDailyReport;
-import cn.com.ctop.job.bytedance.data.mapper.ByteDanceAdvertiseDailyMapper;
-import cn.com.ctop.job.bytedance.data.service.IByteDanceAdvertiserDailyService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
-
-/**
- * @Description: 今日头条广告主计划信息
- * @Author: jeecg-boot
- * @Date: 2019-07-22
- * @Version: V1.0
- */
-@Slf4j
-@Service
-public class IByteDanceAdvertiseDailyServiceImpl extends ServiceImpl<ByteDanceAdvertiseDailyMapper, ByteDanceAdvertiseDailyReport> implements IByteDanceAdvertiserDailyService {
-
-
-}

+ 0 - 20
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/IByteDanceAdvertiseHourlyServiceImpl.java

@@ -1,20 +0,0 @@
-package cn.com.ctop.job.bytedance.data.service.impl;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertiseHourlyReport;
-import cn.com.ctop.job.bytedance.data.mapper.ByteDanceAdvertiseHourlyMapper;
-import cn.com.ctop.job.bytedance.data.service.IByteDanceAdvertiserHourlyService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
-/**
- * @Description: 今日头条广告主计划信息
- * @Author: jeecg-boot
- * @Date: 2019-07-22
- * @Version: V1.0
- */
-@Slf4j
-@Service
-public class IByteDanceAdvertiseHourlyServiceImpl extends ServiceImpl<ByteDanceAdvertiseHourlyMapper, ByteDanceAdvertiseHourlyReport> implements IByteDanceAdvertiserHourlyService {
-
-
-}

+ 0 - 15
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/IByteDanceAdvertisePlanDailyServiceImpl.java

@@ -1,15 +0,0 @@
-package cn.com.ctop.job.bytedance.data.service.impl;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlanDailyReport;
-import cn.com.ctop.job.bytedance.data.mapper.ByteDanceAdvertisePlanDailyMapper;
-import cn.com.ctop.job.bytedance.data.service.IByteDanceAdvertiserPlanDailyService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
-
-@Slf4j
-@Service
-public class IByteDanceAdvertisePlanDailyServiceImpl extends ServiceImpl<ByteDanceAdvertisePlanDailyMapper, ByteDanceAdvertisePlanDailyReport> implements IByteDanceAdvertiserPlanDailyService {
-
-
-}

+ 0 - 15
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/IByteDanceAdvertisePlanHourlyServiceImpl.java

@@ -1,15 +0,0 @@
-package cn.com.ctop.job.bytedance.data.service.impl;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlanHourlyReport;
-import cn.com.ctop.job.bytedance.data.mapper.ByteDanceAdvertisePlanHourlyMapper;
-import cn.com.ctop.job.bytedance.data.service.IByteDanceAdvertiserPlanHourlyService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
-
-@Slf4j
-@Service
-public class IByteDanceAdvertisePlanHourlyServiceImpl extends ServiceImpl<ByteDanceAdvertisePlanHourlyMapper, ByteDanceAdvertisePlanHourlyReport> implements IByteDanceAdvertiserPlanHourlyService {
-
-
-}

+ 0 - 15
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/data/service/impl/IByteDanceAdvertisePlanServiceImpl.java

@@ -1,15 +0,0 @@
-package cn.com.ctop.job.bytedance.data.service.impl;
-
-import cn.com.ctop.job.bytedance.data.entity.ByteDanceAdvertisePlan;
-import cn.com.ctop.job.bytedance.data.mapper.ByteDanceAdvertisePlanMapper;
-import cn.com.ctop.job.bytedance.data.service.IByteDanceAdvertisePlanService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
-
-@Slf4j
-@Service
-public class IByteDanceAdvertisePlanServiceImpl extends ServiceImpl<ByteDanceAdvertisePlanMapper, ByteDanceAdvertisePlan> implements IByteDanceAdvertisePlanService {
-
-
-}

+ 2 - 2
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/handler/BytedanceAgentLoadJob.java

@@ -34,7 +34,7 @@ public class BytedanceAgentLoadJob {
 
 
     /**
-     * 广告主日报
+     * 代理商日报
      *
      * @throws Exception
      */
@@ -63,7 +63,7 @@ public class BytedanceAgentLoadJob {
     }
 
     /**
-     * 计划时报
+     * 代理商时报
      *
      * @throws Exception
      */

+ 0 - 0
job-bytedance/src/main/java/cn/com/ctop/job/bytedance/handler/BytedanceCampaignLoadJob.java


Some files were not shown because too many files changed in this diff