瀏覽代碼

Merge remote-tracking branch 'origin/photo' into private_deployment

private_deployment
xmzhao71 1 年之前
父節點
當前提交
213ac35112
共有 6 個文件被更改,包括 29 次插入13 次删除
  1. +2
    -2
      open-api/src/main/java/com/iformall/controller/ai/AiVideoController.java
  2. +7
    -4
      open-api/src/main/java/com/iformall/dto/GenerateVideoDTO.java
  3. +1
    -1
      open-api/src/main/java/com/iformall/service/AiVideoService.java
  4. +17
    -3
      open-api/src/main/java/com/iformall/service/impl/AiVideoServiceImpl.java
  5. +2
    -2
      suimangAdmin/src/main/java/com/iformall/config/ShiroConfig.java
  6. +0
    -1
      suimangService/src/main/java/com/iformall/sm/AiVideoHelper.java

+ 2
- 2
open-api/src/main/java/com/iformall/controller/ai/AiVideoController.java 查看文件

@@ -30,7 +30,7 @@ public class AiVideoController extends BaseController {

@ApiOperation("生成视频")
@PostMapping("generateVideo")
public ResultData generateVideo(@RequestBody AiVideoParam aiVideoParam) {
return new ResultData(aiVideoService.generateVideo(aiVideoParam, getServiceId()));
public ResultData generateVideo(@RequestBody GenerateVideoDTO dto) {
return new ResultData(aiVideoService.generateVideo(dto, getServiceId()));
}
}

+ 7
- 4
open-api/src/main/java/com/iformall/dto/GenerateVideoDTO.java 查看文件

@@ -1,5 +1,6 @@
package com.iformall.dto;

import com.iformall.enums.sm.EnumThirdPartyType;
import com.iformall.sm.AiVideoParam;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -38,15 +39,17 @@ public class GenerateVideoDTO {
* }
* }
*/
@ApiModelProperty(value = "视频唯一标识")
private Long id;
// @ApiModelProperty(value = "视频唯一标识")
// private Long id;
@ApiModelProperty(value = "接入方式")
private Integer type = EnumThirdPartyType.API_JOIN.getCode();
@ApiModelProperty(value = "生成视频参数")
private AiVideoParam aiVideoParam;


public static GenerateVideoDTO build(AiVideoParam aiVideoParam, Long id) {
public static GenerateVideoDTO build(AiVideoParam aiVideoParam, Integer type) {
GenerateVideoDTO dto = new GenerateVideoDTO();
dto.setId(id);
dto.setType(type);
dto.setAiVideoParam(aiVideoParam);
return dto;
}


+ 1
- 1
open-api/src/main/java/com/iformall/service/AiVideoService.java 查看文件

@@ -23,5 +23,5 @@ public interface AiVideoService {
* @param aiVideoParam
* @return {@link AiVideoResult}
*/
AiVideoResult generateVideo(AiVideoParam aiVideoParam, Long serviceId);
AiVideoResult generateVideo(GenerateVideoDTO dto, Long serviceId);
}

+ 17
- 3
open-api/src/main/java/com/iformall/service/impl/AiVideoServiceImpl.java 查看文件

@@ -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 serviceId) {
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;
}


+ 2
- 2
suimangAdmin/src/main/java/com/iformall/config/ShiroConfig.java 查看文件

@@ -150,8 +150,8 @@ public class ShiroConfig {
//配置退出 过滤器,其中的具体的退出代码Shiro已经替我们实现了
filterChainDefinitionMap.put("/logout", "authc");

// filterChainDefinitionMap.put("/**", "corsFilter,token,authc");
filterChainDefinitionMap.put("/**", "anon");
filterChainDefinitionMap.put("/**", "corsFilter,token,authc");
// filterChainDefinitionMap.put("/**", "anon");


shiroFilterFactoryBean.setFilterChainDefinitionMap(filterChainDefinitionMap);


+ 0
- 1
suimangService/src/main/java/com/iformall/sm/AiVideoHelper.java 查看文件

@@ -71,7 +71,6 @@ public class AiVideoHelper {
}

log.info("生成视频start request:" + videoParam.neglectImgString());
log.info("完整参数:{}", JSONObject.toJSONString(videoParam));
String response = doPost(oral_broadcasting+"/gen_dh_video", JSONObject.toJSONString(videoParam));
log.info("生成视频end response:"+response);



Loading…
取消
儲存