fuwencai 6 tháng trước cách đây
mục cha
commit
01d62b2ca0

+ 4 - 0
newuserGet/hack/config.yaml

@@ -15,6 +15,10 @@ gfcli:
         descriptionTag: true
         tables: "voice_record"
         group: call
+      - link: "mysql:root:=PDT49#80Z!RVv52_z@tcp(192.168.3.14:4000)/jianyu_subjectdb_test"
+        descriptionTag: true
+        tables: "dwd_f_crm_clue_info"
+        group: crm
 
   docker:
     build: "-a amd64 -s linux -p temp -ew"

+ 1 - 1
newuserGet/internal/dao/internal/new_user_send_rule.go

@@ -23,7 +23,7 @@ type NewUserSendRuleColumns struct {
 	Id             string //
 	Name           string // 规则名称
 	RegisterTagIds string // 注册标签id,多个时使用逗号分割
-	CallState      string // 外呼状态 多个时使用逗号分割
+	CallState      string // 外呼状态 多个时使用逗号分割  ,0-表示未拨打  ,标签内使用-连接 如:“0,notDeal,notDeal#ivr” 表示,未拨打的、全部记录为未接听的、全部记录为未接听或ivr
 	BehaviorTagIds string // 行为标签id,多个时逗号分割
 	CreateTime     string //
 	UpdateTime     string //

+ 20 - 6
newuserGet/internal/logic/task.go

@@ -14,6 +14,11 @@ import (
 )
 
 func Task(ctx context.Context) {
+	start := time.Now()
+	defer func() {
+		g.Log().Info(ctx, "本轮完成", time.Since(start))
+
+	}()
 	// get rule
 	var rules []entity.NewUserSendRule
 	err := dao.NewUserSendRule.Ctx(ctx).Scan(&rules)
@@ -46,9 +51,10 @@ func Task(ctx context.Context) {
 				continue
 			}
 		}
-
-		// 过滤销售进程
-		userList = filterTrailStatus(ctx, rules[i], userList)
+		if rules[i].Trailstatus != "" {
+			// 过滤销售进程
+			userList = filterTrailStatus(ctx, rules[i], userList)
+		}
 		// 保存用户
 		saveList := []do.NewUserSendLog{}
 		for j := 0; j <= len(userList); j++ {
@@ -58,6 +64,11 @@ func Task(ctx context.Context) {
 				CreateTime: gtime.Now(),
 			})
 		}
+		_, err = dao.NewUserSendLog.Ctx(ctx).Data(saveList).Insert()
+		if err != nil {
+			g.Log().Errorf(ctx, "第%v个规则 保存失败 :id-%v name:%v err:%v  %v\n", i, rules[i].Id, rules[i].Name, err, saveList)
+			continue
+		}
 		g.Log().Infof(ctx, "完成--第%v个规则:id-%v name:%v \n", i, rules[i].Id, rules[i].Name)
 
 	}
@@ -171,15 +182,18 @@ func filterCallState(ctx context.Context, rule entity.NewUserSendRule, userList
 			}
 		}
 	}
-
 	return
 }
 
 // 跟进状态
 func filterTrailStatus(ctx context.Context, rule entity.NewUserSendRule, userList []*User) (newUserList []*User) {
+	start := time.Now()
+	defer func() {
+		g.Log().Info(ctx, "filterTrailStatus 耗时:", time.Since(start))
 
-	// 拒绝沟通 最后一次销售跟进状态为拒绝沟通
+	}()
+	for i := 0; i < len(userList); i++ {
 
-	// 无意向客户 最后一次跟进状态为无意向客户
+	}
 	return
 }

+ 1 - 1
newuserGet/internal/model/do/new_user_send_rule.go

@@ -15,7 +15,7 @@ type NewUserSendRule struct {
 	Id             interface{} //
 	Name           interface{} // 规则名称
 	RegisterTagIds interface{} // 注册标签id,多个时使用逗号分割
-	CallState      interface{} // 外呼状态 多个时使用逗号分割
+	CallState      interface{} // 外呼状态 多个时使用逗号分割  ,0-表示未拨打  ,标签内使用-连接 如:“0,notDeal,notDeal#ivr” 表示,未拨打的、全部记录为未接听的、全部记录为未接听或ivr
 	BehaviorTagIds interface{} // 行为标签id,多个时逗号分割
 	CreateTime     *gtime.Time //
 	UpdateTime     *gtime.Time //

+ 8 - 8
newuserGet/internal/model/entity/new_user_send_rule.go

@@ -10,12 +10,12 @@ import (
 
 // NewUserSendRule is the golang structure for table new_user_send_rule.
 type NewUserSendRule struct {
-	Id             int         `json:"id"             orm:"id"               description:""`                                                               //
-	Name           string      `json:"name"           orm:"name"             description:"规则名称"`                                                           // 规则名称
-	RegisterTagIds string      `json:"registerTagIds" orm:"register_tag_ids" description:"注册标签id,多个时使用逗号分割"`                                               // 注册标签id,多个时使用逗号分割
-	CallState      string      `json:"callState"      orm:"call_state"       description:"外呼状态 多个时使用逗号分割"`                                                 // 外呼状态 多个时使用逗号分割
-	BehaviorTagIds string      `json:"behaviorTagIds" orm:"behavior_tag_ids" description:"行为标签id,多个时逗号分割"`                                                 // 行为标签id,多个时逗号分割
-	CreateTime     *gtime.Time `json:"createTime"     orm:"create_time"      description:""`                                                               //
-	UpdateTime     *gtime.Time `json:"updateTime"     orm:"update_time"      description:""`                                                               //
-	Trailstatus    string      `json:"trailstatus"    orm:"trailstatus"      description:"销售进程,jianyu_subjectdb_test.dwd_f_crm_clue_info  00-无意向,09-拒绝沟通"` // 销售进程,jianyu_subjectdb_test.dwd_f_crm_clue_info  00-无意向,09-拒绝沟通
+	Id             int         `json:"id"             orm:"id"               description:""`                                                                                             //
+	Name           string      `json:"name"           orm:"name"             description:"规则名称"`                                                                                         // 规则名称
+	RegisterTagIds string      `json:"registerTagIds" orm:"register_tag_ids" description:"注册标签id,多个时使用逗号分割"`                                                                             // 注册标签id,多个时使用逗号分割
+	CallState      string      `json:"callState"      orm:"call_state"       description:"外呼状态 多个时使用逗号分割  ,0-表示未拨打  ,标签内使用-连接 如:“0,notDeal,notDeal#ivr” 表示,未拨打的、全部记录为未接听的、全部记录为未接听或ivr"` // 外呼状态 多个时使用逗号分割  ,0-表示未拨打  ,标签内使用-连接 如:“0,notDeal,notDeal#ivr” 表示,未拨打的、全部记录为未接听的、全部记录为未接听或ivr
+	BehaviorTagIds string      `json:"behaviorTagIds" orm:"behavior_tag_ids" description:"行为标签id,多个时逗号分割"`                                                                               // 行为标签id,多个时逗号分割
+	CreateTime     *gtime.Time `json:"createTime"     orm:"create_time"      description:""`                                                                                             //
+	UpdateTime     *gtime.Time `json:"updateTime"     orm:"update_time"      description:""`                                                                                             //
+	Trailstatus    string      `json:"trailstatus"    orm:"trailstatus"      description:"销售进程,jianyu_subjectdb_test.dwd_f_crm_clue_info  00-无意向,09-拒绝沟通"`                               // 销售进程,jianyu_subjectdb_test.dwd_f_crm_clue_info  00-无意向,09-拒绝沟通
 }