|
@@ -86,10 +86,7 @@ func (jm *JobManager) LoadAgainSubUser() {
|
|
|
// @Description 过滤订单 筛选活动注册用户
|
|
|
// @Date 2024/11/18
|
|
|
func loadOrder() {
|
|
|
- var (
|
|
|
- sql = `SELECT id, filter, order_code, product_type, user_id, user_phone, vip_starttime, vip_endtime FROM jianyu.dataexport_order WHERE id > ? ORDER BY id ASC`
|
|
|
- )
|
|
|
-
|
|
|
+ sql := `SELECT id, filter, order_code, product_type, user_id, user_phone, vip_starttime, vip_endtime FROM jianyu.dataexport_order WHERE id > ? ORDER BY id ASC`
|
|
|
res, err := g.DB("jianyu").Query(ctx, sql, LastId)
|
|
|
if err == nil && !res.IsEmpty() {
|
|
|
for _, m := range res.List() {
|
|
@@ -131,18 +128,20 @@ func loadOrder() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-func loadOrderOther() {
|
|
|
- sql := `SELECT id, filter, order_code, product_type, user_id, user_phone, vip_starttime, vip_endtime FROM jianyu.dataexport_order WHERE
|
|
|
- vip_endtime > ? AND vip_endtime < ? AND filter LIKE '%邀请好友成功%' OR filter LIKE '%被邀请注册成功%' OR filter LIKE '%2024年新用户注册赠送7天超级订阅%' ORDER BY id ASC`
|
|
|
- sql1 := `SELECT id, filter, order_code, product_type, user_id, user_phone, vip_starttime, vip_endtime FROM jianyu.dataexport_order WHERE product_type = 'VIP订阅' AND product_type = '大会员' AND id > ? AND user_id = ? ORDER BY id ASC`
|
|
|
+func LoadOrderOther() {
|
|
|
+ sql := `SELECT id, filter, order_code, product_type, user_id, user_phone, vip_starttime, vip_endtime FROM dataexport_order WHERE vip_endtime > ? AND vip_endtime < ? AND ('filter' LIKE '%邀请好友成功%' OR 'filter' LIKE '%被邀请注册成功%' OR 'filter' LIKE '%2024年新用户注册赠送7天超级订阅%') ORDER BY id ASC`
|
|
|
+ sql1 := `SELECT count(1) FROM dataexport_order WHERE vip_endtime > ? AND vip_endtime < ? AND ('filter' LIKE '%邀请好友成功%' OR 'filter' LIKE '%被邀请注册成功%' OR 'filter' LIKE '%2024年新用户注册赠送7天超级订阅%')`
|
|
|
+ sql2 := `SELECT id, 'filter', order_code, product_type, user_id, user_phone, vip_starttime, vip_endtime FROM jianyu.dataexport_order WHERE product_type = 'VIP订阅' AND product_type = '大会员' AND id > ? AND user_id = ? ORDER BY id ASC`
|
|
|
now := time.Now().Format(time.DateTime)
|
|
|
end := time.Now().AddDate(0, 0, 1).Format(time.DateTime)
|
|
|
+ c, _ := g.DB("jianyu").GetCount(ctx, sql1, now, end)
|
|
|
+ g.Log().Info(ctx, "LoadOrderOther count: ", c)
|
|
|
res, err := g.DB("jianyu").Query(ctx, sql, now, end)
|
|
|
if err == nil && !res.IsEmpty() {
|
|
|
for _, m := range res.List() {
|
|
|
id := gconv.Int64(m["id"])
|
|
|
userid := gconv.String(m["user_id"])
|
|
|
- res1, err := g.DB("jianyu").Query(ctx, sql1, id, userid)
|
|
|
+ res1, err := g.DB("jianyu").Query(ctx, sql2, id, userid)
|
|
|
if err == nil && res1.IsEmpty() {
|
|
|
g.DB("bi_service").Exec(ctx, `INSERT INTO user_statistics (userId, createTime, event) SELECT ?, ?, 3 WHERE NOT EXISTS ( SELECT 1 FROM user_statistics WHERE userId = ? AND event = 3)`, userid, now, userid)
|
|
|
}
|
|
@@ -162,10 +161,8 @@ func verifyDate(v int64) bool {
|
|
|
// @Description 历史数据
|
|
|
// @Date 2024/11/19
|
|
|
func LoadOrderHis() {
|
|
|
- var (
|
|
|
- sql = `SELECT id, filter, order_code, product_type, user_id, user_phone, vip_starttime, vip_endtime FROM jianyu.dataexport_order WHERE id <= ? AND ORDER BY id DESC`
|
|
|
- )
|
|
|
g.Log().Infof(ctx, "LoadOrderHis start")
|
|
|
+ sql := `SELECT id, filter, order_code, product_type, user_id, user_phone, vip_starttime, vip_endtime FROM dataexport_order WHERE id <= ? AND filter LIKE '%邀请好友成功%' ORDER BY id DESC`
|
|
|
res, err := g.DB("jianyu").Query(ctx, sql, LastId)
|
|
|
if err == nil && !res.IsEmpty() {
|
|
|
for _, m := range res.List() {
|
|
@@ -173,36 +170,27 @@ func LoadOrderHis() {
|
|
|
if id > LastId {
|
|
|
LastId = id
|
|
|
}
|
|
|
- jsonObj, err := gjson.DecodeToJson([]byte(gconv.String(m["filter"])))
|
|
|
- if err != nil {
|
|
|
- g.Log().Errorf(ctx, "order_code: %s, loadOrder error %v", gconv.String(m["order_code"]), err)
|
|
|
- continue
|
|
|
- }
|
|
|
- filter := jsonObj.Map()
|
|
|
userid := gconv.String(m["user_id"])
|
|
|
now := time.Now().Format(time.DateTime)
|
|
|
- //vipEndTime := gconv.Time(m["vip_endtime"]).Unix()
|
|
|
- if remark := gconv.String(filter["remark"]); remark != "" {
|
|
|
- switch remark {
|
|
|
- case "邀请好友成功":
|
|
|
- g.DB("bi_service").Exec(ctx, `INSERT INTO user_statistics (userId, createTime, event) SELECT ?, ?, 1 WHERE NOT EXISTS ( SELECT 1 FROM user_statistics WHERE userId = ? AND event = 1)`, userid, now, userid)
|
|
|
- case "被邀请注册成功":
|
|
|
- //g.DB("bi_service").Exec(ctx, `INSERT INTO user_statistics (userId, createTime, event) SELECT ?, ?, 2 WHERE NOT EXISTS ( SELECT 1 FROM user_statistics WHERE userId = ? AND event = 2)`, userid, now, userid)
|
|
|
+ g.DB("bi_service").Exec(ctx, `INSERT INTO user_statistics (userId, createTime, event) SELECT ?, ?, 1 WHERE NOT EXISTS ( SELECT 1 FROM user_statistics WHERE userId = ? AND event = 1)`, userid, now, userid)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ g.Log().Infof(ctx, "LoadOrderHis end")
|
|
|
+}
|
|
|
|
|
|
- // 被邀请成功注册 送7天超级订阅订单
|
|
|
- //res, _ := db.MG.DB().FindById("user", userid, `{""l_vip_endtime":1, "i_member_endtime": 1}`)
|
|
|
- //userVEndtime := gconv.Int64((*res)["l_vip_endtime"])
|
|
|
- //if userVEndtime == vipEndTime && verifyDate(vipEndTime) {
|
|
|
- // g.DB("bi_service").Exec(ctx, `INSERT INTO user_statistics (userId, createTime, event) SELECT ?, ?, 3 WHERE NOT EXISTS ( SELECT 1 FROM user_statistics WHERE userId = ? AND event = 3)`, userid, now, userid)
|
|
|
- //}
|
|
|
- case "2024年新用户注册赠送7天超级订阅":
|
|
|
- //res, _ := db.MG.DB().FindById("user", userid, `{"l_vip_endtime":1, "i_member_endtime": 1}`)
|
|
|
- //userVEndtime := gconv.Int64((*res)["l_vip_endtime"])
|
|
|
- //if userVEndtime == vipEndTime && verifyDate(vipEndTime) {
|
|
|
- // g.DB("bi_service").Exec(ctx, `INSERT INTO user_statistics (userId, createTime, event) SELECT ?, ?, 3 WHERE NOT EXISTS ( SELECT 1 FROM user_statistics WHERE userId = ? AND event = 3)`, userid, now, userid)
|
|
|
- //}
|
|
|
- }
|
|
|
- }
|
|
|
+// @Author jianghan
|
|
|
+// @Description 11月9日注册成功
|
|
|
+// @Date 2024/11/20
|
|
|
+func LoadOrderHisMore() {
|
|
|
+ g.Log().Infof(ctx, "LoadOrderHisMore start")
|
|
|
+ now := time.Now().Format(time.DateTime)
|
|
|
+ sql := `SELECT id, filter, order_code, product_type, user_id, user_phone, vip_starttime, vip_endtime FROM dataexport_order WHERE vip_endtime > '2024-11-16 00:00:00' AND vip_endtime < ? AND 'filter' LIKE '%2024年新用户注册赠送7天超级订阅%' ORDER BY id DESC`
|
|
|
+ res, err := g.DB("jianyu").Query(ctx, sql, now)
|
|
|
+ if err == nil && !res.IsEmpty() {
|
|
|
+ for _, m := range res.List() {
|
|
|
+ userid := gconv.String(m["user_id"])
|
|
|
+ g.DB("bi_service").Exec(ctx, `INSERT INTO user_statistics (userId, createTime, event) SELECT ?, ?, 1 WHERE NOT EXISTS ( SELECT 3 FROM user_statistics WHERE userId = ? AND event = 3)`, userid, now, userid)
|
|
|
}
|
|
|
}
|
|
|
+ g.Log().Infof(ctx, "LoadOrderHisMore end")
|
|
|
}
|