| 
					
				 | 
			
			
				@@ -257,7 +257,7 @@ public class XxlJobService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             timeStamp = DateUtils.getStartOfDay(param, "yyyyMMdd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         timeStamp = timeStamp * 1000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        List<String> planIds = Arrays.asList("20241030070010871546586","20240802080355355308981","20240802021606053813696"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<String> planIds = Arrays.asList("20241030070010871546586", "20240802080355355308981", "20240802021606053813696"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<ProducePlan> producePlans = producePlanRepository.findByIdIn(planIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Map<String, String> producePlanMap = producePlans.stream().collect(Collectors.toMap(ProducePlan::getId, ProducePlan::getName)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<ProducePlanAuditCheckDTO> producePlanList = aigcBaseMapper.getColdProducePlanAudit( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -293,6 +293,64 @@ public class XxlJobService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return ReturnT.SUCCESS; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @XxlJob("checkProducePlanAudit") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public ReturnT<String> checkProducePlanAudit(String param) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        long timeStamp = DateUtils.getBeforeDayStart(1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (StringUtils.hasText(param)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            timeStamp = DateUtils.getStartOfDay(param, "yyyyMMdd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        timeStamp = timeStamp * 1000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<String> planIds = Arrays.asList("20240802143345289374071", "20240802171417146947657", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                "20240804003153130851174", "20241030070010871546586", "20240802080355355308981", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                "20240802021606053813696"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<ProducePlan> producePlans = producePlanRepository.findByIdIn(planIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, String> producePlanMap = producePlans.stream().collect(Collectors.toMap(ProducePlan::getId, ProducePlan::getName)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<ProducePlanAuditCheckDTO> producePlanList = aigcBaseMapper.getColdProducePlanAudit( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                timeStamp, timeStamp + 86400000, planIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, List<ProducePlanAuditCheckDTO>> producePlanAuditMap = producePlanList.stream() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .collect(Collectors.groupingBy(ProducePlanAuditCheckDTO::getPlanId)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        JSONArray jsonArray = new JSONArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Integer totalAuditNum = 0, totalAuditPassNum = 0, totalWaitingAuditNum = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (String planId : planIds) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            JSONObject jsonObject = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            List<ProducePlanAuditCheckDTO> auditCheckDTOList = producePlanAuditMap.get(planId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            Integer yesterdayAuditNum = 0, yesterdayAuditPassNum = 0, waitingAuditNum = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (CollectionUtils.isNotEmpty(auditCheckDTOList)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                for (ProducePlanAuditCheckDTO producePlanAuditCheckDTO : auditCheckDTOList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (Objects.equals(producePlanAuditCheckDTO.getAuditStatus(), ProduceContentAuditStatusEnum.waiting.getVal())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        waitingAuditNum = producePlanAuditCheckDTO.getNum(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        totalWaitingAuditNum += waitingAuditNum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } else if (Objects.equals(producePlanAuditCheckDTO.getAuditStatus(), ProduceContentAuditStatusEnum.pass.getVal())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        yesterdayAuditPassNum = producePlanAuditCheckDTO.getNum(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        totalAuditPassNum += yesterdayAuditPassNum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        yesterdayAuditNum += producePlanAuditCheckDTO.getNum(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        totalAuditNum += yesterdayAuditNum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } else if (Objects.equals(producePlanAuditCheckDTO.getAuditStatus(), ProduceContentAuditStatusEnum.reject.getVal())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        yesterdayAuditNum += producePlanAuditCheckDTO.getNum(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        totalAuditNum += yesterdayAuditNum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            jsonObject.put("planId", planId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            jsonObject.put("planName", producePlanMap.get(planId)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            jsonObject.put("yesterdayAuditNum", yesterdayAuditNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            jsonObject.put("yesterdayAuditPassNum", yesterdayAuditPassNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            jsonArray.add(jsonObject); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String alertMsg = "【长文生成计划审核量通知】\n"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (Object o : jsonArray) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            JSONObject jsonObject = JSONObject.parseObject(o.toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            alertMsg += "计划名: " + jsonObject.getString("planName") + "\n"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            alertMsg += "昨日审核数量: " + jsonObject.getInteger("yesterdayAuditNum") + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ",昨日审核通过数量: " + jsonObject.getInteger("yesterdayAuditPassNum") + "\n"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        alertMsg += "------------------------------------\n"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        alertMsg += "昨日总审核数量: " + totalAuditNum + ",总审核通过数量: " + totalAuditPassNum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        log.info("checkProducePlanAudit alertMsg: {}", alertMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        FeishuMessageSender.sendWebHookMessage(FeishuRobotIdEnum.ARTICLE_SAFE_AUDIT.getRobotId(), alertMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return ReturnT.SUCCESS; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @XxlJob("migrateCrawlerRootSourceId") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public ReturnT<String> migrateCrawlerRootSourceId(String param) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         try { 
			 |