|
@@ -15,6 +15,8 @@ var AgencyReg = []*regexp.Regexp{
|
|
|
regexp.MustCompile(".{2,15}((招标)?代理|咨询|政府采购)"),
|
|
|
}
|
|
|
|
|
|
+var xjbtReg *regexp.Regexp = regexp.MustCompile("^(新疆生产建设兵团|新疆兵团)")
|
|
|
+
|
|
|
//抽取city
|
|
|
func (e *ExtractTask) NewExtractCity(j *ju.Job, resulttmp *map[string]interface{}, id string) {
|
|
|
/*
|
|
@@ -170,6 +172,16 @@ func (e *ExtractTask) NewExtractCity(j *ju.Job, resulttmp *map[string]interface{
|
|
|
(*resulttmp)["area"] = arearesult
|
|
|
(*resulttmp)["city"] = cityresult
|
|
|
(*resulttmp)["district"] = districtresult
|
|
|
+
|
|
|
+ //校验-映射新疆兵团
|
|
|
+ if xjbtReg.MatchString(buyer) && cityresult=="" {
|
|
|
+ a,c,d,ok := e.CheckingXjbtCity(buyer)
|
|
|
+ if ok {
|
|
|
+ (*resulttmp)["area"] = a
|
|
|
+ (*resulttmp)["city"] = c
|
|
|
+ (*resulttmp)["district"] = d
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//jsondata中抽取城市
|
|
@@ -921,6 +933,46 @@ func (e *ExtractTask) RemoveCD(finishP []string, j *ju.Job) {
|
|
|
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+//-新疆兵团映射-
|
|
|
+func(e *ExtractTask) CheckingXjbtCity(buyer string) (new_a,new_c,new_d string,ok bool){
|
|
|
+ buyer = strings.ReplaceAll(buyer,"新疆兵团","新疆生产建设兵团")
|
|
|
+ ok = false
|
|
|
+ for _,info := range e.XjbtCityArr{
|
|
|
+ name := qu.ObjToString(info["name"])
|
|
|
+ alias := qu.ObjToString(info["alias"])
|
|
|
+ if strings.Contains(buyer,name) || strings.Contains(buyer,alias) {
|
|
|
+ new_a = qu.ObjToString(info["area"])
|
|
|
+ new_c = qu.ObjToString(info["city"])
|
|
|
+ new_d = qu.ObjToString(info["district"])
|
|
|
+ ok = true
|
|
|
+ if res,ok := info["list"].([]interface{});ok {
|
|
|
+ list := qu.ObjArrToMapArr(res)
|
|
|
+ for _,c := range list {
|
|
|
+ c_name := qu.ObjToString(c["name"])
|
|
|
+ if strings.Contains(buyer,name+c_name) || strings.Contains(buyer,alias+c_name) {
|
|
|
+ new_a = qu.ObjToString(c["area"])
|
|
|
+ new_c = qu.ObjToString(c["city"])
|
|
|
+ new_d = qu.ObjToString(c["district"])
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return new_a,new_c,new_d,ok
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
//province,city,district干扰项减分
|
|
|
//func PCDSubtractScore(e *ExtractTask, j *ju.Job, stype, text string, score int) {
|
|
|
// defer qu.Catch()
|