TASK ID
This commit is contained in:
		@@ -14,7 +14,7 @@ export default defineEventHandler(async event => {
 | 
				
			|||||||
            tasks = tasks.filter((task: any) => task.model === tasks[0].model)  // 筛选出首位model的任务
 | 
					            tasks = tasks.filter((task: any) => task.model === tasks[0].model)  // 筛选出首位model的任务
 | 
				
			||||||
            tasks.forEach(async (task: any) => {
 | 
					            tasks.forEach(async (task: any) => {
 | 
				
			||||||
                task.status = 'processing'
 | 
					                task.status = 'processing'
 | 
				
			||||||
                await useStorage().setItem(`task:${task.tid}`, task)
 | 
					                await useStorage().setItem(`task:${task.id}`, task)
 | 
				
			||||||
            })
 | 
					            })
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        return tasks
 | 
					        return tasks
 | 
				
			||||||
@@ -28,41 +28,41 @@ export default defineEventHandler(async event => {
 | 
				
			|||||||
        // 修改任务状态
 | 
					        // 修改任务状态
 | 
				
			||||||
        tasks.forEach(async (task: any) => {
 | 
					        tasks.forEach(async (task: any) => {
 | 
				
			||||||
            task.status = 'finished'
 | 
					            task.status = 'finished'
 | 
				
			||||||
            await useStorage().setItem(`task:${task.tid}`, task)
 | 
					            await useStorage().setItem(`task:${task.id}`, task)
 | 
				
			||||||
        })
 | 
					        })
 | 
				
			||||||
        return tasks
 | 
					        return tasks
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    // 添加任务到队列(生成一个32位随机字符串作为任务ID)
 | 
					    // 添加任务到队列(生成一个32位随机字符串作为任务ID)
 | 
				
			||||||
    if (event.node.req.method === 'POST') {
 | 
					    if (event.node.req.method === 'POST') {
 | 
				
			||||||
        const body = await readBody(event)                     // 读取body数据到
 | 
					        const task = await readBody(event)                     // 读取body数据到
 | 
				
			||||||
        body.tid = Math.random().toString(36).substring(2, 34) // 生成随机任务ID
 | 
					        task.id = Math.random().toString(36).substring(2, 34) // 生成随机任务ID
 | 
				
			||||||
        body.uid = 1234567890                                  // 用户ID
 | 
					        task.uid = 1234567890                                  // 用户ID
 | 
				
			||||||
        body.createdAt = new Date().getTime()                  // 设定创建时间
 | 
					        task.createdAt = new Date().getTime()                  // 设定创建时间
 | 
				
			||||||
        // 验证需要输入的参数
 | 
					        // 验证需要输入的参数
 | 
				
			||||||
        body.model =  'SD2'                                    // 模型
 | 
					        task.model =  'SD2'                                    // 模型
 | 
				
			||||||
        body.ckpt = '768-v-ema'                                // 风格
 | 
					        task.ckpt = '768-v-ema'                                // 风格
 | 
				
			||||||
        body.prompt = '猫猫'                                    // 提示词
 | 
					        task.prompt = '猫猫'                                    // 提示词
 | 
				
			||||||
        body.remove = '狗狗'                                    // 排除词
 | 
					        task.remove = '狗狗'                                    // 排除词
 | 
				
			||||||
        body.number = 1                                        // 生成数量
 | 
					        task.number = 1                                        // 生成数量
 | 
				
			||||||
        body.w = 512                                           // 图片宽度
 | 
					        task.w = 512                                           // 图片宽度
 | 
				
			||||||
        body.h = 512                                           // 图片高度
 | 
					        task.h = 512                                           // 图片高度
 | 
				
			||||||
        body.seed = 0                                          // 随机种子
 | 
					        task.seed = 0                                          // 随机种子
 | 
				
			||||||
        body.sampler = 'pndm'                                  // 扩散采样器
 | 
					        task.sampler = 'pndm'                                  // 扩散采样器
 | 
				
			||||||
        body.prompt_guidance = 0.5                             // 提示词权重
 | 
					        task.prompt_guidance = 0.5                             // 提示词权重
 | 
				
			||||||
        body.quality_details = 25                              // 质量和细节(步数)
 | 
					        task.quality_details = 25                              // 质量和细节(步数)
 | 
				
			||||||
        // 输出参数
 | 
					        // 输出参数
 | 
				
			||||||
        body.status = 'waiting'                                // 任务状态
 | 
					        task.status = 'waiting'                                // 任务状态
 | 
				
			||||||
        body.progress = 0.00                                   // 任务进度
 | 
					        task.progress = 0.00                                   // 任务进度
 | 
				
			||||||
        body.image = ''                                        // 图片数据
 | 
					        task.image = ''                                        // 图片数据
 | 
				
			||||||
        body.data = null                                       // 生成结果
 | 
					        task.data = null                                       // 生成结果
 | 
				
			||||||
        console.log('task:', body)
 | 
					        console.log('task:', task)
 | 
				
			||||||
        await useStorage().setItem(`task:${body.tid}`, body)   // 保存任务到内存
 | 
					        await useStorage().setItem(`task:${task.id}`, task)   // 保存任务到内存
 | 
				
			||||||
        // 筛选出所有的任务(并打印)
 | 
					        // 筛选出所有的任务(并打印)
 | 
				
			||||||
        let tasks = await useStorage().getKeys().then((keys: any[]) => keys.filter(key => key.startsWith('task:')))
 | 
					        let tasks = await useStorage().getKeys().then((keys: any[]) => keys.filter(key => key.startsWith('task:')))
 | 
				
			||||||
        console.log('tasks:', tasks)
 | 
					        console.log('tasks:', tasks)
 | 
				
			||||||
        // 如果无需排队,直接返回结果, 否则返回任务排队状态(预估等待时间)
 | 
					        // 如果无需排队,直接返回结果, 否则返回任务排队状态(预估等待时间)
 | 
				
			||||||
        return body
 | 
					        return task
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
})
 | 
					})
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user