Browse Source

Merge branch 'dev3.4' of http://192.168.3.207:10080/qmx/jy-data-extract into dev3.4

apple 5 years ago
parent
commit
1e96ca7f61
2 changed files with 24 additions and 6 deletions
  1. 11 3
      src/jy/extract/extract.go
  2. 13 3
      src/jy/extract/extractInit.go

+ 11 - 3
src/jy/extract/extract.go

@@ -1652,9 +1652,17 @@ func AnalysisSaveResult(j, jf *ju.Job, e *ExtractTask) {
 		//tmp["extract_content"] = j.Content
 		if e.TaskInfo.TestColl == "" {
 			if len(tmp) > 0 { //保存抽取结果
-				for field, _ := range e.Fields {
-					if tmp[field] == nil {
-						tmp[field] = "" //覆盖之前版本数据
+				if len(e.SiteFields) <= 0 {
+					for field, _ := range e.Fields {
+						if tmp[field] == nil {
+							tmp[field] = "" //覆盖之前版本数据
+						}
+					}
+				} else {
+					for field, _ := range e.SiteFields {
+						if tmp[field] == nil {
+							tmp[field] = "" //覆盖之前版本数据
+						}
 					}
 				}
 				tmp["repeat"] = 0

+ 13 - 3
src/jy/extract/extractInit.go

@@ -80,6 +80,7 @@ type ExtractTask struct {
 	SiteClearFn   map[string][]string               //站点清理函数
 	IsExtractCity bool                              //是否开启城市抽取
 	Fields        map[string]int                    //抽取属性组
+	SiteFields        map[string]int                    //抽取站点属性组
 
 	IsFileField bool      //是否开启附件抽取
 	FileFields  *sync.Map //抽取附件属性组
@@ -391,7 +392,6 @@ func (e *ExtractTask) InfoTypeList() {
 func (e *ExtractTask) InitRuleCore(isSite bool) {
 	defer qu.Catch()
 	allFields := getALLFields()
-	e.Fields = map[string]int{}
 	var versioninfodb, rule_logicdb, rule_logicpredb, rule_logicbackdb, rule_logicoredb, rule_logickvdb string
 	eSiteRuleCores := make(map[string]map[string][]*RuleCore)
 	if isSite {
@@ -401,6 +401,7 @@ func (e *ExtractTask) InitRuleCore(isSite bool) {
 		rule_logicbackdb = "site_rule_logicback"
 		rule_logicoredb = "site_rule_logicore"
 		rule_logickvdb = "site_rule_logickv"
+		e.SiteFields = map[string]int{}
 		e.SiteRuleCores = make(map[string]map[string][]*RuleCore)
 	} else {
 		versioninfodb = "versioninfo"
@@ -409,6 +410,7 @@ func (e *ExtractTask) InitRuleCore(isSite bool) {
 		rule_logicbackdb = "rule_logicback"
 		rule_logicoredb = "rule_logicore"
 		rule_logickvdb = "rule_logickv"
+		e.Fields = map[string]int{}
 		e.RuleCores = make(map[string]map[string][]*RuleCore)
 	}
 
@@ -514,7 +516,11 @@ func (e *ExtractTask) InitRuleCore(isSite bool) {
 					continue
 				}
 				field := qu.ObjToString(v["s_field"])
-				e.Fields[field] = 1 //加入抽取属性组备用
+				if isSite{
+					e.SiteFields[field] = 1
+				}else {
+					e.Fields[field] = 1 //加入抽取属性组备用
+				}
 				rinfo := &RegLuaInfo{
 					Field: field,
 					Code:  v["s_code"].(string),
@@ -567,7 +573,11 @@ func (e *ExtractTask) InitRuleCore(isSite bool) {
 					continue
 				}
 				field := qu.ObjToString(v["s_field"])
-				e.Fields[field] = 1 //加入抽取属性组备用
+				if isSite{
+					e.SiteFields[field] = 1
+				}else {
+					e.Fields[field] = 1 //加入抽取属性组备用
+				}
 				rinfo := &RegLuaInfo{
 					Field: field,
 					Code:  v["s_code"].(string),