package api_proxy import ( "DataShare/util/gabs" "encoding/json" "errors" "fmt" "os" "strconv" "sync" ) type CQGov struct{ } var histance_gov *CQGov var once_gov sync.Once func GetInstance() *CQGov{ once_gov.Do(func() { histance_gov = &CQGov{} }) return histance_gov } //政务数据格式转换到资源数据格式 func GovDataFormatToResource(govData []byte)(map[string]interface{},[]byte,error) { govContainer,err := gabs.ParseJSON(govData) if err != nil { return nil,nil,err } //result obj resultObj1,err := govContainer.JSONPointer("/result") if err != nil { return nil,nil,errors.New(fmt.Sprintf("result field faield,err:%s", err.Error())) } if resultObj1 == nil { return nil,nil,errors.New("数据集是空的") } result:= resultObj1.String() mapResult := make(map[string]interface{},0) json.Unmarshal([]byte(result),&mapResult) //组装columns mapColumns := make([]map[string]interface{},0) children := govContainer.S("field").Children() for i:=0;i