wangyunpeng hace 4 semanas
padre
commit
4024921501

+ 6 - 6
api-module/src/main/java/com/tzld/piaoquan/api/controller/contentplatform/ContentPlatformDatastatController.java

@@ -51,24 +51,24 @@ public class ContentPlatformDatastatController {
     @ApiOperation(value = "公众号数据统计同步任务", hidden = true)
     @GetMapping("/job/syncGzhDatastat")
     @JwtIgnore
-    public CommonResponse<String> syncContentPlatformGzhDatastatJob() {
-        job.syncContentPlatformGzhDatastatJob(null);
+    public CommonResponse<String> syncContentPlatformGzhDatastatJob(String dateStr) {
+        job.syncContentPlatformGzhDatastatJob(dateStr);
         return CommonResponse.success();
     }
 
     @ApiOperation(value = "企微数据统计同步任务", hidden = true)
     @GetMapping("/job/syncQwDatastat")
     @JwtIgnore
-    public CommonResponse<String> syncContentPlatformQwDatastatJob() {
-        job.syncContentPlatformQwDatastatJob(null);
+    public CommonResponse<String> syncContentPlatformQwDatastatJob(String dateStr) {
+        job.syncContentPlatformQwDatastatJob(dateStr);
         return CommonResponse.success();
     }
 
     @ApiOperation(value = "企微数据统计总计同步任务", hidden = true)
     @GetMapping("/job/syncQwDatastatTotal")
     @JwtIgnore
-    public CommonResponse<String> syncContentPlatformQwDatastatTotalJob() {
-        job.syncContentPlatformQwDatastatTotalJob(null);
+    public CommonResponse<String> syncContentPlatformQwDatastatTotalJob(String dateStr) {
+        job.syncContentPlatformQwDatastatTotalJob(dateStr);
         return CommonResponse.success();
     }
 

+ 15 - 4
api-module/src/main/java/com/tzld/piaoquan/api/job/ContentPlatformDatastatJob.java

@@ -15,6 +15,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+import org.springframework.util.StringUtils;
 
 import java.math.BigDecimal;
 import java.math.RoundingMode;
@@ -53,6 +54,9 @@ public class ContentPlatformDatastatJob {
     @XxlJob("syncContentPlatformGzhDatastatJob")
     public ReturnT<String> syncContentPlatformGzhDatastatJob(String param) {
         String dt = DateUtil.getBeforeDayDateString("yyyyMMdd");
+        if (StringUtils.hasText(param)) {
+            dt = param;
+        }
         long count = getGzhDatastatCount(dt);
         if (count > 0) {
             return ReturnT.SUCCESS;
@@ -120,10 +124,11 @@ public class ContentPlatformDatastatJob {
                         size += videoList.size();
                     }
                 }
-
-                BigDecimal num = BigDecimal.valueOf(score / size);
-                BigDecimal rounded = num.setScale(2, RoundingMode.HALF_UP);
-                item.setScore(rounded.doubleValue());
+                if (size > 0) {
+                    BigDecimal num = BigDecimal.valueOf(score / size);
+                    BigDecimal rounded = num.setScale(2, RoundingMode.HALF_UP);
+                    item.setScore(rounded.doubleValue());
+                }
                 item.setCreateTimestamp(now);
                 saveList.add(item);
             }
@@ -161,6 +166,9 @@ public class ContentPlatformDatastatJob {
     @XxlJob("syncContentPlatformQwDatastatJob")
     public ReturnT<String> syncContentPlatformQwDatastatJob(String param) {
         String dt = DateUtil.getBeforeDayDateString("yyyyMMdd");
+        if (StringUtils.hasText(param)) {
+            dt = param;
+        }
         List<ContentPlatformQwPlan> qwPlanList = getAllQwPlan();
         if (CollectionUtils.isEmpty(qwPlanList)) {
             return ReturnT.SUCCESS;
@@ -257,6 +265,9 @@ public class ContentPlatformDatastatJob {
     @XxlJob("syncContentPlatformQwDatastatTotalJob")
     public ReturnT<String> syncContentPlatformQwDatastatTotalJob(String param) {
         String dt = DateUtil.getBeforeDayDateString("yyyyMMdd");
+        if (StringUtils.hasText(param)) {
+            dt = param;
+        }
         dataStatMapperExt.deleteQwDatastatTotal(dt);
         Map<String, ContentPlatformQwDataStatTotal> saveMap = new HashMap<>();
         String outSql = String.format("SELECT * FROM loghubods.qw_out_touliu_behavior_total WHERE dt=%s;", dt);