diff --git a/kernel/av/av.go b/kernel/av/av.go index 93b5bb015..97fc828f0 100644 --- a/kernel/av/av.go +++ b/kernel/av/av.go @@ -267,6 +267,12 @@ func SaveAttributeView(av *AttributeView) (err error) { } } } + + for _, v := range kv.Values { + if "" == v.KeyID { + v.KeyID = kv.Key.ID + } + } } // 数据订正 diff --git a/kernel/av/filter.go b/kernel/av/filter.go index 24a1c7f65..878983ee5 100644 --- a/kernel/av/filter.go +++ b/kernel/av/filter.go @@ -141,11 +141,11 @@ func (filter *ViewFilter) GetAffectValue(key *Key) (ret *Value) { switch filter.Operator { case FilterOperatorIsEqual, FilterOperatorContains: if 0 < len(filter.Value.MSelect) { - ret.MSelect = []*ValueSelect{{Content: filter.Value.MSelect[0].Content}} + ret.MSelect = []*ValueSelect{{Content: filter.Value.MSelect[0].Content, Color: filter.Value.MSelect[0].Color}} } case FilterOperatorIsNotEqual, FilterOperatorDoesNotContain: if 0 < len(filter.Value.MSelect) { - ret.MSelect = []*ValueSelect{{Content: filter.Value.MSelect[0].Content + " Untitled"}} + ret.MSelect = []*ValueSelect{{Content: filter.Value.MSelect[0].Content + " Untitled", Color: "1"}} } case FilterOperatorIsEmpty: ret.MSelect = []*ValueSelect{} diff --git a/kernel/model/attribute_view.go b/kernel/model/attribute_view.go index b8a23b5bb..f82705c70 100644 --- a/kernel/model/attribute_view.go +++ b/kernel/model/attribute_view.go @@ -1520,6 +1520,7 @@ func addAttributeViewBlock(blockID string, operation *Operation, tree *parse.Tre newValue.IsDetached = operation.IsDetached values, _ := attrView.GetKeyValues(filter.Column) values.Values = append(values.Values, newValue) + break } } } @@ -1533,10 +1534,11 @@ func addAttributeViewBlock(blockID string, operation *Operation, tree *parse.Tre if keyValues.Key.ID == filter.Column { newValue := filter.GetAffectValue(keyValues.Key) newValue.ID = ast.NewNodeID() + newValue.KeyID = keyValues.Key.ID newValue.BlockID = blockID newValue.IsDetached = operation.IsDetached - values, _ := attrView.GetKeyValues(filter.Column) - values.Values = append(values.Values, newValue) + keyValues.Values = append(keyValues.Values, newValue) + break } } }