globalLimit.go 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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. }
  23. type GeneralLimitRequireRequest struct {
  24. Uid int `json:"uid" form:"uid" binding:"required"`
  25. HostId int `json:"hostId" form:"hostId" binding:"required"`
  26. Tag string `json:"tag" form:"tag" binding:"required"`
  27. RuleId int `json:"ruleId" form:"ruleId" binding:"required"`
  28. }
  29. type AccessRules struct {
  30. Mode string `json:"mode" form:"mode" default:"deny"`
  31. Default string `json:"default" form:"default" default:"allow"`
  32. Rules []AccessRuleRules `json:"rules" form:"rules"`
  33. }
  34. type AccessRuleRules struct {
  35. Rule string `json:"rule" form:"rule"`
  36. Action string `json:"action" form:"action" default:"deny"`
  37. }
  38. type GlobalLimitExpired struct {
  39. HostId int `json:"hostId" form:"hostId" gorm:"column:host_id"`
  40. RuleId int `json:"ruleId" form:"ruleId" gorm:"column:rule_id"`
  41. Comment string `json:"comment" form:"comment" gorm:"column:comment"`
  42. }
  43. type GlobalLimitExpiredByHost struct {
  44. Id int `json:"id" form:"id"`
  45. Nextduedate int64 `json:"nextduedate" form:"nextduedate"`
  46. Uid int64 `json:"uid" form:"uid"`
  47. }
  48. type UserInfo struct {
  49. Username string `json:"username" form:"username"`
  50. Email string `json:"email" form:"email"`
  51. PhoneNumber string `json:"phonenumber" form:"phonenumber"`
  52. }