mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-27 20:08:49 +01:00
This commit is contained in:
parent
778929ddde
commit
00df78768b
9 changed files with 153 additions and 229 deletions
|
|
@ -17,14 +17,69 @@
|
|||
package av
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"github.com/88250/lute/ast"
|
||||
"github.com/siyuan-note/logging"
|
||||
"github.com/siyuan-note/siyuan/kernel/util"
|
||||
"time"
|
||||
)
|
||||
|
||||
func UpgradeSpec(av *AttributeView) {
|
||||
upgradeSpec1(av)
|
||||
upgradeSpec2(av)
|
||||
}
|
||||
|
||||
func upgradeSpec2(av *AttributeView) {
|
||||
if 2 <= av.Spec {
|
||||
return
|
||||
}
|
||||
|
||||
// 如果存在 view.table.filters/sorts/pageSize 则复制覆盖到 view.filters/sorts/pageSize 下后置空
|
||||
for _, view := range av.Views {
|
||||
if 1 > len(view.Filters) {
|
||||
view.Filters = []*ViewFilter{}
|
||||
}
|
||||
if 1 > len(view.Sorts) {
|
||||
view.Sorts = []*ViewSort{}
|
||||
}
|
||||
if 1 > view.PageSize {
|
||||
view.PageSize = ViewDefaultPageSize
|
||||
}
|
||||
|
||||
if nil != view.Table {
|
||||
if 0 < len(view.Table.Filters) {
|
||||
view.Filters = append(view.Filters, view.Table.Filters...)
|
||||
view.Table.Filters = nil
|
||||
}
|
||||
if 0 < len(view.Table.Sorts) {
|
||||
view.Sorts = append(view.Sorts, view.Table.Sorts...)
|
||||
view.Table.Sorts = nil
|
||||
}
|
||||
if 0 < view.Table.PageSize {
|
||||
view.PageSize = view.Table.PageSize
|
||||
view.Table.PageSize = 0
|
||||
}
|
||||
}
|
||||
|
||||
// 清理过滤和排序规则中不存在的键
|
||||
tmpFilters := []*ViewFilter{}
|
||||
for _, f := range view.Filters {
|
||||
if k, _ := av.GetKey(f.Column); nil != k {
|
||||
tmpFilters = append(tmpFilters, f)
|
||||
}
|
||||
}
|
||||
view.Filters = tmpFilters
|
||||
|
||||
tmpSorts := []*ViewSort{}
|
||||
for _, s := range view.Sorts {
|
||||
if k, _ := av.GetKey(s.Column); nil != k {
|
||||
tmpSorts = append(tmpSorts, s)
|
||||
}
|
||||
}
|
||||
view.Sorts = tmpSorts
|
||||
}
|
||||
|
||||
av.Spec = 2
|
||||
}
|
||||
|
||||
func upgradeSpec1(av *AttributeView) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue