瀏覽代碼

wip:提交

wangkaiyue 1 年之前
父節點
當前提交
40e2165f1f
共有 1 個文件被更改,包括 17 次插入31 次删除
  1. 17 31
      doFreeClueSign/job/mamager.go

+ 17 - 31
doFreeClueSign/job/mamager.go

@@ -38,7 +38,8 @@ func InitJobManager() *JobManager {
 	)
 
 	job := &JobManager{
-		payUser: gmap.New(true),
+		payUser:  gmap.New(true),
+		register: gmap.New(true),
 	}
 	job.LoadLastRun()
 
@@ -55,7 +56,7 @@ func InitJobManager() *JobManager {
 
 			job.LoadPayUser()
 			job.LoadAgainSubUser()
-			job.LoadBindPhoneUser()
+			//job.LoadBindPhoneUser()
 		}, "bindPhoneAndSubAgain")
 		if err != nil {
 			panic(err)
@@ -129,35 +130,23 @@ func (jm *JobManager) FilterPayUserAndSaveDb(ctx context.Context, value interfac
 		if jm.payUser.Contains(msg.MgoUserID) {
 			return nil
 		}
-		registerDate, phone := jm.GetAndCacheRegisterDate(msg.MgoUserID)
-		if registerDate == "" {
-			return nil
-		}
 		operationTime = time.Unix(msg.TimeStamp, 0).Format(time.DateTime)
-		sql += `(mogUserId,register_time,phone,sub_again_date,create_time)VALUES (?,?,?,?,?)ON DUPLICATE KEY UPDATE sub_again_date=?`
-		val = append(val, msg.MgoUserID, registerDate, phone, operationTime, now, operationTime)
+		sql += `(mogUserId,register_time,sub_again_date,create_time)VALUES (?,?,?,?)ON DUPLICATE KEY UPDATE sub_again_date=?`
+		val = append(val, msg.MgoUserID, jm.GetAndCacheRegisterDate(msg.MgoUserID), operationTime, now, operationTime)
 	} else if msg, ok := value.(*public.BindMsg); ok {
 		if jm.payUser.Contains(msg.MgoUserID) {
 			return nil
 		}
-		registerDate, _ := jm.GetAndCacheRegisterDate(msg.MgoUserID)
-		if registerDate == "" {
-			return nil
-		}
 		operationTime = time.Unix(msg.TimeStamp, 0).Format(time.DateTime)
 		sql += `(mogUserId,register_time,phone,bind_phone_date,create_time)VALUES (?,?,?,?,?)ON DUPLICATE KEY UPDATE phone=?, bind_phone_date=?`
-		val = append(val, msg.MgoUserID, registerDate, msg.Phone, operationTime, now, msg.Phone, operationTime)
+		val = append(val, msg.MgoUserID, jm.GetAndCacheRegisterDate(msg.MgoUserID), msg.Phone, operationTime, now, msg.Phone, operationTime)
 	} else if msg, ok := value.(*public.NewActiveMsg); ok {
 		if jm.payUser.Contains(msg.MgoUserID) {
 			return nil
 		}
-		registerDate, phone := jm.GetAndCacheRegisterDate(msg.MgoUserID)
-		if registerDate == "" {
-			return nil
-		}
 		operationTime = time.Unix(msg.TimeStamp, 0).Format(time.DateTime)
-		sql += `(mogUserId,register_time,phone,act_again_date,create_time)VALUES (?,?,?,?,?)ON DUPLICATE KEY UPDATE act_again_date=?`
-		val = append(val, msg.MgoUserID, registerDate, phone, operationTime, now, operationTime)
+		sql += `(mogUserId,register_time,act_again_date,create_time)VALUES (?,?,?,?)ON DUPLICATE KEY UPDATE act_again_date=?`
+		val = append(val, msg.MgoUserID, jm.GetAndCacheRegisterDate(msg.MgoUserID), operationTime, now, operationTime)
 	} else {
 		return fmt.Errorf("未知类型")
 	}
@@ -169,18 +158,15 @@ func (jm *JobManager) FilterPayUserAndSaveDb(ctx context.Context, value interfac
 }
 
 // GetAndCacheRegisterDate 获取缓存用户注册时间
-func (jm *JobManager) GetAndCacheRegisterDate(mgoUserId string) (registerDate, phone string) {
-	rMap, _ := db.MG.DB().FindById("user", mgoUserId, `{"l_registedate":1,"s_phone":1,"s_m_phone":1}`)
-	if rMap == nil || len(*rMap) == 0 {
-		return
+func (jm *JobManager) GetAndCacheRegisterDate(mgoUserId string) string {
+	if registerDate := gconv.String(jm.register.Get(mgoUserId)); registerDate != "" {
+		return registerDate
 	}
-	if tPhone := gconv.String((*rMap)["s_phone"]); tPhone != "" {
-		phone = tPhone
-	} else {
-		if ttPhone := gconv.String((*rMap)["s_m_phone"]); ttPhone != "" {
-			phone = ttPhone
-		}
+	rMap, _ := db.MG.DB().FindById("user", mgoUserId, `{"l_registedate":1}`)
+	if rMap == nil || len(*rMap) == 0 {
+		return ""
 	}
-	registerDate = time.Unix(gconv.Int64((*rMap)["l_registedate"]), 0).Format(time.DateTime)
-	return
+	date := time.Unix(gconv.Int64((*rMap)["l_registedate"]), 0).Format(time.DateTime)
+	jm.register.Set(mgoUserId, date)
+	return date
 }