| 
						
						
							
								
							
						
						
					 | 
					@ -260,10 +260,21 @@ public class ScreenProjectDataServiceImpl extends BaseServiceImpl<ScreenProjectD | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        //库中无数据,范围性删除无意义,只是针对在数据库有历史数据的情况下,保证对同一天进行反
 | 
					 | 
					 | 
					        //库中无数据,范围性删除无意义,只是针对在数据库有历史数据的情况下,保证对同一天进行反
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        //复采集时数不会重复
 | 
					 | 
					 | 
					        //复采集时数不会重复
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					        if(!CollectionUtils.isEmpty(meta)){ | 
					 | 
					 | 
					        if(!CollectionUtils.isEmpty(meta)){ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					            int affectedRows = baseDao.deleteByProjectTimeAndCustomerId(customerId,dateId); | 
					 | 
					 | 
					            int count = baseDao.getProjectCount(customerId, dateId); | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					            while (affectedRows > NumConstant.ZERO) { | 
					 | 
					 | 
					            if (meta.size() < count) { | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					                affectedRows = baseDao.deleteByProjectTimeAndCustomerId(customerId, dateId); | 
					 | 
					 | 
					                //meta的数据量小于表里的数据量,意味着指定部分数据进行重新抽取,只需要删除指定的项目数据即可
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                List<String> projectIds = meta.stream().map(ScreenProjectDataDTO::getProjectId).collect(Collectors.toList()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                List<List<String>> projectPartition = ListUtils.partition(projectIds, NumConstant.FIFTY); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                projectPartition.forEach(part -> { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    baseDao.deleteByProjectIds(customerId, part); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                }); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					            } else { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                int affectedRows = baseDao.deleteByProjectTimeAndCustomerId(customerId,dateId); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                while (affectedRows > NumConstant.ZERO) { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                    affectedRows = baseDao.deleteByProjectTimeAndCustomerId(customerId, dateId); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					                } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            } | 
					 | 
					 | 
					            } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            List<List<ScreenProjectDataDTO>> partition = ListUtils.partition(meta, NumConstant.ONE_HUNDRED); | 
					 | 
					 | 
					            List<List<ScreenProjectDataDTO>> partition = ListUtils.partition(meta, NumConstant.ONE_HUNDRED); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					            partition.forEach(part -> { | 
					 | 
					 | 
					            partition.forEach(part -> { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					                List<ScreenProjectDataEntity> list = ConvertUtils.sourceToTarget(part, ScreenProjectDataEntity.class); | 
					 | 
					 | 
					                List<ScreenProjectDataEntity> list = ConvertUtils.sourceToTarget(part, ScreenProjectDataEntity.class); | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  |