🎨 Improve the database rollup and asset field filtering https://github.com/siyuan-note/siyuan/issues/16126

Signed-off-by: Daniel <845765@qq.com>
This commit is contained in:
Daniel 2025-10-18 11:52:57 +08:00
parent bb4da0232c
commit d8aee1ea4f
No known key found for this signature in database
GPG key ID: 86211BA83DF03017

View file

@ -243,6 +243,10 @@ func (value *Value) Filter(filter *ViewFilter, attrView *AttributeView, itemID s
}
}
if 1 > len(filter.Value.Rollup.Contents) {
return true
}
for _, content := range value.Rollup.Contents {
if content.filter(filter.Value.Rollup.Contents[0], filter.RelativeDate, filter.RelativeDate2, filter.Operator) {
return false
@ -326,6 +330,10 @@ func (value *Value) Filter(filter *ViewFilter, attrView *AttributeView, itemID s
return false
}
if nil == filter.Value || 1 > len(filter.Value.MAsset) {
return true
}
for _, asset := range value.MAsset {
switch asset.Type {
case AssetTypeFile:
@ -364,6 +372,10 @@ func (value *Value) Filter(filter *ViewFilter, attrView *AttributeView, itemID s
return true
}
if nil == filter.Value || 1 > len(filter.Value.MAsset) {
return true
}
for _, asset := range value.MAsset {
switch asset.Type {
case AssetTypeFile:
@ -403,6 +415,10 @@ func (value *Value) Filter(filter *ViewFilter, attrView *AttributeView, itemID s
return true
}
if nil == filter.Value || 1 > len(filter.Value.MAsset) {
return true
}
for _, asset := range value.MAsset {
switch asset.Type {
case AssetTypeFile: