This commit is contained in:
Daniel 2025-07-01 22:42:48 +08:00
parent b357047290
commit 17c59cb2ca
No known key found for this signature in database
GPG key ID: 86211BA83DF03017
11 changed files with 64 additions and 69 deletions

View file

@ -187,7 +187,7 @@ func RenderTemplateField(ial map[string]string, keyValues []*av.KeyValues, tplCo
return
}
func generateAttrViewItems(attrView *av.AttributeView) (ret map[string][]*av.KeyValues) {
func generateAttrViewItems(attrView *av.AttributeView, view *av.View) (ret map[string][]*av.KeyValues) {
ret = map[string][]*av.KeyValues{}
for _, keyValues := range attrView.KeyValues {
for _, val := range keyValues.Values {
@ -200,6 +200,17 @@ func generateAttrViewItems(attrView *av.AttributeView) (ret map[string][]*av.Key
ret[val.BlockID] = values
}
}
// 如果是分组视图,则需要过滤掉不在分组中的项目
if 0 < len(view.GroupItemIDs) {
tmp := map[string][]*av.KeyValues{}
for _, groupItemID := range view.GroupItemIDs {
if _, ok := ret[groupItemID]; ok {
tmp[groupItemID] = ret[groupItemID]
}
}
ret = tmp
}
return
}