| 
				
				
				
				 | 
			
			 | 
			@@ -1,9 +1,13 @@ | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			package com.iformall.service.impl; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import com.iformall.common.CommonConstants; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import com.iformall.domain.dto.sm.SaveServiceVideoRecordDTO; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import com.iformall.dto.GenerateVideoDTO; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import com.iformall.enums.sm.EnumThirdPartyType; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import com.iformall.service.AiVideoService; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import com.iformall.service.sm.ServiceVideoRecordService; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import com.iformall.sm.*; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import com.iformall.utils.Base64Util; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import org.springframework.beans.factory.annotation.Autowired; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			import org.springframework.stereotype.Service; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
	
		
			
				| 
				
				
				
					
				
				 | 
			
			 | 
			@@ -25,15 +29,25 @@ public class AiVideoServiceImpl implements AiVideoService { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    @Override | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    public AiVideoResult generateVideo(AiVideoParam aiVideoParam, Long taskId, Long serviceId) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        AiVideoResult video = AiVideoHelper.createVideo(aiVideoParam, taskId); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    public AiVideoResult generateVideo(GenerateVideoDTO dto, Long serviceId) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        AiVideoParam aiVideoParam = dto.getAiVideoParam(); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        // 如果是api接入,则将图片地址转为base64 | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        if (EnumThirdPartyType.API_JOIN.getCode().equals(dto.getType())) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            AiVideoParam.VideoFiles videoFiles = aiVideoParam.getVideo_files(); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            videoFiles.getBack_ground().setImage(Base64Util.imageUrlToBase64(videoFiles.getBack_ground().getImage())); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            for (AiVideoParam.Material material : videoFiles.getMaterial()) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                material.setImage(Base64Util.imageUrlToBase64(material.getImage())); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
  | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        AiVideoResult video = AiVideoHelper.createVideo(aiVideoParam); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        if (video.isSuccess()) { | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            // 记录时长 | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            SaveServiceVideoRecordDTO dto = SaveServiceVideoRecordDTO.builder() | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            SaveServiceVideoRecordDTO saveServiceVideoRecordDTO = SaveServiceVideoRecordDTO.builder() | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    .serviceId(serviceId) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    .videoTime(String.valueOf(video.getDuration())) | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			                    .build(); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            serviceVideoRecordService.saveServiceVideoRecord(dto); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			            serviceVideoRecordService.saveServiceVideoRecord(saveServiceVideoRecordDTO); | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        } | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			        return video; | 
		
		
	
		
			
			 | 
			 | 
			
			 | 
			    } | 
		
		
	
	
		
			
				| 
				
				
				
				 | 
			
			 | 
			
  |