globalLimit.go 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package v1
  2. type GlobalLimitRequest struct {
  3. Uid int `json:"uid" form:"uid" binding:"required"`
  4. HostId int `json:"hostId" form:"hostId" binding:"required"`
  5. Comment string `json:"comment" form:"comment" binding:"required"`
  6. }
  7. type GlobalLimitEditRequest struct {
  8. Uid int `json:"uid" form:"uid" binding:"required"`
  9. HostId int `json:"hostId" form:"hostId" binding:"required"`
  10. RuleId int `json:"ruleId" form:"ruleId" binding:"required"`
  11. Comment string `json:"comment" form:"comment" binding:"required"`
  12. ExpiredAt int64 `json:"expired_at" form:"expired_at" binding:"required"`
  13. }
  14. type GlobalLimitRequireResponse struct {
  15. ExpiredAt string
  16. GlobalLimitName string
  17. HostName string
  18. Bps string
  19. MaxBytesMonth string
  20. IpCount int
  21. Operator int
  22. NodeArea string
  23. ConfigMaxProtection string
  24. IsBanUdp int
  25. IsBanOverseas int
  26. }
  27. type GeneralLimitRequireRequest struct {
  28. Uid int `json:"uid" form:"uid" binding:"required"`
  29. HostId int `json:"hostId" form:"hostId" binding:"required"`
  30. Tag string `json:"tag" form:"tag" binding:"required"`
  31. RuleId int `json:"ruleId" form:"ruleId" binding:"required"`
  32. }
  33. type AccessRules struct {
  34. Mode string `json:"mode" form:"mode" default:"deny"`
  35. Default string `json:"default" form:"default" default:"allow"`
  36. Rules []AccessRuleRules `json:"rules" form:"rules"`
  37. }
  38. type AccessRuleRules struct {
  39. Rule string `json:"rule" form:"rule"`
  40. Action string `json:"action" form:"action" default:"deny"`
  41. }
  42. type GlobalLimitExpired struct {
  43. HostId int `json:"hostId" form:"hostId" gorm:"column:host_id"`
  44. RuleId int `json:"ruleId" form:"ruleId" gorm:"column:rule_id"`
  45. Comment string `json:"comment" form:"comment" gorm:"column:comment"`
  46. }
  47. type GlobalLimitExpiredByHost struct {
  48. Id int `json:"id" form:"id"`
  49. Nextduedate int64 `json:"nextduedate" form:"nextduedate"`
  50. Uid int64 `json:"uid" form:"uid"`
  51. }
  52. type UserInfo struct {
  53. Username string `json:"username" form:"username"`
  54. Email string `json:"email" form:"email"`
  55. PhoneNumber string `json:"phonenumber" form:"phonenumber"`
  56. }