mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-09-22 00:20:47 +02:00
Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
161dd7eb2a
3 changed files with 35 additions and 2 deletions
|
@ -19,6 +19,7 @@ package av
|
|||
import (
|
||||
"fmt"
|
||||
"math"
|
||||
"reflect"
|
||||
"sort"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
@ -807,6 +808,12 @@ func (r *ValueRollup) BuildContents(keyValues []*KeyValues, destKey *Key, relati
|
|||
if nil == destVal {
|
||||
continue
|
||||
}
|
||||
|
||||
if val := destVal.GetValByType(destKey.Type); nil == val || reflect.ValueOf(val).IsNil() {
|
||||
// 目标字段因为修改类型导致空值
|
||||
continue
|
||||
}
|
||||
|
||||
if KeyTypeNumber == destKey.Type {
|
||||
destVal.Number.Format = destKey.NumberFormat
|
||||
destVal.Number.FormatNumber()
|
||||
|
|
|
@ -724,7 +724,7 @@ func RenameAsset(oldPath, newName string) (newPath string, err error) {
|
|||
defer util.PushClearProgress()
|
||||
|
||||
newName = strings.TrimSpace(newName)
|
||||
newName = util.FilterFileName(newName)
|
||||
newName = util.FilterUploadFileName(newName)
|
||||
if path.Base(oldPath) == newName {
|
||||
return
|
||||
}
|
||||
|
|
|
@ -4086,7 +4086,33 @@ func updateAttributeViewColumn(operation *Operation) (err error) {
|
|||
}
|
||||
}
|
||||
|
||||
err = av.SaveAttributeView(attrView)
|
||||
if err = av.SaveAttributeView(attrView); nil != err {
|
||||
return
|
||||
}
|
||||
|
||||
if changeType {
|
||||
relatedAvIDs := av.GetSrcAvIDs(attrView.ID)
|
||||
for _, relatedAvID := range relatedAvIDs {
|
||||
destAv, _ := av.ParseAttributeView(relatedAvID)
|
||||
if nil == destAv {
|
||||
continue
|
||||
}
|
||||
|
||||
for _, keyValues := range destAv.KeyValues {
|
||||
if av.KeyTypeRollup == keyValues.Key.Type && keyValues.Key.Rollup.KeyID == operation.ID {
|
||||
// 置空关联过来的汇总
|
||||
for _, val := range keyValues.Values {
|
||||
val.Rollup.Contents = nil
|
||||
}
|
||||
keyValues.Key.Rollup.Calc = &av.RollupCalc{Operator: av.CalcOperatorNone}
|
||||
}
|
||||
}
|
||||
|
||||
regenAttrViewGroups(destAv, "force")
|
||||
av.SaveAttributeView(destAv)
|
||||
ReloadAttrView(destAv.ID)
|
||||
}
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue