diff --git a/frontend/src/views/TaskHall.vue b/frontend/src/views/TaskHall.vue index 370fbf6..41eb7bc 100644 --- a/frontend/src/views/TaskHall.vue +++ b/frontend/src/views/TaskHall.vue @@ -4938,19 +4938,22 @@ const handleRejectTask = (task: Task) => { // 查看任务详情(进行中/待审核) const handleViewTaskDetail = async (task: Task) => { + // 先设置任务对象(用于快速显示) selectedTask.value = task detailDrawerVisible.value = true - // 调试:输出任务对象信息 - console.log('=== 任务详情调试信息 ===') - console.log('任务对象:', task) - console.log('任务状态:', task.status) - console.log('deadline字段:', task.deadline) - console.log('startTime字段:', task.startTime) - console.log('isPipeline:', task.isPipeline) - console.log('subTasks:', task.subTasks) - console.log('estimatedHours:', task.estimatedHours) - console.log('getTaskDeadline结果:', getTaskDeadline(task)) - console.log('====================') + + // 如果有任务ID,调用API获取完整的任务详情 + if (task.id) { + try { + const response = await taskApi.getTaskById(task.id) + if (response.data) { + selectedTask.value = response.data + } + } catch (error) { + console.error('获取任务详情失败:', error) + } + } + // 已完成任务加载商品ID列表 if (task.status === 'completed' && task.id) { await loadTaskProducts(task.id) @@ -4961,19 +4964,32 @@ const handleViewTaskDetail = async (task: Task) => { // 任务点击 const handleTaskClick = async (task: TaskOrSubTask) => { + // 先设置任务对象(用于快速显示) selectedTask.value = task detailDrawerVisible.value = true - // 调试:输出任务对象信息 - console.log('=== 任务详情调试信息 ===') - console.log('任务对象:', task) - console.log('任务状态:', task.status) - console.log('deadline字段:', task.deadline) - console.log('startTime字段:', (task as any).startTime) - console.log('isPipeline:', (task as any).isPipeline) - console.log('subTasks:', (task as any).subTasks) - console.log('estimatedHours:', task.estimatedHours) - console.log('getTaskDeadline结果:', getTaskDeadline(task)) - console.log('====================') + + // 如果有任务ID且不是子任务,调用API获取完整的任务详情 + if (task.id && !task.isSubTask) { + try { + const response = await taskApi.getTaskById(task.id) + if (response.data) { + selectedTask.value = response.data + } + } catch (error) { + console.error('获取任务详情失败:', error) + } + } else if (task.isSubTask && (task.itemId || task.id)) { + // 如果是子任务,调用子任务详情API + try { + const response = await taskApi.getTaskItemById(task.itemId || task.id!) + if (response.data) { + selectedTask.value = response.data + } + } catch (error) { + console.error('获取子任务详情失败:', error) + } + } + // 已完成任务加载商品ID列表 if (task.status === 'completed' && task.id) { await loadTaskProducts(task.id)