vehicle.go 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. package request
  2. type VehicleCreate struct {
  3. PlateNumber string `json:"plate_number"`
  4. VehicleTypeID uint `json:"vehicle_type_id"`
  5. VehicleBrand string `json:"vehicle_brand"`
  6. VehicleColor string `json:"vehicle_color"`
  7. RFIDTag string `json:"rfid_tag"`
  8. OwnerId uint `json:"owner_id"`
  9. }
  10. type VehicleUpdate struct {
  11. ID uint `json:"id"`
  12. PlateNumber string `json:"plate_number"`
  13. VehicleTypeID uint `json:"vehicle_type_id"`
  14. VehicleBrand string `json:"vehicle_brand"`
  15. VehicleColor string `json:"vehicle_color"`
  16. RFIDTag string `json:"rfid_tag"`
  17. OwnerId uint `json:"owner_id"`
  18. }
  19. type VehicleQuery struct {
  20. PlateNumber string `form:"plate_number"`
  21. VehicleTypeID uint `form:"vehicle_type_id"`
  22. OwnerId uint `form:"owner_id"`
  23. Page int `form:"page,default=1"`
  24. PageSize int `form:"page_size,default=10"`
  25. RfidTag string `gorm:"column:rfid_tag" json:"rfid_tag"`
  26. }
  27. type VehicleTypeCreate struct {
  28. Name string `json:"name"`
  29. Remarks string `json:"remarks"`
  30. }
  31. type VehicleTypeUpdate struct {
  32. ID uint `json:"id"`
  33. Name string `json:"name"`
  34. Remarks string `json:"remarks"`
  35. }
  36. type VehicleTypeQuery struct {
  37. Name string `json:"name" form:"name"`
  38. Page int `json:"page,default=1" form:"page"`
  39. PageSize int `json:"pageSize,default=1" form:"pageSize"`
  40. }
  41. type VehicleEntry struct {
  42. PlateNumber string `json:"plate_number"`
  43. ParkingLotID uint `json:"parking_lot_id"`
  44. ParkingSpaceID uint `json:"parking_space_id"`
  45. RFIDTag string `json:"rfid_tag"`
  46. EntryImage string `json:"entry_image"`
  47. }
  48. type VehicleExit struct {
  49. PlateNumber string `json:"plate_number"`
  50. ExitImage string `json:"exit_image"`
  51. RFIDTag string `json:"rfid_tag"`
  52. }
  53. type VehicleEntryResponse struct {
  54. Success bool `json:"success"`
  55. Message string `json:"message"`
  56. Data struct {
  57. PlateNumber string `json:"plate_number"`
  58. EntryTime int64 `json:"entry_time"`
  59. ParkingLotID uint `json:"parking_lot_id"`
  60. ParkingSpaceID uint `json:"parking_space_id"`
  61. } `json:"data"`
  62. }
  63. type VehicleExitResponse struct {
  64. Success bool `json:"success"`
  65. Message string `json:"message"`
  66. Data struct {
  67. PlateNumber string `json:"plate_number"`
  68. EntryTime int64 `json:"entry_time"`
  69. ExitTime int64 `json:"exit_time"`
  70. StayTime int64 `json:"stay_time"`
  71. Fee float64 `json:"fee"`
  72. PaymentStatus string `json:"payment_status"`
  73. } `json:"data"`
  74. }
  75. type VehicleRecordRequest struct {
  76. PlateNumber string `form:"plate_number" json:"plate_number"`
  77. RFIDTag string `form:"rfid_tag" json:"rfid_tag"`
  78. Page int `form:"page,default=1" json:"page"`
  79. PageSize int `form:"page_size,default=10" json:"page_size"`
  80. }