diff --git a/planner/pce/cs/xlsx.go b/planner/pce/cs/xlsx.go index b407d41..a45c36c 100644 --- a/planner/pce/cs/xlsx.go +++ b/planner/pce/cs/xlsx.go @@ -194,7 +194,7 @@ func (slf *Xlsx) checkFieldInvalid(field pce.DataField) bool { return true } - if strings.HasPrefix(field.Name, "#") || strings.HasPrefix(field.Type, "#") { + if strings.HasPrefix(field.Name, "#") || strings.HasPrefix(field.Type, "#") || strings.HasPrefix(field.Desc, "#") { return true } diff --git a/planner/pce/exporter/exporter.exe b/planner/pce/exporter/exporter.exe index 11c332c..4093dbd 100644 Binary files a/planner/pce/exporter/exporter.exe and b/planner/pce/exporter/exporter.exe differ diff --git a/planner/pce/tmpls/golang.go b/planner/pce/tmpls/golang.go index 6d0f400..4144bd6 100644 --- a/planner/pce/tmpls/golang.go +++ b/planner/pce/tmpls/golang.go @@ -29,6 +29,7 @@ func (slf *Golang) Render(templates ...*pce.TmplStruct) (string, error) { "github.com/kercylan98/minotaur/utils/log" "github.com/kercylan98/minotaur/utils/hash" "sync" + "sync/atomic" ) type Sign string @@ -41,7 +42,7 @@ func (slf *Golang) Render(templates ...*pce.TmplStruct) (string, error) { var ( json = jsonIter.ConfigCompatibleWithStandardLibrary - configs map[Sign]any + configs atomic.Pointer[map[Sign]any] signs = []Sign{ {{- range .Templates}} {{.Name}}Sign, @@ -188,14 +189,14 @@ func (slf *Golang) Render(templates ...*pce.TmplStruct) (string, error) { cs[{{.Name}}Sign] = {{.Name}} {{- end}} - configs = cs + configs.Store(&cs) } // GetConfigs 获取所有配置 func GetConfigs() map[Sign]any { mutex.Lock() defer mutex.Unlock() - return hash.Copy(configs) + return hash.Copy(*configs.Load()) } // GetConfigSigns 获取所有配置的标识 @@ -207,7 +208,7 @@ func (slf *Golang) Render(templates ...*pce.TmplStruct) (string, error) { func Sync(handle func(configs map[Sign]any)) { mutex.Lock() defer mutex.Unlock() - handle(hash.Copy(configs)) + handle(hash.Copy(*configs.Load())) } `, slf) }