|
@@ -1,6 +1,7 @@
|
|
|
package main
|
|
|
|
|
|
import (
|
|
|
+ "app.yhyue.com/moapp/jybase/mongodb"
|
|
|
"database/sql"
|
|
|
"fmt"
|
|
|
"github.com/gogf/gf/v2/util/gconv"
|
|
@@ -585,3 +586,62 @@ func UpdateData(lockStatus int64, query map[string]interface{}, status int, posi
|
|
|
"lock_position_id": positionId,
|
|
|
})
|
|
|
}
|
|
|
+
|
|
|
+// 大会员子账号不作为电销线索
|
|
|
+func ClueToDxTask() {
|
|
|
+ //把所-5有的用户刷至公海
|
|
|
+ ok := TiDb.Update("dwd_f_crm_clue_info", map[string]interface{}{"is_assign": -5}, map[string]interface{}{"is_assign": 0})
|
|
|
+ if !ok {
|
|
|
+ log.Println("更新dwd_f_crm_clue_info处理子账号出错")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //查询在客成的用户
|
|
|
+ res := TiDb.Query("SELECT clue_id,ent_id FROM `dwd_f_csm_customer_info` WHERE is_transfer = 0")
|
|
|
+ if res == nil {
|
|
|
+ log.Println("查dwd_f_csm_customer_info 客成用户异常")
|
|
|
+ return
|
|
|
+ }
|
|
|
+ log.Println("客成用户量:", len(*res))
|
|
|
+ for _, val := range *res {
|
|
|
+ log.Println("ent_id", val["ent_id"])
|
|
|
+ childIds := []string{}
|
|
|
+ if mongodb.IsObjectIdHex(gconv.String(val["ent_id"])) { //mongodb 个人身份大会员
|
|
|
+ //查询个人大会员下的子账号
|
|
|
+ query := map[string]interface{}{"s_member_mainid": gconv.String(val["ent_id"])}
|
|
|
+ childAccount, _ := Mgo.Find("user", query, "", `"_id":1`, false, -1, -1)
|
|
|
+ if childAccount != nil && len(*childAccount) > 0 {
|
|
|
+ log.Println("个人大会员子账号数量:", gconv.String(val["ent_id"]), len(*childAccount))
|
|
|
+ for _, v := range *childAccount {
|
|
|
+ childIds = append(childIds, mongodb.BsonIdToSId(v["_id"]))
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ } else { //企业大会员
|
|
|
+ //根据企业id查询企业下的员工
|
|
|
+ data := TiDb.Query("SELECT userid,uid FROM dwd_f_userbase_id_mapping WHERE ent_id = ?", gconv.Int(val["ent_id"]))
|
|
|
+ if data != nil && len(*data) > 0 {
|
|
|
+ log.Println()
|
|
|
+ for _, vv := range *data {
|
|
|
+ childIds = append(childIds, gconv.String(vv["userid"]))
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //更新线索信息
|
|
|
+ if len(childIds) > 0 {
|
|
|
+ ids := ""
|
|
|
+ for k, vv := range childIds {
|
|
|
+ if k == 0 {
|
|
|
+ ids += fmt.Sprintf("'%s'", vv)
|
|
|
+ } else {
|
|
|
+ ids += fmt.Sprintf(",'%s'", vv)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ log.Println("线索ids:", ids)
|
|
|
+ up := TiDb.UpdateOrDeleteBySql("UPDATE dwd_f_crm_clue_info SET is_assign = -5 WHERE userid IN (?)", ids)
|
|
|
+ if up < 0 {
|
|
|
+ log.Println("更新线索为-5出错", childIds)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|