张金坤 před 8 roky
rodič
revize
4612e262c9
1 změnil soubory, kde provedl 13 přidání a 13 odebrání
  1. 13 13
      common/src/qfw/util/elastic/elasticutil.go

+ 13 - 13
common/src/qfw/util/elastic/elasticutil.go

@@ -914,8 +914,8 @@ const (
 	HL           = `"highlight": {"pre_tags": [""],"post_tags": [""],"fields": {%s}}`
 	highlightStr = `%s: {"fragment_size": %d,"number_of_fragments": 1}`
 
-	FilterQuery_New  = `{"query":{"bool":{"must": [%s%s],"should":[%s]}}}`
-	FiledQueryString = `{"query_string": {"default_field": %s,"query": "%s"}}`
+	FilterQuery_New  = `{"query":{"bool":{"must": [%s],"should":[%s%s]}}}`
+	MatchQueryString = `{"match": {%s: { "query":"%s", "operator": "and"}}}`
 )
 
 func GetNgramQuery(query interface{}, mustquery, findfields string) (qstr string) {
@@ -977,32 +977,32 @@ func GetNgramQuery_New(querystring, querymust interface{}, must, findfields stri
 
 	//querystring---------------------------------------------
 	query_string := ""
-	var querysMust []string
+	var querysShold []string
 	if q, ok := querystring.(string); ok {
 		if q != "" {
-			querysMust = strings.Split(q, ",")
+			querysShold = strings.Split(q, ",")
 		}
 	} else if q, ok := querystring.([]string); ok {
-		querysMust = q
+		querysShold = q
 	} else if q, ok := querystring.([]interface{}); ok {
-		querysMust = util.ObjArrToStringArr(q)
+		querysShold = util.ObjArrToStringArr(q)
 	}
-	if querysMust != nil {
+	if querysShold != nil {
 		for k, name := range strings.Split(findfields, ",") {
-			for _, qs_querysMust := range querysMust {
+			for _, qs_querysShold := range querysShold {
 				if k > 0 {
-					query_string = query_string + "," + fmt.Sprintf(FiledQueryString, fmt.Sprint(name), qs_querysMust)
+					query_string = query_string + "," + fmt.Sprintf(MatchQueryString, fmt.Sprint(name), qs_querysShold)
 				} else {
-					query_string = query_string + fmt.Sprintf(FiledQueryString, fmt.Sprint(name), qs_querysMust)
+					query_string = query_string + fmt.Sprintf(MatchQueryString, fmt.Sprint(name), qs_querysShold)
 				}
 			}
 		}
 	}
 	//log.Println("querystring", query_string)
-	if must == "" {
-		qstring = fmt.Sprintf(FilterQuery_New, query_string, must, querymust_string)
+	if querymust_string == "" {
+		qstring = fmt.Sprintf(FilterQuery_New, must, query_string, querymust_string)
 	} else {
-		qstring = fmt.Sprintf(FilterQuery_New, query_string, ","+must, querymust_string)
+		qstring = fmt.Sprintf(FilterQuery_New, must, query_string, ","+querymust_string)
 	}
 	return
 }