Commit ef5d1032 by lijinqi

ai换脸图片,上传定时任务修改;

parent ecb6cefd
...@@ -30,4 +30,8 @@ public class AiGeneratedFileSaveReqVO { ...@@ -30,4 +30,8 @@ public class AiGeneratedFileSaveReqVO {
private String coverImage; private String coverImage;
@Schema(description = "进度消息")
private String message;
} }
...@@ -20,6 +20,7 @@ import io.swagger.v3.oas.annotations.Operation; ...@@ -20,6 +20,7 @@ import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters; import io.swagger.v3.oas.annotations.Parameters;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import me.zhyd.oauth.log.Log;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
...@@ -88,12 +89,13 @@ public class OpenApiController { ...@@ -88,12 +89,13 @@ public class OpenApiController {
@RequestParam(value = "sourceImageUrl", required = false) String sourceImageUrl, @RequestParam(value = "sourceImageUrl", required = false) String sourceImageUrl,
@RequestPart(value = "targetImage", required = false) MultipartFile targetImage, @RequestPart(value = "targetImage", required = false) MultipartFile targetImage,
@RequestParam(value = "targetImageUrl", required = false) String targetImageUrl) { @RequestParam(value = "targetImageUrl", required = false) String targetImageUrl) {
Log.error("ai换脸-图片换脸");
return openApiService.faceImageGenerate(sourceImage, sourceImageUrl, targetImage, targetImageUrl); return openApiService.faceImageGenerate(sourceImage, sourceImageUrl, targetImage, targetImageUrl);
} }
@ApiAccessLog @ApiAccessLog
@GetMapping("/view-image") @PostMapping("/view-image")
@Operation(summary = "根据promptId取换脸后的图", description = "根据promptId取换脸后的图") @Operation(summary = "根据promptId取换脸后的图", description = "根据promptId取换脸后的图")
@ApiSignature @ApiSignature
public CommonResult<ViewSourceRespDTO> viewImage(@RequestBody ViewImageReqDTO viewImageReqDTO){ public CommonResult<ViewSourceRespDTO> viewImage(@RequestBody ViewImageReqDTO viewImageReqDTO){
...@@ -116,7 +118,7 @@ public class OpenApiController { ...@@ -116,7 +118,7 @@ public class OpenApiController {
@ApiAccessLog @ApiAccessLog
@GetMapping("/view-video") @PostMapping("/view-video")
@Operation(summary = "根据promptId取最后生成的视频", description = "根据promptId取最后生成的视频") @Operation(summary = "根据promptId取最后生成的视频", description = "根据promptId取最后生成的视频")
@ApiSignature @ApiSignature
public CommonResult<ViewSourceRespDTO> viewVideo(@RequestBody ViewVideoReqDTO viewVideoReqDTO){ public CommonResult<ViewSourceRespDTO> viewVideo(@RequestBody ViewVideoReqDTO viewVideoReqDTO){
......
...@@ -55,7 +55,7 @@ public interface OpenApiService { ...@@ -55,7 +55,7 @@ public interface OpenApiService {
SseEmitter aliyunStreamChat(AIQAReqDTO aiqaReqDTO); SseEmitter aliyunStreamChat(AIQAReqDTO aiqaReqDTO);
String getSourceUrl(String promptId, Integer type); String getSourceUrl(Integer id, String promptId, Integer type);
} }
...@@ -48,6 +48,7 @@ import com.luhu.computility.module.external.eums.DictDataConstants; ...@@ -48,6 +48,7 @@ import com.luhu.computility.module.external.eums.DictDataConstants;
import com.luhu.computility.module.external.eums.DictTypeConstants; import com.luhu.computility.module.external.eums.DictTypeConstants;
import com.luhu.computility.module.external.service.file.AiGeneratedFileService; import com.luhu.computility.module.external.service.file.AiGeneratedFileService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import me.zhyd.oauth.log.Log;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -119,6 +120,10 @@ public class OpenApiServiceImpl implements OpenApiService { ...@@ -119,6 +120,10 @@ public class OpenApiServiceImpl implements OpenApiService {
@Value("${swap-face.aliyun-stream-chat}") @Value("${swap-face.aliyun-stream-chat}")
private String aliyunStreamchat; private String aliyunStreamchat;
@Value("${swap-face.download-image}")
private String downloadFile;
@Autowired @Autowired
private SSEService sseService; private SSEService sseService;
...@@ -568,7 +573,7 @@ public class OpenApiServiceImpl implements OpenApiService { ...@@ -568,7 +573,7 @@ public class OpenApiServiceImpl implements OpenApiService {
@Override @Override
public String getSourceUrl(String promptId, Integer type) { public String getSourceUrl(Integer id, String promptId, Integer type) {
try { try {
Map<String, String> queryParams = new HashMap<>(); Map<String, String> queryParams = new HashMap<>();
queryParams.put("promptId", promptId); queryParams.put("promptId", promptId);
...@@ -579,10 +584,21 @@ public class OpenApiServiceImpl implements OpenApiService { ...@@ -579,10 +584,21 @@ public class OpenApiServiceImpl implements OpenApiService {
result = HttpUtils.get(viewImageUrl, null, queryParams); result = HttpUtils.get(viewImageUrl, null, queryParams);
} }
CommonResult<ViewSourceRespDTO> viewVideoRespDTOCommonResult = handleJsonObjectResult(result, ViewSourceRespDTO.class); CommonResult<ViewSourceRespDTO> viewVideoRespDTOCommonResult = handleJsonObjectResult(result, ViewSourceRespDTO.class);
aiGeneratedFileService.updateAiGeneratedFile(new AiGeneratedFileSaveReqVO()
.setId(id)
.setMessage(viewVideoRespDTOCommonResult.getMsg()));
if (viewVideoRespDTOCommonResult.getCode() == 10001) {
Log.error("换脸工作流还在进行,请稍后再试");
} else if (viewVideoRespDTOCommonResult.getCode() == 0) {
return viewVideoRespDTOCommonResult.getData().getUrl(); return viewVideoRespDTOCommonResult.getData().getUrl();
} else {
return null;
}
}catch (Exception e) { }catch (Exception e) {
return "获资源地址异常"; Log.error("换脸获资源地址异常:" + e.toString());
return null;
} }
return null;
} }
} }
...@@ -60,4 +60,9 @@ public class AiGeneratedFileDO extends BaseDO { ...@@ -60,4 +60,9 @@ public class AiGeneratedFileDO extends BaseDO {
*/ */
private String coverImage; private String coverImage;
/**
* 进度消息
*/
private String message;
} }
...@@ -14,6 +14,7 @@ import com.luhu.computility.module.external.controller.openapi.service.OpenApiSe ...@@ -14,6 +14,7 @@ import com.luhu.computility.module.external.controller.openapi.service.OpenApiSe
import com.luhu.computility.module.external.dal.dataobject.file.AiGeneratedFileDO; import com.luhu.computility.module.external.dal.dataobject.file.AiGeneratedFileDO;
import com.luhu.computility.module.external.service.file.AiGeneratedFileService; import com.luhu.computility.module.external.service.file.AiGeneratedFileService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import javax.annotation.Resource; import javax.annotation.Resource;
...@@ -37,6 +38,9 @@ public class UpdateAiGeneratedFileStatusJob implements JobHandler { ...@@ -37,6 +38,9 @@ public class UpdateAiGeneratedFileStatusJob implements JobHandler {
private OpenApiService openApiService; private OpenApiService openApiService;
@Value("${swap-face.download-image}")
private String downloadImage;
@Override @Override
@TenantIgnore @TenantIgnore
public String execute(String param) { public String execute(String param) {
...@@ -44,7 +48,7 @@ public class UpdateAiGeneratedFileStatusJob implements JobHandler { ...@@ -44,7 +48,7 @@ public class UpdateAiGeneratedFileStatusJob implements JobHandler {
int num = 0; int num = 0;
if (!CollectionUtil.isEmpty(aiGeneratedFileList)){ if (!CollectionUtil.isEmpty(aiGeneratedFileList)){
for (AiGeneratedFileDO aiGeneratedFileDO : aiGeneratedFileList) { for (AiGeneratedFileDO aiGeneratedFileDO : aiGeneratedFileList) {
String originalUrl = openApiService.getSourceUrl(aiGeneratedFileDO.getPromptId(), aiGeneratedFileDO.getType()); String originalUrl = openApiService.getSourceUrl(aiGeneratedFileDO.getId(), aiGeneratedFileDO.getPromptId(), aiGeneratedFileDO.getType());
if (!ObjectUtil.isEmpty(originalUrl)) { if (!ObjectUtil.isEmpty(originalUrl)) {
aiGeneratedFileService.updateAiGeneratedFile(new AiGeneratedFileSaveReqVO() aiGeneratedFileService.updateAiGeneratedFile(new AiGeneratedFileSaveReqVO()
.setId(aiGeneratedFileDO.getId()) .setId(aiGeneratedFileDO.getId())
......
...@@ -390,11 +390,11 @@ digital-human-zhuxi: ...@@ -390,11 +390,11 @@ digital-human-zhuxi:
token: Basic emh1eGlAdHhnOndBSmNETDRMZVZ3QjlhdlV1OVJN token: Basic emh1eGlAdHhnOndBSmNETDRMZVZ3QjlhdlV1OVJN
similar-image: similar-image:
base-url: http://218.77.58.42:18088/ base-url: https://218.77.58.42:18088
match-mage: ${similar-image.base-url}/matchImage match-mage: ${similar-image.base-url}/matchImage
swap-face: swap-face:
base-url: http://218.77.58.42:18088 base-url: https://218.77.58.42:18088
upload-image: ${swap-face.base-url}/uploadFaceSwapImage upload-image: ${swap-face.base-url}/uploadFaceSwapImage
create-video-stream: ${swap-face.base-url}/reActorFaceSwap create-video-stream: ${swap-face.base-url}/reActorFaceSwap
view-video: ${swap-face.base-url}/viewVideo view-video: ${swap-face.base-url}/viewVideo
...@@ -404,6 +404,7 @@ swap-face: ...@@ -404,6 +404,7 @@ swap-face:
AIQA-chat: ${swap-face.base-url}/v1/AIQA-chat AIQA-chat: ${swap-face.base-url}/v1/AIQA-chat
AIQA-stream-chat: ${swap-face.base-url}/v1/AIQA-stream-chat AIQA-stream-chat: ${swap-face.base-url}/v1/AIQA-stream-chat
aliyun-stream-chat: ${swap-face.base-url}/v1/aliyun-ai-chat aliyun-stream-chat: ${swap-face.base-url}/v1/aliyun-ai-chat
download-image: ${swap-face.base-url}/downloadImage?promptId=
new-aigc: new-aigc:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment