fix
This commit is contained in:
@@ -1,15 +1,10 @@
|
||||
import { getTaskidResult } from '@/api/flow-canvas'
|
||||
interface NodeOptions {
|
||||
id?: string
|
||||
position?: { x: number, y: number }
|
||||
positionX?: number
|
||||
positionY?: number
|
||||
component?: any
|
||||
}
|
||||
|
||||
// interface NodeOptions {
|
||||
// }
|
||||
export class GenerateManager {
|
||||
stateManager: any
|
||||
taskIds: string[] = []
|
||||
getTaskIdsImgTime: any
|
||||
constructor(options) {
|
||||
this.stateManager = options.stateManager;
|
||||
}
|
||||
@@ -19,19 +14,58 @@ export class GenerateManager {
|
||||
|
||||
}
|
||||
/** 添加taskId */
|
||||
addTaskId(TaskId: any) {
|
||||
this.stateManager.addTaskId(TaskId)
|
||||
addTaskId(generateData: any,nodeId: string) {
|
||||
this.taskIds.push({
|
||||
...generateData,
|
||||
nodeId,
|
||||
})
|
||||
this.getTasksIdImg()
|
||||
}
|
||||
/** 添加taskId */
|
||||
async getTasksIdImg(list) {
|
||||
let taskIds = list.map((item)=>item.taskId)
|
||||
getTaskidResult({taskIds}).then((rv)=>{
|
||||
console.log(rv)
|
||||
})
|
||||
async getTasksIdImg() {
|
||||
clearInterval(this.getTaskIdsImgTime)
|
||||
this.getTaskIdsImgTime = setInterval(()=>{
|
||||
let taskIds = this.taskIds.map((item)=>item.taskId)
|
||||
getTaskidResult({taskIds}).then((rv:any)=>{
|
||||
//找出成功的
|
||||
let returnedTasks = rv.filter((item)=>item.status == 'RETURNED')
|
||||
if(returnedTasks.length == 0)return
|
||||
//剔除调成功的
|
||||
let taskIds_ = JSON.parse(JSON.stringify(this.taskIds))
|
||||
this.taskIds = taskIds_.filter(itemA =>
|
||||
!returnedTasks.some(itemB => itemB.taskId === itemA.taskId)
|
||||
)
|
||||
//把成功的提取出来并且更新到node中
|
||||
const result = returnedTasks.filter(itemA =>
|
||||
taskIds_.some(itemB => {
|
||||
itemA.nodeId = itemB.nodeId
|
||||
return itemB.taskId === itemA.taskId
|
||||
})
|
||||
)
|
||||
result.forEach(item => {
|
||||
this.stateManager.getNodeById(item.nodeId).data.data.imageProcessTasks.forEach((nodeDataItem:any)=>{
|
||||
if(item.taskId == nodeDataItem.taskId){
|
||||
nodeDataItem.url = item.url
|
||||
nodeDataItem.createTime = item.createTime
|
||||
nodeDataItem.status = item.status
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
if(this.taskIds.length == 0)clearInterval(this.getTaskIdsImgTime)
|
||||
}).catch(()=>{
|
||||
clearInterval(this.getTaskIdsImgTime)
|
||||
console.warn('获取taskId图片失败')
|
||||
})
|
||||
}, 3000)
|
||||
}
|
||||
/** 更新taskId */
|
||||
updateTaskId(taskId: string) {
|
||||
this.stateManager.getNodeById()
|
||||
}
|
||||
|
||||
dispose() {
|
||||
this.taskIds = []
|
||||
|
||||
clearInterval(this.getTaskIdsImgTime)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user