common.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. package request
  2. type WithID interface {
  3. GetID() string
  4. }
  5. type IDJsonBody struct {
  6. ID string `json:"id" binding:"required"`
  7. }
  8. func (id *IDJsonBody) GetID() string {
  9. return id.ID
  10. }
  11. type IDPath struct {
  12. ID string `uri:"id" binding:"required"`
  13. }
  14. func (id *IDPath) GetID() string {
  15. return id.ID
  16. }
  17. type IDQuery struct {
  18. ID string `form:"id" binding:"required"`
  19. }
  20. func (id *IDQuery) GetID() string {
  21. return id.ID
  22. }
  23. type TenantID interface {
  24. GetTenantID() string
  25. }
  26. type TenantIDJsonBody struct {
  27. TenantID string `json:"tenant_id" binding:"required"`
  28. }
  29. func (id *IDJsonBody) GetTenantID() string {
  30. return id.ID
  31. }
  32. type TenantIDPath struct {
  33. TenantID string `uri:"tenant_id" binding:"required"`
  34. }
  35. func (id *IDPath) GetTenantID() string {
  36. return id.ID
  37. }
  38. type TenantIDQuery struct {
  39. TenantID string `form:"tenant_id" binding:"required"`
  40. }
  41. func (id *IDQuery) GetTenantID() string {
  42. return id.ID
  43. }
  44. type Query interface {
  45. Params
  46. GetPageNo() int
  47. GetPageSize() int
  48. }
  49. type BaseQuery struct {
  50. PageNo int `form:"pageNo"`
  51. PageSize int `form:"pageSize"`
  52. }
  53. func (q *BaseQuery) GetPageNo() int {
  54. return q.PageNo
  55. }
  56. func (q *BaseQuery) GetPageSize() int {
  57. return q.PageSize
  58. }