| 
					
				 | 
			
			
				@@ -24,6 +24,7 @@ import com.yonge.toolset.base.exception.BizException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yonge.toolset.base.util.StringUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yonge.toolset.payment.util.DistributedLock; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.apache.commons.collections.CollectionUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.redisson.RedissonMultiLock; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.redisson.api.RLock; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.redisson.api.RedissonClient; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -38,6 +39,7 @@ import org.springframework.transaction.annotation.Transactional; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import javax.annotation.Resource; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.stream.Collectors; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 @Service 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -179,6 +181,7 @@ public class ActivityRewardServiceImpl extends ServiceImpl<ActivityRewardDao, Ac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         RedissonMultiLock lock = new RedissonMultiLock(lockList.toArray(new RLock[lockList.size()])); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         List<Long> activityRewardIdList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<String> rewardNameList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             lock.lock(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             for (ActivityPlanRewardDto activityReward : activityPlanRewardDtos) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -199,13 +202,13 @@ public class ActivityRewardServiceImpl extends ServiceImpl<ActivityRewardDao, Ac 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } else if (activityReward.getActivityReward().getRewardType().equals(RewardTypeEnum.VIP)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     memberPriceSettingsService.activityReward(userId, activityPlan.getActivityClient(), activityReward.getActivityReward(), activityId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                activityRewardName.append(activityReward.getActivityReward().getRewardName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                rewardNameList.add(activityReward.getActivityReward().getRewardName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 activityRewardIdList.add(activityReward.getActivityReward().getId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // 发送活动获奖推送 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if (!StringUtil.isEmpty(activityRewardName)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                sendActivityMessage(userId, activityPlan.getActivityName(), activityRewardName.toString(), activityPlan.getActivityClient()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (!CollectionUtils.isEmpty(rewardNameList)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                String name = String.join("", rewardNameList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                sendActivityMessage(userId, activityPlan.getActivityName(),name, activityPlan.getActivityClient()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } finally { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             lock.unlock(); 
			 |