| 
					
				 | 
			
			
				@@ -654,10 +654,13 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * @return 协议地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private String getContractAndUpLoad(Integer tenantId, TenantContractRecordEnum en, Integer val) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        RBucket<Object> bucket = redissonClient.getBucket("getContractAndUpLoad:" + tenantId + ":" + en.getType()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if (!bucket.trySet(tenantId, 15, TimeUnit.SECONDS)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String key = "getContractAndUpLoad:" + tenantId + ":" + en.getMsg(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        log.info("getContractAndUpLoad >>>>key:{}", key); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        RBucket<Object> bucket = redissonClient.getBucket(key); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (!bucket.trySet(tenantId, 15L, TimeUnit.SECONDS)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        log.info("getContractAndUpLoad >>>>ok  tenantId:{} en:{} val:{}", tenantId, en, val); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Date now = new Date(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //创建PDF本次缓存地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String srcPdfPath = contractBaseDir + lexiaoyaContract + DateUtils.formatDate(now, "yyyyMMddHHmmss") + "/" + tenantId + "_" + java.time.LocalDateTime.now().getSecond() + ".pdf"; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -984,6 +987,13 @@ public class TenantInfoServiceImpl extends ServiceImpl<TenantInfoDao, TenantInfo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         productInfo.setPayDate(now); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         productInfo.setTenantId(tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         tenantProductInfoService.updateByTenantId(productInfo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //一个机构只能创建一个开通协议 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        TenantContractRecord openRecord = tenantContractRecordService.getOne(new QueryWrapper<>(new TenantContractRecord()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .eq("tenant_id_", tenantId) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .eq("type_", TenantContractRecordEnum.OPEN.getType())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (Objects.nonNull(openRecord)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //生成协议并上传得到地址 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         TenantContractRecordEnum open = TenantContractRecordEnum.OPEN; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String contractPath = getContractAndUpLoad(tenantId, open, null); 
			 |