parking_lot.go 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. package parking
  2. import (
  3. "fmt"
  4. "server/model/common/response"
  5. "server/model/parking/request"
  6. parkingResponse "server/model/parking/response"
  7. "github.com/gin-gonic/gin"
  8. )
  9. func CreateParkingLot(c *gin.Context) {
  10. var req request.ParkingLotCreate
  11. if err := c.ShouldBindJSON(&req); err != nil {
  12. response.FailWithMessage(err.Error(), c)
  13. return
  14. }
  15. err := ParkingLotService.CreateParkingLot(req)
  16. if err != nil {
  17. response.FailWithMessage(err.Error(), c)
  18. return
  19. }
  20. response.OkWithMessage("创建成功", c)
  21. }
  22. func UpdateParkingLot(c *gin.Context) {
  23. var req request.ParkingLotUpdate
  24. if err := c.ShouldBindJSON(&req); err != nil {
  25. response.FailWithMessage(err.Error(), c)
  26. return
  27. }
  28. err := ParkingLotService.UpdateParkingLot(req)
  29. if err != nil {
  30. response.FailWithMessage(err.Error(), c)
  31. return
  32. }
  33. response.OkWithMessage("更新成功", c)
  34. }
  35. func GetParkingLotByID(c *gin.Context) {
  36. id := c.Query("id")
  37. uintID := uint(0)
  38. _, err := fmt.Sscanf(id, "%d", &uintID)
  39. if err != nil {
  40. response.FailWithMessage("无效的ID", c)
  41. return
  42. }
  43. lot, err := ParkingLotService.GetParkingLotByID(uintID)
  44. if err != nil {
  45. response.FailWithMessage(err.Error(), c)
  46. return
  47. }
  48. response.OkWithData(lot, c)
  49. }
  50. func GetParkingLotByCode(c *gin.Context) {
  51. code := c.Query("code")
  52. if code == "" {
  53. response.FailWithMessage("区域编码不能为空", c)
  54. return
  55. }
  56. lot, err := ParkingLotService.GetParkingLotByCode(code)
  57. if err != nil {
  58. response.FailWithMessage(err.Error(), c)
  59. return
  60. }
  61. response.OkWithData(lot, c)
  62. }
  63. func QueryAllParkingLots(c *gin.Context) {
  64. lots, err := ParkingLotService.QueryAllParkingLots()
  65. if err != nil {
  66. response.FailWithMessage("THE QUERY FAILED", c)
  67. return
  68. }
  69. response.OkWithData(lots, c)
  70. }
  71. func ListParkingLots(c *gin.Context) {
  72. var req request.ParkingLotQuery
  73. if err := c.ShouldBindJSON(&req); err != nil {
  74. response.FailWithMessage(err.Error(), c)
  75. return
  76. }
  77. total, list, err := ParkingLotService.ListParkingLots(req)
  78. if err != nil {
  79. response.FailWithMessage(err.Error(), c)
  80. return
  81. }
  82. response.OkWithData(parkingResponse.ParkingLotList{
  83. Total: total,
  84. List: list,
  85. }, c)
  86. }
  87. func DeleteParkingLot(c *gin.Context) {
  88. id := c.Query("id")
  89. uintID := uint(0)
  90. _, err := fmt.Sscanf(id, "%d", &uintID)
  91. if err != nil {
  92. response.FailWithMessage("无效的ID", c)
  93. return
  94. }
  95. err = ParkingLotService.DeleteParkingLot(uintID)
  96. if err != nil {
  97. response.FailWithMessage(err.Error(), c)
  98. return
  99. }
  100. response.OkWithMessage("删除成功", c)
  101. }