|
@@ -73,6 +73,7 @@ func UtilEsFind1(tags map[string]interface{}) (error, int64) {
|
|
defer util.Catch()
|
|
defer util.Catch()
|
|
ch := make(chan bool, 20)
|
|
ch := make(chan bool, 20)
|
|
wg := &sync.WaitGroup{}
|
|
wg := &sync.WaitGroup{}
|
|
|
|
+ arrsync := &sync.RWMutex{}
|
|
sdataid := util.ObjToString(tags["s_dataid"])
|
|
sdataid := util.ObjToString(tags["s_dataid"])
|
|
esquery := util.ObjToString(tags["s_esquery"])
|
|
esquery := util.ObjToString(tags["s_esquery"])
|
|
clearKey := util.ObjToString(tags["s_globalclearkey"])
|
|
clearKey := util.ObjToString(tags["s_globalclearkey"])
|
|
@@ -118,14 +119,17 @@ func UtilEsFind1(tags map[string]interface{}) (error, int64) {
|
|
go func(tmpHit *es.SearchHit) {
|
|
go func(tmpHit *es.SearchHit) {
|
|
defer func() {
|
|
defer func() {
|
|
<-ch
|
|
<-ch
|
|
|
|
+ arrsync.Unlock()
|
|
wg.Done()
|
|
wg.Done()
|
|
}()
|
|
}()
|
|
|
|
+ arrsync.Lock()
|
|
item := make(map[string]interface{})
|
|
item := make(map[string]interface{})
|
|
if json.Unmarshal(*tmpHit.Source, &item) == nil {
|
|
if json.Unmarshal(*tmpHit.Source, &item) == nil {
|
|
item["appid"] = tags["appid"]
|
|
item["appid"] = tags["appid"]
|
|
- item["info_id"] = item["_id"]
|
|
|
|
|
|
+ info_id := util.ObjToString(item["_id"])
|
|
|
|
+ item["info_id"] = info_id
|
|
item["s_dataid"] = sdataid
|
|
item["s_dataid"] = sdataid
|
|
- item["s_jyhref"] = fmt.Sprintf(Url, util.CommonEncodeArticle("content", v.Id))
|
|
|
|
|
|
+ item["s_jyhref"] = fmt.Sprintf(Url, util.CommonEncodeArticle("content", info_id))
|
|
item["i_createtime"] = time.Now().Unix()
|
|
item["i_createtime"] = time.Now().Unix()
|
|
delete(item, "_id")
|
|
delete(item, "_id")
|
|
//清理词清空
|
|
//清理词清空
|
|
@@ -198,9 +202,30 @@ func UtilEsFind1(tags map[string]interface{}) (error, int64) {
|
|
// ssavekeys = append(ssavekeys, k)
|
|
// ssavekeys = append(ssavekeys, k)
|
|
// }
|
|
// }
|
|
matchKeys := GetMactchKey(maths, item)
|
|
matchKeys := GetMactchKey(maths, item)
|
|
- if matchKeys != "" {
|
|
|
|
- item["s_matchkey"] = matchKeys
|
|
|
|
- // item["s_matchtype"] = strings.Join(matchType, ",")
|
|
|
|
|
|
+ if len(maths) > 0 {
|
|
|
|
+ if matchKeys != "" {
|
|
|
|
+ item["s_matchkey"] = matchKeys
|
|
|
|
+ // item["s_matchtype"] = strings.Join(matchType, ",")
|
|
|
|
+ findwinner := strings.TrimSpace(util.ObjToString(item["winner"]))
|
|
|
|
+ if findwinner != "" {
|
|
|
|
+ finddata := MgoEnps.FindOne(EnpsColl, bson.M{"company_name": findwinner})
|
|
|
|
+ if finddata != nil {
|
|
|
|
+ if legal_person := util.ObjToString(finddata["legal_person"]); legal_person != "" {
|
|
|
|
+ item["legal_person"] = legal_person
|
|
|
|
+ }
|
|
|
|
+ if email := util.ObjToString(finddata["company_email"]); email != "" {
|
|
|
|
+ item["company_email"] = email
|
|
|
|
+ }
|
|
|
|
+ if phone := util.ObjToString(finddata["company_phone"]); phone != "" {
|
|
|
|
+ item["company_phone"] = phone
|
|
|
|
+ }
|
|
|
|
+ item["qyk"] = finddata
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ datas = append(datas, item)
|
|
|
|
+ log.Println("id", item["info_id"])
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
findwinner := strings.TrimSpace(util.ObjToString(item["winner"]))
|
|
findwinner := strings.TrimSpace(util.ObjToString(item["winner"]))
|
|
if findwinner != "" {
|
|
if findwinner != "" {
|
|
finddata := MgoEnps.FindOne(EnpsColl, bson.M{"company_name": findwinner})
|
|
finddata := MgoEnps.FindOne(EnpsColl, bson.M{"company_name": findwinner})
|
|
@@ -219,8 +244,6 @@ func UtilEsFind1(tags map[string]interface{}) (error, int64) {
|
|
}
|
|
}
|
|
datas = append(datas, item)
|
|
datas = append(datas, item)
|
|
log.Println("id", item["info_id"])
|
|
log.Println("id", item["info_id"])
|
|
- } else {
|
|
|
|
- return
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}(v)
|
|
}(v)
|