| 
					
				 | 
			
			
				@@ -2206,7 +2206,7 @@ public class DataDashboardService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         Pair.of("V", "0.00%") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         doSendFeishuSheet(dateStrList, dailyDetailSheetToken, "qEipyL", rowNum, rows, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                3, styles, null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                4, styles, null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private ContentFunnelExport buildContentFunnelExport(String dateStr) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2295,4 +2295,69 @@ public class DataDashboardService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @XxlJob("contentGroupFunnelExport") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public ReturnT<String> contentGroupFunnelExportJob(String param) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<String> dateStrList = DateUtils.getBeforeDays(null, null, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        contentGroupFunnelExport(dateStrList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return ReturnT.SUCCESS; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void contentGroupFunnelExport(String dateStr) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (!StringUtils.hasText(dateStr)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            dateStr = DateUtils.getBeforeDaysDateStr("yyyyMMdd", 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        contentGroupFunnelExport(Collections.singletonList(dateStr)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public void contentGroupFunnelExport(List<String> dateStrList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<ContentGroupFunnelExport> exportList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        dateStrList = Lists.reverse(dateStrList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (String dateStr : dateStrList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            exportList.addAll(buildContentGroupFunnelExport(dateStr)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (CollectionUtil.isEmpty(exportList)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        int rowNum = exportList.size(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<List<Object>> rows = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Field[] fields = ContentGroupFunnelExport.class.getDeclaredFields(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (ContentGroupFunnelExport 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("H", "0.00%"), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Pair.of("K", "0.00%"), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Pair.of("N", "0.00%"), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Pair.of("O", "0.00%"), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Pair.of("S", "0.00%"), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Pair.of("V", "0.00%"), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Pair.of("W", "0.00%") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        doSendFeishuSheet(dateStrList, dailyDetailSheetToken, "tP33UK", rowNum, rows, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                2, styles, null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private List<ContentGroupFunnelExport> buildContentGroupFunnelExport(String dateStr) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<ContentGroupFunnelExport> result = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Long start = DateUtils.getStartOfDay(dateStr, "yyyyMMdd") * 1000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Long end = start + (24 * 60 * 60 * 1000); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |