Sfoglia il codice sorgente

feat: support openAI sdk retrieve videos

feitianbubu 2 mesi fa
parent
commit
ff9f9fbbc9
2 ha cambiato i file con 15 aggiunte e 5 eliminazioni
  1. 1 0
      controller/task_video.go
  2. 14 5
      relay/relay_task.go

+ 1 - 0
controller/task_video.go

@@ -97,6 +97,7 @@ func updateVideoSingleTask(ctx context.Context, adaptor channel.TaskAdaptor, cha
 		taskResult.Url = t.FailReason
 		taskResult.Progress = t.Progress
 		taskResult.Reason = t.FailReason
+		task.Data = t.Data
 	} else if taskResult, err = adaptor.ParseTaskResult(responseBody); err != nil {
 		return fmt.Errorf("parseTaskResult failed for task %s: %w", taskId, err)
 	} else {

+ 14 - 5
relay/relay_task.go

@@ -362,11 +362,20 @@ func videoFetchByIDRespBodyBuilder(c *gin.Context) (respBody []byte, taskResp *d
 		}
 	}()
 
-	if len(respBody) == 0 {
-		respBody, err = json.Marshal(dto.TaskResponse[any]{
-			Code: "success",
-			Data: TaskModel2Dto(originTask),
-		})
+	if len(respBody) != 0 {
+		return
+	}
+
+	if strings.HasPrefix(c.Request.RequestURI, "/v1/videos/") {
+		respBody = originTask.Data
+		return
+	}
+	respBody, err = json.Marshal(dto.TaskResponse[any]{
+		Code: "success",
+		Data: TaskModel2Dto(originTask),
+	})
+	if err != nil {
+		taskResp = service.TaskErrorWrapper(err, "marshal_response_failed", http.StatusInternalServerError)
 	}
 	return
 }