yumeng преди 1 година
родител
ревизия
6608806b40

+ 16 - 30
jeecg-boot-module-system/src/main/java/org/jeecg/modules/ctop/controller/TestController.java

@@ -176,47 +176,33 @@ public class TestController {
     @GetMapping(value = "/getData")
     public void getDate() throws Exception {
 
-        String nowDate = DateUtils.getNowDate("yyyy-MM-dd");
-        String startDate = DateUtils.getAnotherDay("yyyy-MM-dd", nowDate, -4);
-        String endDate = DateUtils.getAnotherDay("yyyy-MM-dd", nowDate, -1);
-        List<String> days = DateUtils.getDays(startDate, endDate);
-
-        List<JSONObject> cookies = yufuSupplyChainService.getCookie();
+        List<JSONObject> cookies = ikuaishouSupplyChainService.getCookie();
         if (Check.isNull(cookies)) {
-            log.error("cookie数据为空");
             return;
         }
-        JSONArray hourList = KuaishouHourEnum.getHourList();
-        JSONArray minSecList = KuaishouMinSecEnum.getMinSecList();
-        Map<Long, Long> itemMap = activityItemListService.getYufuItemList();
-        for (int z = 0; z < days.size(); z++) {
-            String date = days.get(z);
-            for (int i = 0; i < hourList.size(); i++) {
-                String hour = hourList.getString(i);
-                for (int j = 0; j < minSecList.size(); j++) {
-                    JSONObject minSecJson = minSecList.getJSONObject(j);
-                    String startTime = minSecJson.getString("startTime");
-                    String endTime = minSecJson.getString("endTime");
-                    String start = date + hour + startTime;
-                    String end = date + hour + endTime;
-                    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-                    Long orderCreateTimeStart = sdf.parse(start).getTime();
-                    Long orderCreateTimeEnd = sdf.parse(end).getTime();
-                    for (int p = 0; p < cookies.size(); p++) {
-                        JSONObject cookieJson = cookies.get(p);
-                        String cookie = cookieJson.getString("cookie");
-                        yufuSupplyChainService.getOrderList(cookie, 0, orderCreateTimeStart, orderCreateTimeEnd, itemMap);
 
-                    }
+
+        String date = DateUtils.getNowDate("yyyy-MM-dd");
+        String yesDate = DateUtils.getAnotherDay("yyyy-MM-dd", date, -1);
+
+
+        for (int i = 0; i < cookies.size(); i++) {
+            JSONObject jsonObject = cookies.get(i);
+            String cookie = jsonObject.getString("cookie");
+            List<String> activityKeyWords = ikuaishouSupplyChainService.getActivityKeyWord(yesDate, "ruixuan");
+            if (!Check.isNull(activityKeyWords)) {
+                for (int j = 0; j < activityKeyWords.size(); j++) {
+                    String activityKeyWord = activityKeyWords.get(i);
+                    ikuaishouSupplyChainService.getCcrInfo(cookie, 0, "ruixuan", activityKeyWord);
                 }
+
             }
 
+
         }
     }
 
 
-
-
     @Value("${xxl-job.requestUrl}")
     private String jobUrl;
 

+ 40 - 4
module-job-kuaishou/src/main/java/cn/com/ctop/job/kuaishou/handler/settlementJob.java

@@ -197,10 +197,23 @@ public class settlementJob {
             return;
         }
 
+
+        String date = DateUtils.getNowDate("yyyy-MM-dd");
+        String yesDate = DateUtils.getAnotherDay("yyyy-MM-dd", date, -1);
+
+
         for (int i = 0; i < cookies.size(); i++) {
             JSONObject jsonObject = cookies.get(i);
             String cookie = jsonObject.getString("cookie");
-            ikuaishouSupplyChainService.getCcrInfo(cookie, 0, "ruixuan");
+            List<String> activityKeyWords = ikuaishouSupplyChainService.getActivityKeyWord(yesDate, "ruixuan");
+            if (!Check.isNull(activityKeyWords)) {
+                for (int j = 0; j < activityKeyWords.size(); j++) {
+                    String activityKeyWord = activityKeyWords.get(i);
+                    ikuaishouSupplyChainService.getCcrInfo(cookie, 0, "ruixuan", activityKeyWord);
+                }
+
+            }
+
 
         }
 
@@ -210,7 +223,14 @@ public class settlementJob {
         for (int i = 0; i < mgsCookies.size(); i++) {
             JSONObject jsonObject = mgsCookies.get(i);
             String cookie = jsonObject.getString("cookie");
-            ikuaishouSupplyChainService.getCcrInfo(cookie, 0, "miaogousi");
+            List<String> activityKeyWords = ikuaishouSupplyChainService.getActivityKeyWord(yesDate, "miaogousi");
+            if (!Check.isNull(activityKeyWords)) {
+                for (int j = 0; j < activityKeyWords.size(); j++) {
+                    String activityKeyWord = activityKeyWords.get(i);
+                    ikuaishouSupplyChainService.getCcrInfo(cookie, 0, "miaogousi", activityKeyWord);
+                }
+
+            }
 
         }
 
@@ -219,7 +239,15 @@ public class settlementJob {
         for (int i = 0; i < rocketCookies.size(); i++) {
             JSONObject jsonObject = rocketCookies.get(i);
             String cookie = jsonObject.getString("cookie");
-            ikuaishouSupplyChainService.getCcrInfo(cookie, 0, "rocket");
+            List<String> activityKeyWords = ikuaishouSupplyChainService.getActivityKeyWord(yesDate, "rocket");
+            if (!Check.isNull(activityKeyWords)) {
+                for (int j = 0; j < activityKeyWords.size(); j++) {
+                    String activityKeyWord = activityKeyWords.get(i);
+                    ikuaishouSupplyChainService.getCcrInfo(cookie, 0, "rocket", activityKeyWord);
+
+                }
+
+            }
 
         }
 
@@ -228,7 +256,15 @@ public class settlementJob {
         for (int i = 0; i < yufuCookies.size(); i++) {
             JSONObject jsonObject = yufuCookies.get(i);
             String cookie = jsonObject.getString("cookie");
-            ikuaishouSupplyChainService.getCcrInfo(cookie, 0, "rocket");
+            List<String> activityKeyWords = ikuaishouSupplyChainService.getActivityKeyWord(yesDate, "yufu");
+            if (!Check.isNull(activityKeyWords)) {
+                for (int j = 0; j < activityKeyWords.size(); j++) {
+                    String activityKeyWord = activityKeyWords.get(i);
+                    ikuaishouSupplyChainService.getCcrInfo(cookie, 0, "yufu", activityKeyWord);
+                }
+
+            }
+
 
         }
 

+ 4 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/mapper/KuaishouSupplyChainMapper.java

@@ -63,4 +63,8 @@ public interface KuaishouSupplyChainMapper extends BaseMapper<KuaishouSupplyChai
     void deleteYufuPromoterBindChannelByDate(@Param("date") Long date);
 
     void cleanYufuKuaiShouPromoterBindChannel(@Param("date") Long date);
+
+    void replaceYUfuCcr(@Param("adds") List<JSONObject> adds);
+
+    List<String> getActivityKeyWord(@Param("date") String date, @Param("db") String db);
 }

+ 20 - 0
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/mapper/xml/KuaishouSupplyChainMapper.xml

@@ -153,6 +153,20 @@
         </foreach>
 
     </insert>
+    <insert id="replaceYUfuCcr" >
+        replace into yufu.kuaishou_item_ccr_info(
+        item_id,
+        ccr_value
+        )
+        values
+        <foreach collection="adds" item="add" separator=",">
+            (
+            #{add.itemId},
+            #{add.ccrValue}
+            )
+        </foreach>
+
+    </insert>
     <delete id="deletePromoterBindChannelByDate" parameterType="java.lang.Long">
         delete from ruixuan.promoter_bind_channel_date where stat_date = #{date}
     </delete>
@@ -374,5 +388,11 @@ group by t1.promoter_id;
           AND date_format(t1.create_time, '%Y%m%d') &lt;= #{date}
         GROUP BY t1.promoter_id
     </select>
+    <select id="getActivityKeyWord" resultType="java.lang.String">
+        SELECT activity_id
+        FROM ${db}.kuaishou_supply_chain
+        WHERE stat_date = #{date}
+        GROUP BY activity_id;
+    </select>
 
 </mapper>

+ 3 - 1
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/IKuaishouSupplyChainService.java

@@ -44,7 +44,7 @@ public interface IKuaishouSupplyChainService extends IService<KuaishouSupplyChai
 
     List<JSONObject> getRocketDataList(Long statDate);
 
-    void getCcrInfo(String cookie, Integer offset, String type) throws InterruptedException;
+    void getCcrInfo(String cookie, Integer offset, String type,String activityKeyWord) throws InterruptedException;
 
     List<JSONObject> getMgsCookie();
 
@@ -58,4 +58,6 @@ public interface IKuaishouSupplyChainService extends IService<KuaishouSupplyChai
 
 
     void cleanYufuKuaiShouPromoterBindChannel(Long date);
+
+    List<String> getActivityKeyWord(String yesDate, String ruixuan);
 }

+ 12 - 6
module-kuaishou/src/main/java/cn/com/ctop/kuaishou/modules/batch/service/impl/KuaishouSupplyChainServiceImpl.java

@@ -189,13 +189,14 @@ public class KuaishouSupplyChainServiceImpl extends ServiceImpl<KuaishouSupplyCh
 
 
     @Override
-    public void getCcrInfo(String cookie, Integer offset, String type) throws InterruptedException {
+    public void getCcrInfo(String cookie, Integer offset, String type, String activityKeyWord) throws InterruptedException {
         Thread.sleep(1000);
         Map<String, Object> params = new HashMap<>();
         params.put("filters", "{}");
         params.put("sorter", "{}");
         params.put("baseOrderStatus", 0);
         params.put("limit", 20);
+        params.put("activityKeyWord", activityKeyWord);
         params.put("offset", offset);
         Map<String, String> headers = new HashMap<>();
         headers.put("Cookie", cookie);
@@ -225,10 +226,7 @@ public class KuaishouSupplyChainServiceImpl extends ServiceImpl<KuaishouSupplyCh
                                     log.info("ccr数据为空,团:{},itemId:{}", type, itemId);
                                 }
                             }
-
                         }
-
-
                     }
                 }
 
@@ -244,8 +242,12 @@ public class KuaishouSupplyChainServiceImpl extends ServiceImpl<KuaishouSupplyCh
                     supplyChainMapper.replaceRocketCcr(adds);
                 }
 
+                if ("yufu".equals(type)) {
+                    supplyChainMapper.replaceYUfuCcr(adds);
+                }
+
                 if (adds.size() >= 20) {
-                    getCcrInfo(cookie, offset + 20, type);
+                    getCcrInfo(cookie, offset + 20, type, activityKeyWord);
                 }
             }
         } else {
@@ -286,6 +288,11 @@ public class KuaishouSupplyChainServiceImpl extends ServiceImpl<KuaishouSupplyCh
         supplyChainMapper.cleanYufuKuaiShouPromoterBindChannel(date);
     }
 
+    @Override
+    public List<String> getActivityKeyWord(String yesDate, String db) {
+        return supplyChainMapper.getActivityKeyWord(yesDate, db);
+    }
+
 
     @Override
     public List<JSONObject> getCookie() {
@@ -293,7 +300,6 @@ public class KuaishouSupplyChainServiceImpl extends ServiceImpl<KuaishouSupplyCh
     }
 
 
-
     @Override
     public List<JSONObject> getDataList(Long statDate) {
         return supplyChainMapper.getDataList(statDate);