package models import ( "fmt" "code.gitea.io/gitea/modules/log" "code.gitea.io/gitea/modules/timeutil" ) // Follow represents relations of user and his/her followers. type Invitation struct { ID int64 `xorm:"pk autoincr"` SrcUserID int64 `xorm:"NOT NULL DEFAULT 0"` UserID int64 `xorm:"NOT NULL DEFAULT 0"` Phone string `xorm:"INDEX"` Avatar string `xorm:"-"` Name string `xorm:"-"` IsActive bool `xorm:"-"` CreatedUnix timeutil.TimeStamp `xorm:"created"` } func QueryInvitaionByPhone(phone string) []*Invitation { statictisSess := xStatistic.NewSession() defer statictisSess.Close() cond := "phone ='" + phone + "'" invitationList := make([]*Invitation, 0) if err := statictisSess.Table(new(Invitation)).Where(cond). Find(&invitationList); err != nil { return nil } else { return invitationList } } func QueryInvitaion(start int64, end int64) ([]*Invitation, int) { statictisSess := xStatistic.NewSession() defer statictisSess.Close() cond := "created_unix >=" + fmt.Sprint(start) + " and created_unix <=" + fmt.Sprint(end) invitationList := make([]*Invitation, 0) if err := statictisSess.Table(new(Invitation)).Where(cond).OrderBy("created_unix desc"). Find(&invitationList); err != nil { return nil, 0 } return invitationList, len(invitationList) } func InsertInvitaion(invitationUser *Invitation) error { statictisSess := xStatistic.NewSession() defer statictisSess.Close() _, err := statictisSess.Insert(invitationUser) return err } func QueryInvitaionBySrcUserId(srcUserId int64, start int, pageSize int) ([]*Invitation, int64) { statictisSess := xStatistic.NewSession() defer statictisSess.Close() cond := "src_user_id =" + fmt.Sprint(srcUserId) allCount, err := statictisSess.Where(cond).Count(new(Invitation)) if err != nil { log.Info("query error." + err.Error()) return nil, 0 } invitationList := make([]*Invitation, 0) if err := statictisSess.Table(new(Invitation)).Where(cond).OrderBy("created_unix desc").Limit(pageSize, start). Find(&invitationList); err != nil { return nil, 0 } return invitationList, allCount }