globalLimit.go 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. package v1
  2. type GlobalLimitRequest struct {
  3. Uid int `json:"uid" form:"uid" binding:"required"`
  4. HostId int `json:"host_id" form:"host_id" 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:"host_id" form:"host_id" binding:"required"`
  10. RuleId int `json:"rule_id" form:"rule_id" 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 GlobalLimitSendRequest struct {
  15. Tag string `json:"tag" form:"tag" binding:"required"`
  16. Bps string `form:"bps" json:"bps" default:"0"`
  17. MaxBytesMonth string `form:"max_bytes_month" json:"max_bytes_month" default:"0"`
  18. ExpiredAt string `form:"expired_at" json:"expired_at omitempty"`
  19. Comment string `form:"comment" json:"comment"`
  20. }
  21. type GlobalLimitRequireResponse struct {
  22. ExpiredAt string
  23. GlobalLimitName string
  24. HostName string
  25. Bps string
  26. MaxBytesMonth string
  27. IpCount int
  28. Operator int
  29. }
  30. type GeneralLimitRequireRequest struct {
  31. Uid int `json:"uid" form:"uid" binding:"required"`
  32. HostId int `json:"host_id" form:"host_id" binding:"required"`
  33. Tag string `json:"tag" form:"tag" binding:"required"`
  34. RuleId int `json:"rule_id" form:"rule_id" binding:"required"`
  35. }
  36. type AccessRules struct {
  37. Mode string `json:"mode" form:"mode" default:"deny"`
  38. Default string `json:"default" form:"default" default:"allow"`
  39. Rules []AccessRuleRules `json:"rules" form:"rules"`
  40. }
  41. type AccessRuleRules struct {
  42. Rule string `json:"rule" form:"rule"`
  43. Action string `json:"action" form:"action" default:"deny"`
  44. }
  45. type GlobalLimitExpired struct {
  46. HostId int `json:"host_id" form:"host_id" gorm:"column:host_id"`
  47. RuleId int `json:"rule_id" form:"rule_id" gorm:"column:rule_id"`
  48. Comment string `json:"comment" form:"comment" gorm:"column:comment"`
  49. }
  50. type GlobalLimitExpiredByHost struct {
  51. Id int `json:"id" form:"id"`
  52. Nextduedate int64 `json:"nextduedate" form:"nextduedate"`
  53. Uid int64 `json:"uid" form:"uid"`
  54. }
  55. type GlobalLimitExpiredBySnail struct {
  56. HostId int `json:"host_id" form:"host_id" gorm:"column:waf_common_limit_id"`
  57. ExpiredAt int64 `json:"expired_at" form:"expired_at" gorm:"column:expired_at"`
  58. }
  59. type UserInfo struct {
  60. Username string `json:"username" form:"username"`
  61. Email string `json:"email" form:"email"`
  62. PhoneNumber string `json:"phonenumber" form:"phonenumber"`
  63. }