fix: 生成视频、任务回调 - 检查代码并修改相关逻辑问题
This commit is contained in:
parent
992d95992a
commit
bb5daf02be
|
|
@ -432,13 +432,24 @@ public class ByteApiController extends BaseController {
|
||||||
}
|
}
|
||||||
|
|
||||||
private AjaxResult volcCallbackByteCheck(VideoTaskCallBackRequest request, GetVideoGenerationTaskResponse taskResp) {
|
private AjaxResult volcCallbackByteCheck(VideoTaskCallBackRequest request, GetVideoGenerationTaskResponse taskResp) {
|
||||||
String status = request.getStatus().toLowerCase();
|
String requestStatus = request.getStatus().toLowerCase();
|
||||||
|
String responseStatus = taskResp.getStatus().toLowerCase();
|
||||||
// 请求的状态与字节的状态是否一致
|
// 请求的状态与字节的状态是否一致
|
||||||
if (!status.equals(taskResp.getStatus().toLowerCase())) {
|
if (!requestStatus.equals(responseStatus)) {
|
||||||
|
// 如果推送的是队列中、执行中,但官方任务可能已进到下一步的状态,(时间差)此种情况不处理,等待后续推送
|
||||||
|
if (requestStatus.equals(VideoTaskStatusType.QUEUED.getName())
|
||||||
|
|| requestStatus.equals(VideoTaskStatusType.RUNNING.getName())) {
|
||||||
|
logger.warn("volcCallback request's status != official status, no process! order third party order num = {}, request's status = {}, official status = {}",
|
||||||
|
request.getId(), requestStatus, responseStatus);
|
||||||
|
// 防止再次推送
|
||||||
|
return AjaxResult.success();
|
||||||
|
} else {
|
||||||
logger.error("volcCallback request's status != official status! order third party order num = {}, request's status = {}, official status = {}",
|
logger.error("volcCallback request's status != official status! order third party order num = {}, request's status = {}, official status = {}",
|
||||||
request.getId(), status, taskResp.getStatus());
|
request.getId(), requestStatus, responseStatus);
|
||||||
|
// 不再让对方二次推送
|
||||||
return AjaxResult.error();
|
return AjaxResult.error();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -192,6 +192,7 @@ public class PortalVideoController extends BaseController {
|
||||||
private void fillVideoOrderRecord(AiOrder aiOrder, PortalVideoGenRequest req, String mode, ByteBodyReq body, String functionTypeResolved) {
|
private void fillVideoOrderRecord(AiOrder aiOrder, PortalVideoGenRequest req, String mode, ByteBodyReq body, String functionTypeResolved) {
|
||||||
aiOrder.setText(req.getText());
|
aiOrder.setText(req.getText());
|
||||||
aiOrder.setMode(mode);
|
aiOrder.setMode(mode);
|
||||||
|
aiOrder.setIsBackfilled(0);
|
||||||
applyOrderImages(aiOrder, req);
|
applyOrderImages(aiOrder, req);
|
||||||
if (req.getDuration() != null) {
|
if (req.getDuration() != null) {
|
||||||
aiOrder.setDuration(req.getDuration());
|
aiOrder.setDuration(req.getDuration());
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue