fix(task) : sélecteur de statut filtré par le workflow du projet
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -671,10 +671,27 @@ const touched = reactive({
|
|||||||
project: false,
|
project: false,
|
||||||
})
|
})
|
||||||
|
|
||||||
const statusOptions = computed(() =>
|
const showProjectSelect = computed(() => !!props.projects?.length && !isEditing.value)
|
||||||
props.statuses.map(s => ({ label: s.label, value: s.id }))
|
|
||||||
|
const projectOptions = computed(() =>
|
||||||
|
(props.projects ?? []).map(p => ({ label: p.name, value: p.id }))
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const resolvedProjectId = computed(() =>
|
||||||
|
showProjectSelect.value ? form.projectId : props.projectId
|
||||||
|
)
|
||||||
|
|
||||||
|
const statusOptions = computed(() => {
|
||||||
|
const project = props.projects?.find(p => p.id === resolvedProjectId.value)
|
||||||
|
const wfStatuses = project?.workflow?.statuses ?? props.statuses
|
||||||
|
const opts = wfStatuses.map(s => ({ label: s.label, value: s.id }))
|
||||||
|
const current = props.task?.status
|
||||||
|
if (current && !wfStatuses.some(s => s.id === current.id)) {
|
||||||
|
opts.unshift({ label: current.label, value: current.id })
|
||||||
|
}
|
||||||
|
return opts
|
||||||
|
})
|
||||||
|
|
||||||
const effortOptions = computed(() =>
|
const effortOptions = computed(() =>
|
||||||
props.efforts.map(e => ({ label: e.label, value: e.id }))
|
props.efforts.map(e => ({ label: e.label, value: e.id }))
|
||||||
)
|
)
|
||||||
@@ -707,16 +724,6 @@ const groupOptions = computed(() => {
|
|||||||
return filtered.map(g => ({ label: g.title, value: g.id }))
|
return filtered.map(g => ({ label: g.title, value: g.id }))
|
||||||
})
|
})
|
||||||
|
|
||||||
const showProjectSelect = computed(() => !!props.projects?.length && !isEditing.value)
|
|
||||||
|
|
||||||
const projectOptions = computed(() =>
|
|
||||||
(props.projects ?? []).map(p => ({ label: p.name, value: p.id }))
|
|
||||||
)
|
|
||||||
|
|
||||||
const resolvedProjectId = computed(() =>
|
|
||||||
showProjectSelect.value ? form.projectId : props.projectId
|
|
||||||
)
|
|
||||||
|
|
||||||
const canArchive = computed(() => {
|
const canArchive = computed(() => {
|
||||||
if (!isEditing.value || !props.task) return false
|
if (!isEditing.value || !props.task) return false
|
||||||
if (props.task.archived) return false
|
if (props.task.archived) return false
|
||||||
|
|||||||
Reference in New Issue
Block a user