mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-18 15:40:12 +01:00
🎨 Improve av https://github.com/siyuan-note/siyuan/issues/15536
This commit is contained in:
parent
f15aca19d7
commit
c7745e3092
1 changed files with 28 additions and 1 deletions
|
|
@ -4611,6 +4611,33 @@ func removeAttributeViewColumnOption(operation *Operation) (err error) {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 如果存在选项对应的过滤条件,则删除过滤条件中设置的选项值 https://github.com/siyuan-note/siyuan/issues/15536
|
||||||
|
for _, view := range attrView.Views {
|
||||||
|
for _, filter := range view.Filters {
|
||||||
|
if filter.Column != operation.ID {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
if nil != filter.Value && (av.KeyTypeSelect == filter.Value.Type || av.KeyTypeMSelect == filter.Value.Type) {
|
||||||
|
for i, opt := range filter.Value.MSelect {
|
||||||
|
if optName == opt.Content {
|
||||||
|
filter.Value.MSelect = append(filter.Value.MSelect[:i], filter.Value.MSelect[i+1:]...)
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if 1 > len(filter.Value.MSelect) {
|
||||||
|
// 如果删除后选项值为空,则删除过滤条件
|
||||||
|
for i, f := range view.Filters {
|
||||||
|
if f.Column == operation.ID && f.Value == filter.Value {
|
||||||
|
view.Filters = append(view.Filters[:i], view.Filters[i+1:]...)
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
regenAttrViewGroups(attrView, operation.ID)
|
regenAttrViewGroups(attrView, operation.ID)
|
||||||
err = av.SaveAttributeView(attrView)
|
err = av.SaveAttributeView(attrView)
|
||||||
return
|
return
|
||||||
|
|
@ -4710,7 +4737,7 @@ func updateAttributeViewColumnOption(operation *Operation) (err error) {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
||||||
// 如果存在选项对应的过滤器,需要更新过滤器中设置的选项值
|
// 如果存在选项对应的过滤条件,需要更新过滤条件中设置的选项值
|
||||||
// Database select field filters follow option editing changes https://github.com/siyuan-note/siyuan/issues/10881
|
// Database select field filters follow option editing changes https://github.com/siyuan-note/siyuan/issues/10881
|
||||||
for _, view := range attrView.Views {
|
for _, view := range attrView.Views {
|
||||||
for _, filter := range view.Filters {
|
for _, filter := range view.Filters {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue