Compare commits

...

2 Commits

Author SHA1 Message Date
hoteas 7b502fed36 数据库操作bug 2022-08-31 11:14:45 +08:00
hoteas fd6b15bdaf 修正查询bug 2022-08-30 06:21:46 +08:00
2 changed files with 18 additions and 14 deletions
+6 -11
View File
@@ -1016,7 +1016,7 @@ func (that *MakeCode) Search(table string, userData Map, req *http.Request, db *
if keywordTableStr != "" { if keywordTableStr != "" {
if keywordTableStr == v.GetString("name") { if keywordTableStr == v.GetString("name") {
keyword[table+"."+keywordTableStr+"[~]"] = keywordStr data[table+"."+keywordTableStr+"[~]"] = keywordStr
} }
if keywordTableStr == v.GetString("value") { if keywordTableStr == v.GetString("value") {
@@ -1026,7 +1026,7 @@ func (that *MakeCode) Search(table string, userData Map, req *http.Request, db *
childIds = append(childIds, cv.GetString("id")) childIds = append(childIds, cv.GetString("id"))
} }
if len(childIds) != 0 { if len(childIds) != 0 {
keyword[v.GetString("link")+".id"] = childIds data[v.GetString("link")+".id"] = childIds
} }
} }
continue continue
@@ -1143,17 +1143,12 @@ func (that *MakeCode) Search(table string, userData Map, req *http.Request, db *
data[k] = v data[k] = v
} }
} }
if len(keyword) > 1 { if len(keyword) > 1 {
if data["OR"] != nil {
if data["AND"] != nil { data = Map{"AND": data, "OR": keyword}
and := data.GetMap("AND")
for k, v := range keyword {
and[k] = v
}
//data = Map{"AND":Map{"OR": keyword} data, }
} else { } else {
data["AND"] = keyword data["OR"] = keyword
} }
} }
+12 -3
View File
@@ -165,8 +165,11 @@ func (that *HotimeDBBuilder) And(qu ...interface{}) *HotimeDBBuilder {
} }
if that.lastWhere != nil { if that.lastWhere != nil {
if that.lastWhere["AND"] != nil {
where["AND"] = that.lastWhere["AND"]
}
that.lastWhere["AND"] = where that.lastWhere["AND"] = where
that.lastWhere = where //that.lastWhere = where
return that return that
} }
that.lastWhere = where that.lastWhere = where
@@ -196,8 +199,11 @@ func (that *HotimeDBBuilder) Or(qu ...interface{}) *HotimeDBBuilder {
} }
if that.lastWhere != nil { if that.lastWhere != nil {
if that.lastWhere["OR"] != nil {
where["OR"] = that.lastWhere["OR"]
}
that.lastWhere["OR"] = where that.lastWhere["OR"] = where
that.lastWhere = where //that.lastWhere = where
return that return that
} }
that.lastWhere = where that.lastWhere = where
@@ -228,8 +234,11 @@ func (that *HotimeDBBuilder) Where(qu ...interface{}) *HotimeDBBuilder {
} }
if that.lastWhere != nil { if that.lastWhere != nil {
if that.lastWhere["AND"] != nil {
where["AND"] = that.lastWhere["AND"]
}
that.lastWhere["AND"] = where that.lastWhere["AND"] = where
that.lastWhere = where //that.lastWhere = where
return that return that
} }
that.lastWhere = where that.lastWhere = where