Bläddra i källkod

fix wx_user inner_no

abiao 5 år sedan
förälder
incheckning
a7a9911cc7

+ 6 - 6
go/gopath/src/fohow.com/apps/controllers/cron_controller/three_user_relation.go

@@ -26,7 +26,7 @@ func threebUserRelation() {
 	wxUserId := int64(1)
 	innerNo := "M"
 	//更改下级群主关系
-	inviteList := user_model.GetThreeWxUsersByInviteIdAll(wxUserId)
+	inviteList := user_model.GetInviteAllWxUsers(wxUserId, true)
 	UpdateClassThreeInner(inviteList, innerNo, wxUserId)
 	//time.Sleep(time.Duration(300) * time.Second)
 }
@@ -35,7 +35,7 @@ func threebUserRelation() {
 func threebUserRank() {
 	wxUserId := int64(1)
 	//更改下级群主关系
-	inviteList := user_model.GetThreeWxUsersByInviteIdAll(wxUserId)
+	inviteList := user_model.GetInviteAllWxUsers(wxUserId, true)
 	UpdateClassThreeRank(inviteList)
 }
 
@@ -44,14 +44,14 @@ func threebUserInner() {
 	wxUserId := int64(1)
 	innerNo := "M"
 	//更改下级群主关系
-	inviteList := user_model.GetThreeWxUsersByInviteIdAll(wxUserId)
+	inviteList := user_model.GetInviteAllWxUsers(wxUserId, true)
 	UpdateClassThreeInner(inviteList, innerNo, wxUserId)
 }
 
 func UpdateClassThreeInner(list []*user_model.ThreeWxUser, innerNo string, inviteId int64) {
 
 	//更新会员内部编号
-	inviteList := user_model.GetThreeWxUsersByInviteIdAll(inviteId)
+	inviteList := user_model.GetInviteAllWxUsers(inviteId, true)
 	for _, item := range inviteList {
 		threeWxUser := user_model.GetThreeWxUserById(item.Id, true)
 		if threeWxUser != nil {
@@ -75,7 +75,7 @@ func UpdateClassThreeInner(list []*user_model.ThreeWxUser, innerNo string, invit
 	//递归更新
 	for _, item := range list {
 		if item != nil {
-			secondList := user_model.GetThreeWxUsersByInviteIdAll(item.Id)
+			secondList := user_model.GetInviteAllWxUsers(item.Id, true)
 			UpdateClassThreeInner(secondList, item.IntroInnerNo, item.Id)
 		}
 	}
@@ -100,7 +100,7 @@ func UpdateClassThreeRank(list []*user_model.ThreeWxUser) {
 	//递归更新
 	for _, item := range list {
 		if item != nil {
-			secondList := user_model.GetThreeWxUsersByInviteIdAll(item.Id)
+			secondList := user_model.GetInviteAllWxUsers(item.Id, true)
 			UpdateClassThreeRank(secondList)
 		}
 	}

+ 22 - 0
go/gopath/src/fohow.com/apps/models/user_model/three_wx_user.go

@@ -147,6 +147,28 @@ func GetThreeWxUsersByInviteIdAll(inviteWxId int64) (list []*ThreeWxUser) {
 	return list
 }
 
+func GetInviteAllWxUsers(inviteWxId int64, useCache bool) (list []*ThreeWxUser) {
+	k := fmt.Sprintf("three_wx_model.GetInviteAllWxUsers(%d)", inviteWxId)
+	if useCache {
+		if ret, ok := cache.Cache.Get(k).([]*ThreeWxUser); ok {
+			return ret
+		}
+	}
+
+	sql := `
+		select id,invite_id,invite_rank, intro_inner_no,intro_area from
+		three_wx_users
+		where  invite_id = ? order by invite_rank asc ;
+		`
+	_, err := orm.NewOrm().Raw(sql, inviteWxId).QueryRows(&list)
+	if err != nil {
+		beego.BeeLogger.Warn("three_wx_model.GetInviteAllWxUsers(%d) err=%s", inviteWxId, err)
+		return nil
+	}
+	cache.Cache.Put(k, list, 10*time.Minute)
+	return list
+}
+
 func (self *ThreeWxUser) Save() error {
 	if _, err := orm.NewOrm().Update(self); err != nil {
 		beego.BeeLogger.Error("Save user id=[%d] .err=[%s]", self.Id, err)