xuzhiheng 2 سال پیش
والد
کامیت
0f80399390
5فایلهای تغییر یافته به همراه70 افزوده شده و 14 حذف شده
  1. 1 1
      clueSync/config.json
  2. 1 0
      clueSync/job.go
  3. 7 0
      clueSync/main.go
  4. 58 10
      clueSync/subscribe.go
  5. 3 3
      clueSync/tag.go

+ 1 - 1
clueSync/config.json

@@ -2,7 +2,7 @@
 	"cornexp1": "0 */30 * * * ?",
 	"cornexp2": "0 */10 * * * ?",
 	"cornexp3": "0 */5 * * * ?",
-	"cornexp4": "0 0 0 /1 * ? ",
+	"cornexp4": "0 0 0 */1 * ? ",
 	"cornexp5": "0 */5 * * * ?",
 	"cornexp6": "0 */10 * * * ?",
 	"lastOrderId": 172463,

+ 1 - 0
clueSync/job.go

@@ -325,6 +325,7 @@ func UpdateClue(data map[string]interface{}, saleData []map[string]interface{},
 		"industry":            industry,
 		"follow_project_area": follow_project_area,
 		"role":                role,
+		"userid":              userId,
 	}
 	seaUpdateData := map[string]interface{}{
 		"comeinsource": 2,

+ 7 - 0
clueSync/main.go

@@ -100,6 +100,13 @@ func main() {
 			tagAddSync()
 		})
 		e.Start()
+		//订阅增量 5分钟一次
+		subscribeAddSync()
+		f := cron.New()
+		f.AddFunc(cfg.CornExp6, func() {
+			subscribeAddSync()
+		})
+		f.Start()
 		select {}
 	} else if *mode == 2 {
 		users()

+ 58 - 10
clueSync/subscribe.go

@@ -60,17 +60,19 @@ func FormatSubscribeData(data map[string]interface{}) {
 	}
 	if types != "" {
 		if jy, ok := data[types].(map[string]interface{}); ok {
-			if area, oks := jy["o_area"].(map[string]interface{}); oks {
-				areaArr := []string{}
-				for k, _ := range area {
-					areaArr = append(areaArr, AreaCode[k])
-				}
-				if len(area) == 0 {
-					areaArr = append(areaArr, AreaCode["全国"])
-				}
-				areaCodes = strings.Join(areaArr, ",")
-			}
 			if types == "o_jy" {
+				//
+				if area, oks := jy["o_area"].(map[string]interface{}); oks {
+					areaArr := []string{}
+					for k, _ := range area {
+						areaArr = append(areaArr, AreaCode[k])
+					}
+					if len(area) == 0 {
+						areaArr = append(areaArr, AreaCode["全国"])
+					}
+					areaCodes = strings.Join(areaArr, ",")
+				}
+				//
 				akey, aok := jy["a_key"].([]map[string]interface{})
 				if !aok {
 					akeys, _ := jy["a_key"].([]interface{})
@@ -86,7 +88,53 @@ func FormatSubscribeData(data map[string]interface{}) {
 						keyArrs = append(keyArrs, key)
 					}
 				}
+			} else if types == "o_vipjy" {
+				if area, oks := jy["area"].(map[string]interface{}); oks {
+					areaArr := []string{}
+					for k, _ := range area {
+						areaArr = append(areaArr, AreaCode[k])
+					}
+					if len(area) == 0 {
+						areaArr = append(areaArr, AreaCode["全国"])
+					}
+					areaCodes = strings.Join(areaArr, ",")
+				}
+				items, aok := jy["items"].([]map[string]interface{})
+				if !aok {
+					itemss, _ := jy["items"].([]interface{})
+					items = common.ObjArrToMapArr(itemss)
+				}
+				for _, v := range items {
+					akey, iok := v["a_key"].([]map[string]interface{})
+					if !iok {
+						akeys, _ := v["a_key"].([]interface{})
+						akey = common.ObjArrToMapArr(akeys)
+					}
+					for _, v := range akey {
+						keysArr, asok := v["key"].([]string)
+						if !asok {
+							keysArr_s, _ := v["key"].([]interface{})
+							keysArr = common.ObjArrToStringArr(keysArr_s)
+						}
+						for _, key := range keysArr {
+							keyArrs = append(keyArrs, key)
+						}
+					}
+				}
 			} else {
+				if area, oks := jy["o_area"].(map[string]interface{}); oks {
+					areaArr := []string{}
+					for k, _ := range area {
+						areaArr = append(areaArr, AreaCode[k])
+					}
+					if len(area) == 0 {
+						areaArr = append(areaArr, AreaCode["全国"])
+					}
+					areaCodes = strings.Join(areaArr, ",")
+				}
+				if jy["o_area"] == nil {
+					areaCodes = AreaCode["全国"]
+				}
 				items, aok := jy["a_items"].([]map[string]interface{})
 				if !aok {
 					itemss, _ := jy["a_items"].([]interface{})

+ 3 - 3
clueSync/tag.go

@@ -158,12 +158,12 @@ func FormatTag(data map[string]interface{}) {
 
 func tagAddSync() {
 	log.Println("注册日期、订单增量定时任务开始")
-	userData := TiDb.SelectBySql(`select l_registedate,createtime,uid,userid from dwd_f_userbase_baseinfo where createtime >= "` + cfg.LastUserTime + `"`)
+	userData := TiDb.SelectBySql(`select l_registedate,updatetime,uid,userid from dwd_f_userbase_baseinfo where updatetime >= "` + cfg.LastUserTime + `"`)
 	if userData != nil && len(*userData) > 0 {
 		for k, v := range *userData {
 			nowTime := time.Now().Format("2006-01-02 15:04:05")
 			registedate := common.ObjToString(v["l_registedate"])
-			createtime := common.ObjToString(v["createtime"])
+			updatetime := common.ObjToString(v["updatetime"])
 			userId := common.ObjToString(v["userid"])
 			uId := common.ObjToString(v["uid"])
 			if registedate == "" || uId == "" || userId == "" {
@@ -171,7 +171,7 @@ func tagAddSync() {
 				return
 			}
 			if k == len(*userData)-1 {
-				cfg.LastOrderTime = createtime
+				cfg.LastOrderTime = updatetime
 			}
 			if TiDb.Count("dwd_f_crm_attribute_label", map[string]interface{}{"uid": uId}) > 0 {
 				TiDb.Update("dwd_f_crm_attribute_label", map[string]interface{}{"uid": uId}, map[string]interface{}{