This commit is contained in:
2023-10-10 16:38:54 +08:00
parent fba9d244bb
commit 08b3a775f1
2 changed files with 103 additions and 82 deletions

View File

@@ -766,7 +766,7 @@ func PostNeServiceAction(w http.ResponseWriter, r *http.Request) {
neTypeLower := strings.ToLower(neType) neTypeLower := strings.ToLower(neType)
action := vars["action"] action := vars["action"]
neId := services.GetUriParamString(r, "ne_id", ",", false, false) neId := services.GetUriParamString(r, "neId", ",", false, false)
// neInfo := new(dborm.NeInfo) // neInfo := new(dborm.NeInfo)
neInfo, err := dborm.XormGetNeInfo(neType, neId) neInfo, err := dborm.XormGetNeInfo(neType, neId)
@@ -852,7 +852,7 @@ func PostNeInstanceAction(w http.ResponseWriter, r *http.Request) {
//neTypeLower := strings.ToLower(neType) //neTypeLower := strings.ToLower(neType)
action := vars["action"] action := vars["action"]
neId := services.GetUriParamString(r, "ne_id", ",", false, false) neId := services.GetUriParamString(r, "neId", ",", false, false)
// neInfo := new(dborm.NeInfo) // neInfo := new(dborm.NeInfo)
neInfo, err := dborm.XormGetNeInfo(neType, neId) neInfo, err := dborm.XormGetNeInfo(neType, neId)

View File

@@ -5,7 +5,6 @@ import (
"fmt" "fmt"
"os" "os"
"reflect" "reflect"
"strconv"
"gopkg.in/yaml.v3" "gopkg.in/yaml.v3"
) )
@@ -52,7 +51,7 @@ func GetYamlConfig() *YamlConfig {
return &yamlConfig return &yamlConfig
} }
var mapYaml map[string]interface{} //var mapYaml map[string]interface{}
func ReadParamConfig(fileName string) *map[string]interface{} { func ReadParamConfig(fileName string) *map[string]interface{} {
file, err := os.ReadFile(fileName) file, err := os.ReadFile(fileName)
@@ -60,7 +59,17 @@ func ReadParamConfig(fileName string) *map[string]interface{} {
fmt.Println("yamlFile.Get err", err) fmt.Println("yamlFile.Get err", err)
} }
mapYaml = make(map[string]interface{}) mapYaml := make(map[string]interface{})
// var node yaml.Node
// err = yaml.Unmarshal(file, &node)
// if err != nil {
// fmt.Printf("yaml.Unmarshal: %v when to struct", err)
// }
// err = unmarshalNode(&node, &mapYaml)
// if err != nil {
// fmt.Println("Failed to unmarshalNode:", err)
// }
// var node yaml.Node // var node yaml.Node
// err = yaml.Unmarshal(file, &node) // err = yaml.Unmarshal(file, &node)
@@ -135,91 +144,102 @@ func init() {
fmt.Println("pfiles:", pfiles) fmt.Println("pfiles:", pfiles)
} }
// func unmarshalNode(node *yaml.Node, out interface{}) error { func unmarshalNode(node *yaml.Node, out interface{}) error {
// switch node.Kind { switch node.Kind {
// case yaml.DocumentNode: case yaml.DocumentNode:
// return unmarshalNode(node.Content[0], out) return unmarshalNode(node.Content[0], out)
// case yaml.MappingNode: case yaml.MappingNode:
// m := nodeToMap(node) m := nodeToMap(node)
// return unmarshalMap(m, out) return unmarshalMap(m, out)
// case yaml.SequenceNode: case yaml.SequenceNode:
// s := nodeToSlice(node) s := nodeToSlice(node)
// return unmarshalSlice(s, out) return unmarshalSlice(s, out)
// case yaml.ScalarNode: case yaml.ScalarNode:
// return unmarshalScalar(node, out) return unmarshalScalar(node, out)
// default: default:
// return fmt.Errorf("unknown node kind: %v", node.Kind) return fmt.Errorf("unknown node kind: %v", node.Kind)
// } }
// } }
// func nodeToMap(node *yaml.Node) map[string]*yaml.Node { func nodeToMap(node *yaml.Node) map[string]*yaml.Node {
// m := make(map[string]*yaml.Node) m := make(map[string]*yaml.Node)
// for i := 0; i < len(node.Content); i += 2 { for i := 0; i < len(node.Content); i += 2 {
// key := node.Content[i].Value key := node.Content[i].Value
// value := node.Content[i+1] value := node.Content[i+1]
// m[key] = value m[key] = value
// } }
// return m return m
// } }
// func unmarshalMap(m map[string]*yaml.Node, out interface{}) error { func unmarshalMap(m map[string]*yaml.Node, out interface{}) error {
// data, ok := out.(*map[string]interface{}) data, ok := out.(*map[string]interface{})
// if !ok { if !ok {
// return fmt.Errorf("out must be a map[string]interface{}") return fmt.Errorf("out must be a map[string]interface{}")
// } }
// *data = make(map[string]interface{}) *data = make(map[string]interface{})
// for key, value := range m { for key, value := range m {
// var v interface{} var v interface{}
// err := unmarshalNode(value, &v) err := unmarshalNode(value, &v)
// if err != nil { if err != nil {
// return err return err
// } }
// (*data)[key] = v (*data)[key] = v
// } }
// return nil return nil
// } }
// func nodeToSlice(node *yaml.Node) []*yaml.Node { func nodeToSlice(node *yaml.Node) []*yaml.Node {
// return node.Content return node.Content
// } }
// func unmarshalSlice(s []*yaml.Node, out interface{}) error { func unmarshalSlice(s []*yaml.Node, out interface{}) error {
// data, ok := out.(*[]interface{}) data, ok := out.(*[]interface{})
// if !ok { if !ok {
// return fmt.Errorf("out must be a []interface{}") return fmt.Errorf("out must be a []interface{}")
// } }
// *data = make([]interface{}, len(s)) *data = make([]interface{}, len(s))
// for i, value := range s { for i, value := range s {
// var v interface{} var v interface{}
// err := unmarshalNode(value, &v) err := unmarshalNode(value, &v)
// if err != nil { if err != nil {
// return err return err
// } }
// (*data)[i] = v (*data)[i] = v
// } }
// return nil return nil
// } }
// func unmarshalScalar(node *yaml.Node, out interface{}) error { func unmarshalScalar(node *yaml.Node, out interface{}) error {
// switch node.Tag { switch node.Tag {
// case "!!str": case "!!str":
// *out = node.Value val := reflect.ValueOf(node.Value)
// case "!!int": val.Elem().Set(reflect.ValueOf(out))
// *out = node.Value //*out = node.Value
// case "!!float": case "!!int":
// *out = node.Value val := reflect.ValueOf(node.Value)
// case "!!bool": val.Elem().Set(reflect.ValueOf(out))
// *out = node.Value == "true" //*out = node.Value
// case "!!null": case "!!float":
// *out = nil val := reflect.ValueOf(node.Value)
// default: val.Elem().Set(reflect.ValueOf(out))
// return fmt.Errorf("unknown scalar tag: %v", node.Tag) //*out = node.Value
// } case "!!bool":
// return nil val := reflect.ValueOf(node.Value == "true")
// } val.Elem().Set(reflect.ValueOf(out))
//*out = node.Value == "true"
case "!!null":
val := reflect.ValueOf(node.Value)
val.Elem().Set(reflect.ValueOf(out))
//*out = nil
default:
return fmt.Errorf("unknown scalar tag: %v", node.Tag)
}
return nil
}
/*
func unmarshalNode(node *yaml.Node, out reflect.Value) error { func unmarshalNode(node *yaml.Node, out reflect.Value) error {
switch node.Kind { switch node.Kind {
case yaml.DocumentNode: case yaml.DocumentNode:
@@ -352,3 +372,4 @@ func unmarshalScalar(node *yaml.Node, out reflect.Value) error {
} }
return nil return nil
} }
*/