Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
Vanessa 2025-08-06 16:41:49 +08:00
commit 10f31a9274
2 changed files with 12 additions and 3 deletions

View file

@ -53,12 +53,13 @@ func getAttributeViewAddingBlockDefaultValues(c *gin.Context) {
addingBlockID = arg["addingBlockID"].(string)
}
values := model.GetAttrViewAddingBlockDefaultValues(avID, viewID, groupID, previousID, addingBlockID)
values, ignore := model.GetAttrViewAddingBlockDefaultValues(avID, viewID, groupID, previousID, addingBlockID)
if 1 > len(values) {
values = nil
}
ret.Data = map[string]interface{}{
"values": values,
"ignore": ignore,
}
}

View file

@ -44,7 +44,7 @@ import (
"github.com/xrash/smetrics"
)
func GetAttrViewAddingBlockDefaultValues(avID, viewID, groupID, previousBlockID, addingBlockID string) (ret map[string]*av.Value) {
func GetAttrViewAddingBlockDefaultValues(avID, viewID, groupID, previousBlockID, addingBlockID string) (ret map[string]*av.Value, ignore bool) {
ret = map[string]*av.Value{}
attrView, err := av.ParseAttributeView(avID)
@ -59,6 +59,12 @@ func GetAttrViewAddingBlockDefaultValues(avID, viewID, groupID, previousBlockID,
return
}
if 1 > len(view.Filters) && nil == view.Group {
// 没有过滤条件也没有分组条件时忽略
ignore = true
return
}
groupView := view
if "" != groupID {
groupView = view.GetGroup(groupID)
@ -67,7 +73,9 @@ func GetAttrViewAddingBlockDefaultValues(avID, viewID, groupID, previousBlockID,
logging.LogErrorf("group [%s] not found in view [%s] of attribute view [%s]", groupID, viewID, avID)
return
}
return getAttrViewAddingBlockDefaultValues(attrView, view, groupView, previousBlockID, addingBlockID)
ret = getAttrViewAddingBlockDefaultValues(attrView, view, groupView, previousBlockID, addingBlockID)
return
}
func getAttrViewAddingBlockDefaultValues(attrView *av.AttributeView, view, groupView *av.View, previousBlockID, addingBlockID string) (ret map[string]*av.Value) {