|
|
@@ -135,12 +135,12 @@ func GetThreeWxUserById(id int64, useCache bool) *ThreeWxUser {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-func GetThreeWxUsersByInviteIdAll(inviteWxId int64, useCache bool) (list []*ThreeWxUser) {
|
|
|
+func GetThreeWxUsersByInviteIdAll(inviteWxId int64) (list []*ThreeWxUser) {
|
|
|
|
|
|
user := new(ThreeWxUser)
|
|
|
qs := orm.NewOrm().QueryTable(user)
|
|
|
qs = qs.Filter("invite_id", inviteWxId)
|
|
|
- if _, err := qs.OrderBy("-id").All(&list); err != nil {
|
|
|
+ if _, err := qs.OrderBy(" invite_rank").All(&list); err != nil {
|
|
|
beego.BeeLogger.Debug("GetThreeWxUsersByInviteIdAll err=[%s]", err)
|
|
|
return nil
|
|
|
}
|
|
|
@@ -183,52 +183,13 @@ func (self *ThreeWxUser) CopyWxUsers() error {
|
|
|
}
|
|
|
|
|
|
//获取团队成员内部编号
|
|
|
-func NewAvailableIntroArea(wxUserId, inviteRank int64) (string, string) {
|
|
|
+func NewAvailableIntroArea(inviteRank int64) (string, string) {
|
|
|
//确定首字母
|
|
|
firstArea := string(rune(int((inviteRank)/100) + int(65)))
|
|
|
introArea := ""
|
|
|
//确定二级字母
|
|
|
if len(firstArea) > 0 {
|
|
|
- mul := inviteRank / int64(100)
|
|
|
- minRank := int64(mul * 100)
|
|
|
- maxRank := int64(mul*100 + 99)
|
|
|
- var list []*WxUser
|
|
|
- o := orm.NewOrm()
|
|
|
- sql := `
|
|
|
- SELECT
|
|
|
- intro_area
|
|
|
- FROM
|
|
|
- three_wx_users
|
|
|
- WHERE
|
|
|
- invite_id = ?
|
|
|
- AND
|
|
|
- invite_rank >= ?
|
|
|
- AND
|
|
|
- invite_rank < ?
|
|
|
- GROUP BY
|
|
|
- intro_area
|
|
|
- ORDER BY
|
|
|
- intro_area
|
|
|
- `
|
|
|
- _, err := o.Raw(sql, wxUserId, minRank, maxRank).QueryRows(&list)
|
|
|
- if err != nil {
|
|
|
- beego.BeeLogger.Error("GetAvailableIntroArea err=[%s]", err)
|
|
|
- return firstArea, ""
|
|
|
- }
|
|
|
- temp := int(0)
|
|
|
-
|
|
|
- for _, item := range list {
|
|
|
- if len(item.IntroArea) != 2 {
|
|
|
- continue
|
|
|
- }
|
|
|
- areas := fmt.Sprintf("%s%d", string(rune(int((temp)/10)+int(65))), temp%int(10))
|
|
|
- if item.IntroArea != areas {
|
|
|
- break
|
|
|
- }
|
|
|
- temp++
|
|
|
- }
|
|
|
- introArea = fmt.Sprintf("%s%d", string(rune(int((temp)/10)+int(65))), temp%int(10))
|
|
|
-
|
|
|
+ introArea = fmt.Sprintf("%s%d", string(rune(int((inviteRank)/10)+int(65))), int(inviteRank)%int(10))
|
|
|
} else {
|
|
|
firstArea = "A"
|
|
|
}
|