| 
					
				 | 
			
			
				@@ -3495,4 +3495,88 @@ public class DataDashboardService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @XxlJob("dailyAuditProduceExport") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public ReturnT<String> dailyAuditProduceJob(String param) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<String> dateStrList = DateUtils.getBeforeDays(null, null, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        contentEffectGroupBySource(dateStrList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return ReturnT.SUCCESS; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void dailyAuditProduce(String dateStr) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (!StringUtils.hasText(dateStr)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            dateStr = DateUtils.getBeforeDaysDateStr("yyyyMMdd", 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        dailyAuditProduce(Collections.singletonList(dateStr)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void dailyAuditProduce(List<String> dateStrList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<DailyAuditProduceExport> exportList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        dateStrList = Lists.reverse(dateStrList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (String dateStr : dateStrList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            exportList.addAll(buildDailyAuditProduceExport(dateStr)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (CollectionUtil.isEmpty(exportList)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int rowNum = exportList.size(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<List<Object>> rows = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Field[] fields = DailyAuditProduceExport.class.getDeclaredFields(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (DailyAuditProduceExport datum : exportList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            List<Object> rowDatas = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            rows.add(rowDatas); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (Field field : fields) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                field.setAccessible(true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    rowDatas.add(field.get(datum)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } catch (IllegalAccessException e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    log.error("获取值出错:{}", field.getName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } catch (Exception e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    throw new RuntimeException(e.getMessage()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Pair<String, String>> styles = Arrays 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .asList( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Pair.of("F", "0.00%"), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Pair.of("I", "0.00%") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Pair<String, List<Pair<String, String>>>> thank = Arrays 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .asList( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Pair.of("B", Arrays.asList( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                Pair.of("长文审核", "#BACEFD"), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                Pair.of("文章内容池", "#FED4A4"))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        doSendFeishuSheet(dateStrList, dailyDetailSheetToken, "Lushkl", rowNum, rows, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                3, styles, null, thank); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private List<DailyAuditProduceExport> buildDailyAuditProduceExport(String dateStr) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Long startTimeStamp = DateUtils.getStartOfDay(dateStr, "yyyyMMdd") * 1000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Long endTimeStamp = startTimeStamp + 86400000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<DailyAuditProduceExport> result = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<DailyAuditProduceExport> produceAuditList = aigcBaseMapper.getAccountDailyProduceAuditCount(startTimeStamp, endTimeStamp); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<DailyAuditProduceExport> videoAuditList = longArticleBaseMapper.getAccountDailyVideoAuditCount(startTimeStamp, endTimeStamp); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (DailyAuditProduceExport dailyAuditProduceExport : produceAuditList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            dailyAuditProduceExport.setType("长文审核"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            result.add(dailyAuditProduceExport); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (DailyAuditProduceExport dailyAuditProduceExport : videoAuditList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            dailyAuditProduceExport.setType("文章内容池"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            result.add(dailyAuditProduceExport); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (DailyAuditProduceExport item : result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            item.setDateStr(dateStr); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (item.getAuditCount()!= null && item.getAuditCount()!= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                item.setAuditPassRate((double) item.getAuditPassCount() / item.getAuditCount()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (item.getVideoAuditCount()!= null && item.getVideoAuditCount()!= 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                item.setVideoAuditPassRate((double) item.getVideoAuditPassCount() / item.getVideoAuditCount()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |