|
@@ -12,14 +12,19 @@ name 名称
|
|
|
limit 取几条
|
|
|
*/
|
|
|
func GetEenNameImmediate(name string, limit int) []map[string]interface{} {
|
|
|
- //query := `{"term":{"winner":"` + name + `"}}`
|
|
|
- list := *elastic.GetByNgram(
|
|
|
- "winner", "winner",
|
|
|
- name, ``,
|
|
|
- `"winner"`,
|
|
|
- ``,
|
|
|
- `"winner"`,
|
|
|
- 0, limit)
|
|
|
+ query := `{"query": {
|
|
|
+ "bool": {
|
|
|
+ "must_not":[{"term": {"winnersign": "1"}}],
|
|
|
+ "should": [{
|
|
|
+ "bool": {"must": [{"multi_match": {"query": "` + name + `", "type": "phrase","fields": ["name"], "analyzer": "my_ngram"}}]}
|
|
|
+ }],
|
|
|
+ "minimum_should_match": 1
|
|
|
+ }
|
|
|
+ },
|
|
|
+ "_source": ["name"],
|
|
|
+ "from": 0,"size": ` + fmt.Sprint(limit) + `
|
|
|
+ }`
|
|
|
+ list := *elastic.Get("winner", "winner", query)
|
|
|
return list
|
|
|
}
|
|
|
|
|
@@ -39,7 +44,7 @@ func GetProjectByEntName(entname string, area string, lower, upper, pagenum, pag
|
|
|
list := *elastic.GetByNgram(
|
|
|
"projectset", "projectset",
|
|
|
entname, mastquery,
|
|
|
- `"winner"`,
|
|
|
+ `"name"`,
|
|
|
`{"createtime":-1}`, ``, (pagenum-1)*pagesize, pagesize,
|
|
|
)
|
|
|
return list
|