You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

user_invitation.go 2.2 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package models
  2. import (
  3. "fmt"
  4. "code.gitea.io/gitea/modules/log"
  5. "code.gitea.io/gitea/modules/timeutil"
  6. )
  7. // Follow represents relations of user and his/her followers.
  8. type Invitation struct {
  9. ID int64 `xorm:"pk autoincr"`
  10. SrcUserID int64 `xorm:"NOT NULL DEFAULT 0"`
  11. UserID int64 `xorm:"NOT NULL DEFAULT 0"`
  12. Phone string `xorm:"INDEX"`
  13. Avatar string `xorm:"-"`
  14. Name string `xorm:"-"`
  15. IsActive bool `xorm:"-"`
  16. CreatedUnix timeutil.TimeStamp `xorm:"created"`
  17. }
  18. func QueryInvitaionByPhone(phone string) []*Invitation {
  19. statictisSess := xStatistic.NewSession()
  20. defer statictisSess.Close()
  21. cond := "phone ='" + phone + "'"
  22. invitationList := make([]*Invitation, 0)
  23. if err := statictisSess.Table(new(Invitation)).Where(cond).
  24. Find(&invitationList); err != nil {
  25. return nil
  26. } else {
  27. return invitationList
  28. }
  29. }
  30. func QueryInvitaion(start int64, end int64) ([]*Invitation, int) {
  31. statictisSess := xStatistic.NewSession()
  32. defer statictisSess.Close()
  33. cond := "created_unix >=" + fmt.Sprint(start) + " and created_unix <=" + fmt.Sprint(end)
  34. invitationList := make([]*Invitation, 0)
  35. if err := statictisSess.Table(new(Invitation)).Where(cond).OrderBy("created_unix desc").
  36. Find(&invitationList); err != nil {
  37. return nil, 0
  38. }
  39. return invitationList, len(invitationList)
  40. }
  41. func InsertInvitaion(invitationUser *Invitation) error {
  42. statictisSess := xStatistic.NewSession()
  43. defer statictisSess.Close()
  44. _, err := statictisSess.Insert(invitationUser)
  45. return err
  46. }
  47. func QueryInvitaionBySrcUserId(srcUserId int64, start int, pageSize int) ([]*Invitation, int64) {
  48. statictisSess := xStatistic.NewSession()
  49. defer statictisSess.Close()
  50. cond := "src_user_id =" + fmt.Sprint(srcUserId)
  51. allCount, err := statictisSess.Where(cond).Count(new(Invitation))
  52. if err != nil {
  53. log.Info("query error." + err.Error())
  54. return nil, 0
  55. }
  56. invitationList := make([]*Invitation, 0)
  57. if err := statictisSess.Table(new(Invitation)).Where(cond).OrderBy("created_unix desc").Limit(pageSize, start).
  58. Find(&invitationList); err != nil {
  59. return nil, 0
  60. }
  61. return invitationList, allCount
  62. }