SampleTest.java 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203
  1. package org.jeecg;
  2. import cn.com.ctop.bytedance.service.IReportService;
  3. import cn.com.ctop.common.module.entity.CtopOauthToken;
  4. import cn.com.ctop.common.module.service.ICtopOauthTokenService;
  5. import cn.com.ctop.common.module.service.IFileInfoService;
  6. import cn.com.ctop.common.module.utils.CtopAdConstant;
  7. import cn.com.ctop.common.module.utils.OSSUtils;
  8. import cn.com.ctop.common.module.utils.StringUtils;
  9. import cn.com.ctop.kuaishou.modules.batch.service.IKuaishouInterfaceService;
  10. import cn.com.ctop.toutiao.service.IByteDanceAdvertiserDataService;
  11. import com.alibaba.fastjson.JSONArray;
  12. import com.alibaba.fastjson.JSONObject;
  13. import lombok.extern.slf4j.Slf4j;
  14. import org.jeecg.common.util.DateUtils;
  15. import org.jeecg.modules.ctop.service.ICreateInternalService;
  16. import org.jeecg.modules.demo.mock.MockController;
  17. import org.jeecg.modules.demo.test.mapper.JeecgDemoMapper;
  18. import org.jeecg.modules.demo.test.service.IJeecgDemoService;
  19. import org.jeecg.modules.system.service.ISysDataLogService;
  20. import org.junit.Test;
  21. import org.junit.runner.RunWith;
  22. import org.springframework.beans.factory.annotation.Autowired;
  23. import org.springframework.boot.test.context.SpringBootTest;
  24. import org.springframework.test.context.junit4.SpringRunner;
  25. import javax.annotation.Resource;
  26. import java.io.File;
  27. import java.util.ArrayList;
  28. import java.util.Date;
  29. import java.util.List;
  30. import java.util.Map;
  31. @RunWith(SpringRunner.class)
  32. @SpringBootTest
  33. @Slf4j
  34. public class SampleTest {
  35. @Resource
  36. private JeecgDemoMapper jeecgDemoMapper;
  37. @Resource
  38. private IJeecgDemoService jeecgDemoService;
  39. @Resource
  40. private ISysDataLogService sysDataLogService;
  41. @Resource
  42. private MockController mock;
  43. @Autowired
  44. private ICreateInternalService createInternalService;
  45. @Autowired
  46. private IKuaishouInterfaceService kuaishouInterfaceService;
  47. @Test
  48. public void testLogin() {
  49. Map<String, Object> map = createInternalService.checkAccountPassword("dcd_ad@bytedance.com", "typdDCD@2018");
  50. }
  51. @Autowired
  52. private IReportService reportService;
  53. @Test
  54. public void testJob() {
  55. Date getDate = DateUtils.addDay(new Date(), -1);
  56. //1:查询当日数据
  57. List<CtopOauthToken> tokens = tokenService.getTokenListByType(2 + "");
  58. if (null == tokens || tokens.size() <= 0) {
  59. log.info("定时获取头条数据异常:为获取到可用的token");
  60. return;
  61. }
  62. tokens.forEach(token -> {
  63. //1: 获取广告主信息数据
  64. // kuaishouInterfaceService.getAdvertiserReportDaily(token,getDate);
  65. //2:获取广告计划信息数据
  66. // kuaishouInterfaceService.getAdvertiserCampaignReportDaily(token,getDate);
  67. //3:获取广告组信息数据
  68. // kuaishouInterfaceService.getAdvertiserGroupReportDaily(token,getDate);
  69. //4: 获取广告创意信息数据
  70. // kuaishouInterfaceService.getAdvertiserCreativeReportDaily(token,getDate);
  71. // //1: 获取广告主信息数据
  72. // kuaishouInterfaceService.getAdvertiserReportHourly(token, getDate);
  73. // //2:获取广告计划信息数据
  74. kuaishouInterfaceService.getAdvertiserCampaignReportHourly(token, getDate, getDate);
  75. // //3:获取广告组信息数据
  76. kuaishouInterfaceService.getAdvertiserGroupReportHourly(token, getDate, getDate);
  77. // //4: 获取广告创意信息数据
  78. kuaishouInterfaceService.getAdvertiserCreativeReportHourly(token, getDate, getDate);
  79. });
  80. }
  81. @Test
  82. public void testLoadDate180() {
  83. Date endDate = new Date();
  84. Date hourlyStartDate = DateUtils.addDay(endDate, -7);
  85. Date startDate = DateUtils.addDay(endDate, -170);
  86. // List<CtopOauthToken> bytedanceTokens = tokenService.getTokenListByType(CtopAdConstant.PLATFORM_TYPE_BYTEDANCE);
  87. // if (null != bytedanceTokens && bytedanceTokens.size() > 0) {
  88. // bytedanceTokens.forEach(token -> {
  89. // //1: 获取广告主信息数据
  90. // reportService.getAdvertiserReport(token, startDate, endDate, CtopAdConstant.BYTEDANCE_REPORT_TYPE_DAILY);
  91. // //2:获取广告组信息数据
  92. // reportService.getAdvertiserCampaignReport(token, startDate, endDate, CtopAdConstant.BYTEDANCE_REPORT_TYPE_DAILY);
  93. // //3:获取广告计划信息数据
  94. // reportService.getAdvertiserPlanReport(token, startDate, endDate, CtopAdConstant.BYTEDANCE_REPORT_TYPE_DAILY);
  95. // //4: 获取广告创意信息数据
  96. // reportService.getAdvertiserCreativeReport(token, startDate, endDate, CtopAdConstant.BYTEDANCE_REPORT_TYPE_DAILY);
  97. //
  98. // //1: 获取广告主信息数据
  99. // reportService.getAdvertiserReport(token, hourlyStartDate, endDate, CtopAdConstant.BYTEDANCE_REPORT_TYPE_HOURLY);
  100. // //2:获取广告组信息数据
  101. // reportService.getAdvertiserCampaignReport(token, hourlyStartDate, endDate, CtopAdConstant.BYTEDANCE_REPORT_TYPE_HOURLY);
  102. // //3:获取广告计划信息数据
  103. // reportService.getAdvertiserPlanReport(token, hourlyStartDate, endDate, CtopAdConstant.BYTEDANCE_REPORT_TYPE_HOURLY);
  104. // //4: 获取广告创意信息数据
  105. // reportService.getAdvertiserCreativeReport(token, hourlyStartDate, endDate, CtopAdConstant.BYTEDANCE_REPORT_TYPE_HOURLY);
  106. // });
  107. // }
  108. List<CtopOauthToken> kuaishouTokens = tokenService.getTokenListByType(CtopAdConstant.PLATFORM_TYPE_KUAISHOU);
  109. if (null != kuaishouTokens && kuaishouTokens.size() > 0) {
  110. for (CtopOauthToken token : kuaishouTokens) {
  111. for (int i = 0; i < 7; i++) {
  112. Date getStartDate = DateUtils.addDay(endDate, -i);
  113. //1: 获取广告主信息数据
  114. // kuaishouInterfaceService.getAdvertiserReportHourly(token, getStartDate, getStartDate);
  115. //2:获取广告计划信息数据
  116. // kuaishouInterfaceService.getAdvertiserCampaignReportHourly(token, getStartDate, getStartDate);
  117. //3:获取广告组信息数据
  118. kuaishouInterfaceService.getAdvertiserGroupReportHourly(token, getStartDate, getStartDate);
  119. //4: 获取广告创意信息数据
  120. // kuaishouInterfaceService.getAdvertiserCreativeReportHourly(token, getStartDate, getStartDate);
  121. }
  122. // for (int i = 0; i < 6; i++) {
  123. // Date getStartDate = new Date();
  124. // Date getEndDate = new Date();
  125. // if (i == 0) {
  126. // getStartDate = DateUtils.addDay(endDate, -175 + i * 30);
  127. // getEndDate = DateUtils.addDay(endDate, -150 + i * 30);
  128. // } else {
  129. // getStartDate = DateUtils.addDay(endDate, -180 + i * 30);
  130. // getEndDate = DateUtils.addDay(endDate, -150 + i * 30);
  131. // }
  132. // //1: 获取广告主信息数据
  133. // kuaishouInterfaceService.getAdvertiserReportDaily(token, getStartDate, getEndDate);
  134. // //2:获取广告计划信息数据
  135. // kuaishouInterfaceService.getAdvertiserCampaignReportDaily(token, getStartDate, getEndDate);
  136. // //3:获取广告组信息数据
  137. // kuaishouInterfaceService.getAdvertiserGroupReportDaily(token, getStartDate, getEndDate);
  138. // //4: 获取广告创意信息数据
  139. // kuaishouInterfaceService.getAdvertiserCreativeReportDaily(token, getStartDate, getEndDate);
  140. // }
  141. }
  142. }
  143. }
  144. @Test
  145. public void testFileType() {
  146. File file = new File("D:\\工作文件\\360借条\\快手后台数据-户1.csv");
  147. }
  148. @Test
  149. public void testFileUpload() {
  150. OSSUtils.uploadObject2Oss(new File("D:\\upload\\excel\\template.xlsx"));
  151. }
  152. @Test
  153. public void testNg() {
  154. JSONObject json = new JSONObject();
  155. createInternalService.createInternal(json);
  156. }
  157. @Autowired
  158. private ICtopOauthTokenService tokenService;
  159. @Autowired
  160. private IByteDanceAdvertiserDataService advertiserDataService;
  161. @Autowired
  162. private IFileInfoService fileInfoService;
  163. @Test
  164. public void setJSONFile() {
  165. CtopOauthToken token = tokenService.getOauthTokenByAccountId("93289889842");
  166. JSONObject wordsObject = fileInfoService.getCreativeWord(token, token.getAccountId());
  167. String getTitle = "哈哈{日期}{男人女人}";
  168. JSONArray ids = getCreativeWordIds(getTitle, wordsObject);
  169. }
  170. public JSONArray getCreativeWordIds(String getTitle, JSONObject wordsObject) {
  171. ArrayList<String> wordsString = StringUtils.stringCutFromBrace(getTitle);
  172. JSONArray creativeWords = wordsObject.getJSONArray("creative_word");
  173. JSONArray ids = new JSONArray();
  174. wordsString.forEach(v -> {
  175. creativeWords.forEach(word -> {
  176. JSONObject wordObject = (JSONObject) word;
  177. String name = wordObject.getString("name");
  178. Integer id = wordObject.getInteger("creative_word_id");
  179. if (v.equals(name)) {
  180. ids.add(id);
  181. }
  182. });
  183. });
  184. return ids;
  185. }
  186. }