|
@@ -1559,9 +1559,7 @@ func vipFastSubscribe(user *map[string]interface{}, keyWord, openId string) (ret
|
|
}
|
|
}
|
|
o_vipjy, _ := (*user)["o_vipjy"].(map[string]interface{})
|
|
o_vipjy, _ := (*user)["o_vipjy"].(map[string]interface{})
|
|
var classify_index = 0 //未分类索引
|
|
var classify_index = 0 //未分类索引
|
|
- //var keys_index = 0 未分类关键词组数量
|
|
|
|
- var keysHas = "" //已订阅关键词
|
|
|
|
- var itemHas = false //是否有未分类
|
|
|
|
|
|
+ var keysHas = "" //已订阅关键词
|
|
flag := false
|
|
flag := false
|
|
//有分类
|
|
//有分类
|
|
var keysFilter = strings.Split(strings.Replace(keyWord, "+", " ", -1), " ")
|
|
var keysFilter = strings.Split(strings.Replace(keyWord, "+", " ", -1), " ")
|
|
@@ -1574,7 +1572,6 @@ func vipFastSubscribe(user *map[string]interface{}, keyWord, openId string) (ret
|
|
keysMap := util.ObjArrToMapArr(v["a_key"].([]interface{}))
|
|
keysMap := util.ObjArrToMapArr(v["a_key"].([]interface{}))
|
|
if v["s_item"].(string) == "未分类" {
|
|
if v["s_item"].(string) == "未分类" {
|
|
classify_index = i
|
|
classify_index = i
|
|
- itemHas = true
|
|
|
|
}
|
|
}
|
|
keysCount += len(keysMap)
|
|
keysCount += len(keysMap)
|
|
for _, k := range keysMap {
|
|
for _, k := range keysMap {
|
|
@@ -1607,29 +1604,23 @@ func vipFastSubscribe(user *map[string]interface{}, keyWord, openId string) (ret
|
|
return -3, strings.Replace(keyWord, "+", " ", -1), hasOldKey
|
|
return -3, strings.Replace(keyWord, "+", " ", -1), hasOldKey
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- var _key []map[string]interface{}
|
|
|
|
- if itemHas {
|
|
|
|
- for _, v := range keysFilter {
|
|
|
|
- tmp := map[string]interface{}{"key": strings.Split(v, " ")}
|
|
|
|
- _key = append(_key, tmp)
|
|
|
|
- }
|
|
|
|
|
|
+ var _key = make(map[string]interface{})
|
|
|
|
+ var a_key = make([]map[string]interface{}, 1)
|
|
|
|
+ classify_name := "未分类"
|
|
|
|
+ _key["key"] = keysFilter
|
|
|
|
+ a_key[0] = _key
|
|
|
|
+ if len(a_key) > 0 {
|
|
flag = tools.MQFW.Update("user", `{"s_m_openid":"`+openId+`"}`, bson.M{
|
|
flag = tools.MQFW.Update("user", `{"s_m_openid":"`+openId+`"}`, bson.M{
|
|
- "$push": bson.M{"o_vipjy.a_items." + strconv.Itoa(classify_index) + ".a_key": bson.M{"$each": _key}},
|
|
|
|
|
|
+ "$push": bson.M{
|
|
|
|
+ "o_vipjy.a_items." + strconv.Itoa(classify_index) + ".a_key": bson.M{
|
|
|
|
+ "$each": a_key,
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ "$set": bson.M{
|
|
|
|
+ "o_vipjy.l_modifydate": time.Now().Unix(),
|
|
|
|
+ "o_vipjy.a_items." + strconv.Itoa(classify_index) + ".s_item": classify_name,
|
|
|
|
+ },
|
|
}, false, false)
|
|
}, false, false)
|
|
- } else {
|
|
|
|
- var o_kws = make(map[string]interface{})
|
|
|
|
- o_kws["s_item"] = "未分类"
|
|
|
|
- for _, v := range keysFilter {
|
|
|
|
- tmp := map[string]interface{}{"key": strings.Split(v, " ")}
|
|
|
|
- _key = append(_key, tmp)
|
|
|
|
- }
|
|
|
|
- o_kws["a_key"] = _key
|
|
|
|
- o_kws["i_tips"] = 0
|
|
|
|
- if o_kws != nil && len(o_kws) > 0 {
|
|
|
|
- flag = tools.MQFW.Update("user", `{"s_m_openid":"`+openId+`"}`, bson.M{
|
|
|
|
- "$push": bson.M{"o_vipjy.a_items": o_kws},
|
|
|
|
- }, false, false)
|
|
|
|
- }
|
|
|
|
}
|
|
}
|
|
if flag {
|
|
if flag {
|
|
return 1, strings.Replace(strings.Join(keysFilter, " "), "+", " ", -1), hasOldKey
|
|
return 1, strings.Replace(strings.Join(keysFilter, " "), "+", " ", -1), hasOldKey
|
|
@@ -1646,6 +1637,7 @@ func fastSubscribe(content, openId string) (int, string, bool) {
|
|
//content = strings.TrimSpace(content)
|
|
//content = strings.TrimSpace(content)
|
|
content = regexp.MustCompile("\\s+").ReplaceAllString(content, " ")
|
|
content = regexp.MustCompile("\\s+").ReplaceAllString(content, " ")
|
|
keyWord := strings.Replace(content, " ", "+", -1)
|
|
keyWord := strings.Replace(content, " ", "+", -1)
|
|
|
|
+ log.Println(keyWord, ":kwssssssss")
|
|
o_jy, _ := (*user)["o_jy"].(map[string]interface{})
|
|
o_jy, _ := (*user)["o_jy"].(map[string]interface{})
|
|
i_vip_status := util.IntAll((*user)["i_vip_status"])
|
|
i_vip_status := util.IntAll((*user)["i_vip_status"])
|
|
if (*user)["i_vip_status"] != nil && i_vip_status > 0 && keyWord != "" {
|
|
if (*user)["i_vip_status"] != nil && i_vip_status > 0 && keyWord != "" {
|