AI_Painting_V2.0/src/utils/createTask.js

78 lines
3.0 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { useParamStore } from '@/stores'
export async function getFormattedTime(date = new Date()) {
const year = date.getFullYear()
const month = String(date.getMonth() + 1).padStart(2, '0') // 月份从0开始需要+1
const day = String(date.getDate()).padStart(2, '0')
const hours = String(date.getHours()).padStart(2, '0')
const minutes = String(date.getMinutes()).padStart(2, '0')
return `${year}-${month}-${day} ${hours}:${minutes}`
}
// 处理音频生成任务的数据并返回
export async function createTask(taskType = 1, params, title = '模特展示图') {
const paramStore = useParamStore()
const data = {
taskId: params.taskId,
taskRootId: params.taskRootId || paramStore.taskRootId,
parentTaskId: params.parentTaskId || '0',
AIGC: 'huanda',
platform: 'runninghub',
taskType,
modelName: 'Flux',
title,
file_type: params.file_type,
payload: {},
createTime: params.time,
parentCreateTime: params.parentCreateTime || '',
parentIndex: params.parentIndex || '',
token: params.token
}
if (taskType === 1) {
data.payload = workflows.huanda
data.payload.nodeInfoList[0].fieldValue = paramStore.params.clothes
data.payload.nodeInfoList[1].fieldValue = paramStore.params.model
data.payload.nodeInfoList[2].fieldValue = paramStore.params.pose
data.payload.nodeInfoList[3].fieldValue = paramStore.params.background
data.payload.nodeInfoList[4].fieldValue = paramStore.params.model ? 0 : 1
data.payload.nodeInfoList[5].fieldValue = paramStore.params.pose ? 0 : 1
data.payload.nodeInfoList[6].fieldValue = paramStore.params.background ? 0 : 1
data.payload.nodeInfoList[7].fieldValue = params.prompt
data.payload.nodeInfoList[7].fieldValue = params.aspectRatio
} else if (taskType === 2) { // 对话修改
data.parentTaskId = params.parentTaskId
data.payload = workflows.talk
data.payload.nodeInfoList[0].fieldValue = params.text
data.payload.nodeInfoList[1].fieldValue = params.talkImg
} else if (taskType === 3) { // 生成视频
data.parentTaskId = params.parentTaskId
data.payload = workflows.video
data.payload.nodeInfoList[0].fieldValue = params.text
data.payload.nodeInfoList[1].fieldValue = params.videoImg
} else if (taskType === 4) { // AI生成模特
data.payload = workflows.model
data.payload.nodeInfoList[0].fieldValue = params.text
data.payload.nodeInfoList[1].fieldValue = params.aspectRatio
} else if (taskType === 5 || taskType === 6) { // AI生成服装背景
// data.parentTaskId = params.parentTaskId
data.payload = workflows.background_pose
data.payload.nodeInfoList[0].fieldValue = params.text
data.payload.nodeInfoList[1].fieldValue = params.aspectRatio
}
console.log('data:', data)
return data
}
// 获取音频结果
export async function getTask(result) {
if (result.code === 0 && result.msg === 'success') {
return { type: true, url: result.data[0].fileUrl }
}
return { type: false, message: result.data.exception_message }
}