| 
					
				 | 
			
			
				@@ -9,6 +9,7 @@ import java.util.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.Map.Entry; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.auth.api.enums.CertificateTypeEnum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.ym.mec.biz.dal.dao.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.enums.CourseViewTypeEnum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.apache.commons.io.FileUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.apache.commons.lang3.StringUtils; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -25,10 +26,6 @@ import org.springframework.util.CollectionUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.auth.api.client.SysUserFeignService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.auth.api.entity.SysUser; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dao.MusicGroupPaymentCalenderDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dao.MusicGroupStudentFeeDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dao.StudentDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-import com.ym.mec.biz.dal.dao.StudentPaymentOrderDetailDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.dto.StudentInfo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.entity.CooperationOrgan.OwnershipType; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.dal.entity.Goods; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -86,6 +83,9 @@ public class ContractServiceImpl implements ContractService, InitializingBean { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	private StudentRegistrationService studentRegistrationService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	@Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	private StudentRegistrationDao studentRegistrationDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	@Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	private StudentPaymentOrderService studentPaymentOrderService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	@Autowired 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -972,13 +972,6 @@ public class ContractServiceImpl implements ContractService, InitializingBean { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		Integer contractVersion=2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		List<SysUserContracts> userContracts = sysUserContractsService.getUserContractWithType(userId, ContractType.PRODUCT, contractVersion); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		if(!CollectionUtils.isEmpty(userContracts)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if(StringUtils.isBlank(user.getRealName())||StringUtils.isBlank(user.getIdCardNo())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			logger.error("身份信息缺失({})", userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			return false; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1016,8 +1009,14 @@ public class ContractServiceImpl implements ContractService, InitializingBean { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		params.put("isShowVisualSeal", false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		CourseViewTypeEnum ownershipType = CourseViewTypeEnum.COURSE_lIST; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if(StringUtils.isBlank(musicGroupId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			params.put("ownershipType", "OWN"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			MusicGroup userLastNormalMusicGroup = studentRegistrationDao.getUserLastNormalMusicGroup(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(Objects.nonNull(userLastNormalMusicGroup)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				ownershipType = userLastNormalMusicGroup.getCourseViewType(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			MusicGroup musicGroup = musicGroupService.get(musicGroupId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if (musicGroup == null) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1025,9 +1024,15 @@ public class ContractServiceImpl implements ContractService, InitializingBean { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			params.put("ownershipType", musicGroup.getOwnershipType().name()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			ownershipType = musicGroup.getCourseViewType(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		templateEngine.render(params, "product2.ftl", srcFile); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		List<SysUserContracts> userContracts = sysUserContractsService.getUserContractWithType(userId, ContractType.PRODUCT, CourseViewTypeEnum.COURSE_lIST.equals(ownershipType)?2:3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(!CollectionUtils.isEmpty(userContracts)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		templateEngine.render(params, "product"+(CourseViewTypeEnum.COURSE_lIST.equals(ownershipType)?2:3)+".ftl", srcFile); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		// 生成借款协议PDF 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		try { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1065,7 +1070,7 @@ public class ContractServiceImpl implements ContractService, InitializingBean { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		sysUserContracts.setType(ContractType.PRODUCT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		sysUserContracts.setUrl(pdfFilePath); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		sysUserContracts.setUserId(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		sysUserContracts.setVersion(contractVersion); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		sysUserContracts.setVersion(CourseViewTypeEnum.COURSE_lIST.equals(ownershipType)?2:3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		sysUserContractsService.insert(sysUserContracts); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1106,6 +1111,10 @@ public class ContractServiceImpl implements ContractService, InitializingBean { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if(StringUtils.isBlank(musicGroupId)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			params.put("ownershipType", "OWN"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			MusicGroup userLastNormalMusicGroup = studentRegistrationDao.getUserLastNormalMusicGroup(userId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(Objects.nonNull(userLastNormalMusicGroup)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				result.put("courseViewType", userLastNormalMusicGroup.getCourseViewType()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		}else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			MusicGroup musicGroup = musicGroupService.get(musicGroupId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if (musicGroup == null) { 
			 |