Commit 6f5e861b by huluobin

广告!!!!!

parent 669b9f8d
...@@ -17,7 +17,6 @@ import com.bailuntec.utils.OkHttpUtil; ...@@ -17,7 +17,6 @@ import com.bailuntec.utils.OkHttpUtil;
import com.bailuntec.utils.SessionUtil; import com.bailuntec.utils.SessionUtil;
import com.dangdang.ddframe.job.api.ShardingContext; import com.dangdang.ddframe.job.api.ShardingContext;
import com.dangdang.ddframe.job.api.simple.SimpleJob; import com.dangdang.ddframe.job.api.simple.SimpleJob;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import okhttp3.OkHttpClient; import okhttp3.OkHttpClient;
...@@ -26,7 +25,6 @@ import okhttp3.Response; ...@@ -26,7 +25,6 @@ import okhttp3.Response;
import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.BeanUtils;
import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSession;
import java.io.InputStreamReader;
import java.lang.reflect.Type; import java.lang.reflect.Type;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
...@@ -51,7 +49,7 @@ public class AmazonAdDownloadReportJob implements SimpleJob { ...@@ -51,7 +49,7 @@ public class AmazonAdDownloadReportJob implements SimpleJob {
DcBaseFinanceAmazonAdProductMapper dcBaseFinanceAmazonAdProductMapper = sqlSession.getMapper(DcBaseFinanceAmazonAdProductMapper.class); DcBaseFinanceAmazonAdProductMapper dcBaseFinanceAmazonAdProductMapper = sqlSession.getMapper(DcBaseFinanceAmazonAdProductMapper.class);
//获取15分钟前未下载的报告 注:省略报告状态判断 直接根据时间 //获取15分钟前未下载的报告 注:省略报告状态判断 直接根据时间
List<JobAmazonAdLog> jobAmazonAdLogList = jobAmazonAdLogMapper.selectUnDownload(shardingContext, LocalDateTime.now().minusMinutes(15)); List<JobAmazonAdLog> jobAmazonAdLogList = jobAmazonAdLogMapper.selectUnDownload(shardingContext, LocalDateTime.now());
jobAmazonAdLogList.forEach(jobAmazonAdLog -> { jobAmazonAdLogList.forEach(jobAmazonAdLog -> {
DcBaseCompanyAccount dcBaseCompanyAccount = dcBaseCompanyAccountMapper.selectOneByExample(DcBaseCompanyAccountExample.newAndCreateCriteria() DcBaseCompanyAccount dcBaseCompanyAccount = dcBaseCompanyAccountMapper.selectOneByExample(DcBaseCompanyAccountExample.newAndCreateCriteria()
...@@ -82,7 +80,7 @@ public class AmazonAdDownloadReportJob implements SimpleJob { ...@@ -82,7 +80,7 @@ public class AmazonAdDownloadReportJob implements SimpleJob {
try (GZIPInputStream gzipInputStream = new GZIPInputStream(response.body().byteStream())) { try (GZIPInputStream gzipInputStream = new GZIPInputStream(response.body().byteStream())) {
Type type = new TypeToken<List<AmazonAdProduct>>() { Type type = new TypeToken<List<AmazonAdProduct>>() {
}.getType(); }.getType();
List<AmazonAdProduct> amazonAdProductList = new Gson().fromJson(new InputStreamReader(gzipInputStream), type); List<AmazonAdProduct> amazonAdProductList = JSON.parseObject(gzipInputStream, type);
for (AmazonAdProduct amazonAdProduct : amazonAdProductList) { for (AmazonAdProduct amazonAdProduct : amazonAdProductList) {
if (amazonAdProduct.getCost() != null && BigDecimal.ZERO.compareTo(amazonAdProduct.getCost()) != 0) { if (amazonAdProduct.getCost() != null && BigDecimal.ZERO.compareTo(amazonAdProduct.getCost()) != 0) {
......
...@@ -123,15 +123,18 @@ public class AmazonAdGenerateReportIdJob implements SimpleJob { ...@@ -123,15 +123,18 @@ public class AmazonAdGenerateReportIdJob implements SimpleJob {
} }
//display //display
try { try {
AmazonAdAuth amazonAdAuth = JSON.parseObject(dcBaseCompanyAccount.getAmazonAdAuthJson(), AmazonAdAuth.class); AmazonAdAuth amazonAdAuth = JSON.parseObject(dcBaseCompanyAccount.getAmazonAdAuthJson(), AmazonAdAuth.class);
LocalDateTime reportDate = LocalDateTime.now().minusDays(1).minusHours(12); LocalDateTime reportDate = LocalDateTime.now().minusDays(1).minusHours(12);
// LocalDateTime reportDate = LocalDateTime.of(2020, 9, 1, 0, 0);
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
jsonObject.put("reportDate", reportDate.format(DateTimeFormatter.ofPattern("yyyyMMdd"))); jsonObject.put("reportDate", reportDate.format(DateTimeFormatter.ofPattern("yyyyMMdd")));
jsonObject.put("metrics", "campaignName,campaignId,impressions,adGroupId,adGroupName,asin,sku,adId,clicks,cost,currency,attributedConversions1d,attributedConversions7d,attributedConversions14d,attributedConversions30d,attributedConversions1dSameSKU,attributedConversions7dSameSKU,attributedConversions14dSameSKU,attributedConversions30dSameSKU,attributedUnitsOrdered1d,attributedUnitsOrdered7d,attributedUnitsOrdered14d,attributedUnitsOrdered30d,attributedSales1d,attributedSales7d,attributedSales14d,attributedSales30d,attributedSales1dSameSKU,attributedSales7dSameSKU,attributedSales14dSameSKU,attributedSales30dSameSKU"); jsonObject.put("metrics", "campaignName,campaignId,impressions,adGroupId,adGroupName,asin,sku,adId,clicks,cost,currency,attributedConversions1d,attributedConversions7d,attributedConversions14d,attributedConversions30d,attributedConversions1dSameSKU,attributedConversions7dSameSKU,attributedConversions14dSameSKU,attributedConversions30dSameSKU,attributedUnitsOrdered1d,attributedUnitsOrdered7d,attributedUnitsOrdered14d,attributedUnitsOrdered30d,attributedSales1d,attributedSales7d,attributedSales14d,attributedSales30d,attributedSales1dSameSKU,attributedSales7dSameSKU,attributedSales14dSameSKU,attributedSales30dSameSKU");
; //tactic = "T00020"
jsonObject.put("tactic", "T00020");
MediaType mediaType = MediaType.parse("application/json"); MediaType mediaType = MediaType.parse("application/json");
Response response; Response response;
...@@ -177,6 +180,8 @@ public class AmazonAdGenerateReportIdJob implements SimpleJob { ...@@ -177,6 +180,8 @@ public class AmazonAdGenerateReportIdJob implements SimpleJob {
jobAmazonAdLogMapper.updateByPrimaryKeySelective(jobAmazonAdLog); jobAmazonAdLogMapper.updateByPrimaryKeySelective(jobAmazonAdLog);
} }
log.info("生成报告成功,报告日志:{}", JSON.toJSONString(jobAmazonAdLog));
} else { } else {
log.error(JSON.toJSONString(response)); log.error(JSON.toJSONString(response));
throw new RuntimeException("生成报告失败"); throw new RuntimeException("生成报告失败");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment