fix: 任务类型选择支持选择到叶子节点,不强制要求三级

This commit is contained in:
Your Name 2026-01-05 22:44:59 +08:00
parent 741ab148db
commit 82eb291cb5

View File

@ -712,14 +712,23 @@ const cascaderFilter = (inputValue: string, path: CascaderOption[]) => {
// 任务类型级联选择变更
const onTaskTypeChange = (value: (string | number)[] | undefined, item: TaskTypeItem, index: number) => {
if (value && value.length === 3) {
// 选择了三级分类,设置taskTypeId为三级分类的ID
item.taskTypeId = value[2] as number
if (value && value.length > 0) {
// 取选择路径中的最后一个ID(叶子节点)
const lastId = value[value.length - 1] as number
// 检查该节点是否是叶子节点(没有子分类)
const selectedNode = findTaskTypeById(lastId)
if (selectedNode && (!selectedNode.children || selectedNode.children.length === 0)) {
// 是叶子节点,可以设置taskTypeId
item.taskTypeId = lastId
} else {
// 不是叶子节点,还需要继续选择
item.taskTypeId = undefined
}
item.taskTypePath = value
} else {
// 未选择完整路径
// 清空选择
item.taskTypeId = undefined
item.taskTypePath = value
item.taskTypePath = undefined
}
calculateScore()
}