fix: 完善任务排队状态显示和抢单按钮
- 修改getStatusText函数显示排队中状态 - 修改canGrabTask函数检查canGrab和unlockStatus - 抢单按钮显示排队位置信息
This commit is contained in:
parent
7dc5df6f80
commit
4d4b1e2189
@ -292,7 +292,7 @@
|
||||
:title="canGrabTask(task).canGrab ? '点击抢单' : canGrabTask(task).reason"
|
||||
@click.stop="handleGrab(task)"
|
||||
>
|
||||
{{ canGrabTask(task).canGrab ? '抢单' : '不可接单' }}
|
||||
{{ canGrabTask(task).canGrab ? '抢单' : (task.unlockStatus === 'queuing' ? `排队中(第${task.queuePosition || 0}位)` : '不可接单') }}
|
||||
</button>
|
||||
</div>
|
||||
|
||||
@ -3221,8 +3221,13 @@ const getProcessStage = (task: TaskOrSubTask): string => {
|
||||
return '开始设计中'
|
||||
}
|
||||
|
||||
// 4. 任务被接单前:任务正在被抢单中
|
||||
// 4. 任务被接单前:根据排队状态显示
|
||||
if (task.status === 'pending' && !task.receiverId) {
|
||||
// 检查排队状态
|
||||
if (task.unlockStatus === 'queuing') {
|
||||
const position = task.queuePosition
|
||||
return position ? `排队中(第${position}位)` : '排队中'
|
||||
}
|
||||
return '任务正在被抢单中'
|
||||
}
|
||||
|
||||
@ -5859,6 +5864,12 @@ const canGrabTask = (task: TaskOrSubTask) => {
|
||||
}
|
||||
}
|
||||
|
||||
// 检查5:验证任务是否在排队中(排队中的任务不能抢单)
|
||||
if (task.canGrab === false && task.unlockStatus === 'queuing') {
|
||||
const position = task.queuePosition || 0
|
||||
return { canGrab: false, reason: `任务排队中,当前位置:第${position}位` }
|
||||
}
|
||||
|
||||
return { canGrab: true, reason: '' }
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user