Parcourir la source

采购单位类型更新

apple il y a 5 ans
Parent
commit
6fa6009d6f
2 fichiers modifiés avec 76 ajouts et 109 suppressions
  1. 21 54
      udp_winner/timedTaskAgency.go
  2. 55 55
      udp_winner/timedTaskBuyer.go

+ 21 - 54
udp_winner/timedTaskAgency.go

@@ -103,41 +103,26 @@ func TaskAgency(mapinfo *map[string]interface{}) {
 						log.Println("存量 redis id 不存在",reply,tmp["agency"])
 						continue
 					}
+
+
 					tmpTopscopeclass := []string{}
 					tmpTopscopeclassMap := make(map[string]bool)
 
-					if oldTmp["industry"] == nil {
-						if v, ok := tmp["topscopeclass"].(primitive.A); ok {
-							for _, vv := range v {
-								if vvv, ok := vv.(string); ok && len(vvv) > 1 {
-									tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
-								}
-							}
-							for k := range tmpTopscopeclassMap {
-								tmpTopscopeclass = append(tmpTopscopeclass, k)
-							}
-						}
-					} else {
-						if v, ok := oldTmp["industry"].(primitive.A); ok {
-							for _, vv := range v {
-								if vvv, ok := vv.(string); ok {
-									tmpTopscopeclassMap[vvv] = true
-								}
+					if v, ok := tmp["topscopeclass"].(primitive.A); ok {
+						for _, vv := range v {
+							if vvv, ok := vv.(string); ok && len(vvv) > 1 {
+								tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
 							}
 						}
-						if v, ok := tmp["topscopeclass"].(primitive.A); ok {
-							for _, vv := range v {
-								if vvv, ok := vv.(string); ok && len(vvv) > 1 {
-									tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
-								}
-							}
-							for k := range tmpTopscopeclassMap {
-								tmpTopscopeclass = append(tmpTopscopeclass, k)
-							}
+						for k := range tmpTopscopeclassMap {
+							tmpTopscopeclass = append(tmpTopscopeclass, k)
 						}
 					}
 					sort.Strings(tmpTopscopeclass)
-					oldTmp["industry"] = tmpTopscopeclass
+
+
+
+
 					esId := oldTmp["_id"].(primitive.ObjectID).Hex()
 					//更新行业类型
 					if tmp["agencyperson"] == nil || tmp["agencyperson"] == "" ||
@@ -264,38 +249,20 @@ func TaskAgency(mapinfo *map[string]interface{}) {
 				tmpTopscopeclass := []string{}
 				tmpTopscopeclassMap := make(map[string]bool)
 
-				if oldTmp["industry"] == nil {
-					if v, ok := tmp["topscopeclass"].(primitive.A); ok {
-						for _, vv := range v {
-							if vvv, ok := vv.(string); ok && len(vvv) > 1 {
-								tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
-							}
-						}
-						for k := range tmpTopscopeclassMap {
-							tmpTopscopeclass = append(tmpTopscopeclass, k)
-						}
-					}
-				} else {
-					if v, ok := oldTmp["industry"].(primitive.A); ok {
-						for _, vv := range v {
-							if vvv, ok := vv.(string); ok {
-								tmpTopscopeclassMap[vvv] = true
-							}
+				if v, ok := tmp["topscopeclass"].(primitive.A); ok {
+					for _, vv := range v {
+						if vvv, ok := vv.(string); ok && len(vvv) > 1 {
+							tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
 						}
 					}
-					if v, ok := tmp["topscopeclass"].(primitive.A); ok {
-						for _, vv := range v {
-							if vvv, ok := vv.(string); ok && len(vvv) > 1 {
-								tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
-							}
-						}
-						for k := range tmpTopscopeclassMap {
-							tmpTopscopeclass = append(tmpTopscopeclass, k)
-						}
+					for k := range tmpTopscopeclassMap {
+						tmpTopscopeclass = append(tmpTopscopeclass, k)
 					}
 				}
 				sort.Strings(tmpTopscopeclass)
-				oldTmp["industry"] = tmpTopscopeclass
+
+
+
 				esId := oldTmp["_id"].(primitive.ObjectID).Hex()
 				//更新行业类型
 				if tmp["agencyperson"] == nil || tmp["agencyperson"] == "" || Reg_xing.MatchString(util.ObjToString(tmp["agencyperson"])) {

+ 55 - 55
udp_winner/timedTaskBuyer.go

@@ -106,41 +106,40 @@ func TaskBuyer(mapinfo *map[string]interface{}) {
 					tmpTopscopeclass := []string{}
 					tmpTopscopeclassMap := make(map[string]bool)
 
-					if oldTmp["industry"] == nil {
-						if v, ok := tmp["topscopeclass"].(primitive.A); ok {
-							for _, vv := range v {
-								if vvv, ok := vv.(string); ok && len(vvv) > 1 {
-									tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
-								}
-							}
-							for k := range tmpTopscopeclassMap {
-								tmpTopscopeclass = append(tmpTopscopeclass, k)
-							}
-						}
-					} else {
-						if v, ok := oldTmp["industry"].(primitive.A); ok {
-							for _, vv := range v {
-								if vvv, ok := vv.(string); ok {
-									tmpTopscopeclassMap[vvv] = true
-								}
+					if v, ok := tmp["topscopeclass"].(primitive.A); ok {
+						for _, vv := range v {
+							if vvv, ok := vv.(string); ok && len(vvv) > 1 {
+								tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
 							}
 						}
-						if v, ok := tmp["topscopeclass"].(primitive.A); ok {
-							for _, vv := range v {
-								if vvv, ok := vv.(string); ok && len(vvv) > 1 {
-									tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
-								}
-							}
-							for k := range tmpTopscopeclassMap {
-								tmpTopscopeclass = append(tmpTopscopeclass, k)
-							}
+						for k := range tmpTopscopeclassMap {
+							tmpTopscopeclass = append(tmpTopscopeclass, k)
 						}
 					}
 					sort.Strings(tmpTopscopeclass)
-					oldTmp["industry"] = tmpTopscopeclass
+
+					//更新buyerclass
+
+
 					esId := oldTmp["_id"].(primitive.ObjectID).Hex()
 					//更新行业类型
 					if tmp["buyerperson"] == nil || tmp["buyerperson"] == "" || Reg_xing.MatchString(util.ObjToString(tmp["buyerperson"])) {
+
+
+						//更新buyerclass合并
+						if tmp["buyerclass"] == nil || tmp["buyerclass"] == "" {
+							//无值,不更新
+						}else {
+							//有值
+							var buyerclass_new,buyerclass_old string
+							buyerclass_new = tmp["buyerclass"].(string)
+							buyerclass_old = oldTmp["buyerclass"].(string)
+							if strings.Contains(buyerclass_old, buyerclass_new) {
+								oldTmp["buyerclass"] = buyerclass_old + ","+buyerclass_new //采购单位类型
+							}
+
+						}
+
 						oldTmp["updatatime"] = time.Now().Unix()
 						//mongo更新
 						FClient.DbName = Config["mgodb_extract_kf"]
@@ -263,41 +262,42 @@ func TaskBuyer(mapinfo *map[string]interface{}) {
 				tmpTopscopeclass := []string{}
 				tmpTopscopeclassMap := make(map[string]bool)
 
-				if oldTmp["industry"] == nil {
-					if v, ok := tmp["topscopeclass"].(primitive.A); ok {
-						for _, vv := range v {
-							if vvv, ok := vv.(string); ok && len(vvv) > 1 {
-								tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
-							}
-						}
-						for k := range tmpTopscopeclassMap {
-							tmpTopscopeclass = append(tmpTopscopeclass, k)
-						}
-					}
-				} else {
-					if v, ok := oldTmp["industry"].(primitive.A); ok {
-						for _, vv := range v {
-							if vvv, ok := vv.(string); ok {
-								tmpTopscopeclassMap[vvv] = true
-							}
+
+				if v, ok := tmp["topscopeclass"].(primitive.A); ok {
+					for _, vv := range v {
+						if vvv, ok := vv.(string); ok && len(vvv) > 1 {
+							tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
 						}
 					}
-					if v, ok := tmp["topscopeclass"].(primitive.A); ok {
-						for _, vv := range v {
-							if vvv, ok := vv.(string); ok && len(vvv) > 1 {
-								tmpTopscopeclassMap[vvv[:len(vvv)-1]] = true
-							}
-						}
-						for k := range tmpTopscopeclassMap {
-							tmpTopscopeclass = append(tmpTopscopeclass, k)
-						}
+					for k := range tmpTopscopeclassMap {
+						tmpTopscopeclass = append(tmpTopscopeclass, k)
 					}
 				}
 				sort.Strings(tmpTopscopeclass)
-				oldTmp["industry"] = tmpTopscopeclass
+
+
 				esId := oldTmp["_id"].(primitive.ObjectID).Hex()
-				//更新行业类型
+
+
+
+
+				//更新行业类型 buyerclass合并
 				if tmp["buyerperson"] == nil || tmp["buyerperson"] == "" || Reg_xing.MatchString(util.ObjToString(tmp["buyerperson"])) {
+
+					//更新buyerclass合并
+					if tmp["buyerclass"] == nil || tmp["buyerclass"] == "" {
+						//无值,不更新
+					}else {
+						//有值
+						var buyerclass_new,buyerclass_old string
+						buyerclass_new = tmp["buyerclass"].(string)
+						buyerclass_old = oldTmp["buyerclass"].(string)
+						if strings.Contains(buyerclass_old, buyerclass_new) {
+							oldTmp["buyerclass"] = buyerclass_old + ","+buyerclass_new //采购单位类型
+						}
+
+					}
+
 					oldTmp["updatatime"] = time.Now().Unix()
 					//mongo更新
 					FClient.DbName = Config["mgodb_extract_kf"]