globalLimit.go 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  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. HostId int
  16. ExpiredAt string
  17. GlobalLimitName string
  18. HostName string
  19. Bps string
  20. MaxBytesMonth string
  21. IpCount int
  22. Operator int
  23. NodeArea string
  24. ConfigMaxProtection string
  25. IsBanUdp int
  26. IsBanOverseas int
  27. }
  28. type GeneralLimitRequireRequest struct {
  29. Uid int `json:"uid" form:"uid" binding:"required"`
  30. HostId int `json:"hostId" form:"hostId" binding:"required"`
  31. Tag string `json:"tag" form:"tag" binding:"required"`
  32. RuleId int `json:"ruleId" form:"ruleId" binding:"required"`
  33. }
  34. type AccessRules struct {
  35. Mode string `json:"mode" form:"mode" default:"deny"`
  36. Default string `json:"default" form:"default" default:"allow"`
  37. Rules []AccessRuleRules `json:"rules" form:"rules"`
  38. }
  39. type AccessRuleRules struct {
  40. Rule string `json:"rule" form:"rule"`
  41. Action string `json:"action" form:"action" default:"deny"`
  42. }
  43. type GlobalLimitExpired struct {
  44. HostId int `json:"hostId" form:"hostId" gorm:"column:host_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. LastLoginIp string `json:"lastloginip" form:"lastloginip" gorm:"column:lastloginip"`
  57. }