|
@@ -1384,28 +1384,28 @@ func funcAnalysis(j *ju.Job) (*map[string]interface{}, map[string][]*ju.ExtField
|
|
values := map[string][]*ju.SortObject{}
|
|
values := map[string][]*ju.SortObject{}
|
|
for key, val := range result {
|
|
for key, val := range result {
|
|
fieldValue := map[string][]interface{}{}
|
|
fieldValue := map[string][]interface{}{}
|
|
- cfscore := make(map[string]float64) //重复匹配加分
|
|
|
|
|
|
+ //cfscore := make(map[string]float64) //重复匹配加分
|
|
if iscore { //走打分
|
|
if iscore { //走打分
|
|
for _, v := range val {
|
|
for _, v := range val {
|
|
if len(fmt.Sprint(v.Value)) < 1 {
|
|
if len(fmt.Sprint(v.Value)) < 1 {
|
|
continue //去除空串
|
|
continue //去除空串
|
|
}
|
|
}
|
|
- if v.Score >0 {
|
|
|
|
- cfscore[fmt.Sprint(v.Value)] += 1
|
|
|
|
- }
|
|
|
|
|
|
+ //if v.Score >0 {
|
|
|
|
+ // cfscore[fmt.Sprint(v.Value)] += 1
|
|
|
|
+ //}
|
|
if fieldValue[fmt.Sprint(v.Value)+v.Type] == nil {
|
|
if fieldValue[fmt.Sprint(v.Value)+v.Type] == nil {
|
|
fieldValue[fmt.Sprint(v.Value)+v.Type] = []interface{}{v.Score, v.Value}
|
|
fieldValue[fmt.Sprint(v.Value)+v.Type] = []interface{}{v.Score, v.Value}
|
|
} else if fieldValue[fmt.Sprint(v.Value)+v.Type][0].(float64) < v.Score {
|
|
} else if fieldValue[fmt.Sprint(v.Value)+v.Type][0].(float64) < v.Score {
|
|
fieldValue[fmt.Sprint(v.Value)+v.Type][0] = v.Score
|
|
fieldValue[fmt.Sprint(v.Value)+v.Type][0] = v.Score
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- for key := range fieldValue {
|
|
|
|
- for cfkey, cfv := range cfscore {
|
|
|
|
- if strings.Contains(key, cfkey) {
|
|
|
|
- fieldValue[key][0] = fieldValue[key][0].(float64) + cfv
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ //for key := range fieldValue {
|
|
|
|
+ // for cfkey, cfv := range cfscore {
|
|
|
|
+ // if strings.Contains(key, cfkey) {
|
|
|
|
+ // fieldValue[key][0] = fieldValue[key][0].(float64) + cfv
|
|
|
|
+ // }
|
|
|
|
+ // }
|
|
|
|
+ //}
|
|
} else { //不走打分,按出现频次
|
|
} else { //不走打分,按出现频次
|
|
for _, v := range val {
|
|
for _, v := range val {
|
|
if len(fmt.Sprint(v.Value)) < 1 {
|
|
if len(fmt.Sprint(v.Value)) < 1 {
|