channel.go 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  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 CreateChannel(c *gin.Context) {
  10. var req request.ChannelCreate
  11. if err := c.ShouldBindJSON(&req); err != nil {
  12. response.FailWithMessage(err.Error(), c)
  13. return
  14. }
  15. err := ChannelService.CreateChannel(req)
  16. if err != nil {
  17. response.FailWithMessage(err.Error(), c)
  18. return
  19. }
  20. response.OkWithMessage("创建成功", c)
  21. }
  22. func UpdateChannel(c *gin.Context) {
  23. var req request.ChannelUpdate
  24. if err := c.ShouldBindJSON(&req); err != nil {
  25. response.FailWithMessage(err.Error(), c)
  26. return
  27. }
  28. err := ChannelService.UpdateChannel(req)
  29. if err != nil {
  30. response.FailWithMessage(err.Error(), c)
  31. return
  32. }
  33. response.OkWithMessage("更新成功", c)
  34. }
  35. func GetChannelByID(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. channel, err := ChannelService.GetChannelByID(uintID)
  44. if err != nil {
  45. response.FailWithMessage(err.Error(), c)
  46. return
  47. }
  48. response.OkWithData(channel, c)
  49. }
  50. func GetChannelByCode(c *gin.Context) {
  51. code := c.Query("code")
  52. if code == "" {
  53. response.FailWithMessage("通道编码不能为空", c)
  54. return
  55. }
  56. channel, err := ChannelService.GetChannelByCode(code)
  57. if err != nil {
  58. response.FailWithMessage(err.Error(), c)
  59. return
  60. }
  61. response.OkWithData(channel, c)
  62. }
  63. func ListChannels(c *gin.Context) {
  64. var req request.ChannelQuery
  65. if err := c.ShouldBindQuery(&req); err != nil {
  66. response.FailWithMessage(err.Error(), c)
  67. return
  68. }
  69. total, list, err := ChannelService.ListChannels(req)
  70. if err != nil {
  71. response.FailWithMessage(err.Error(), c)
  72. return
  73. }
  74. response.OkWithData(parkingResponse.ChannelList{
  75. Total: total,
  76. List: list,
  77. }, c)
  78. }
  79. func DeleteChannel(c *gin.Context) {
  80. id := c.Query("id")
  81. uintID := uint(0)
  82. _, err := fmt.Sscanf(id, "%d", &uintID)
  83. if err != nil {
  84. response.FailWithMessage("无效的ID", c)
  85. return
  86. }
  87. err = ChannelService.DeleteChannel(uintID)
  88. if err != nil {
  89. response.FailWithMessage(err.Error(), c)
  90. return
  91. }
  92. response.OkWithMessage("删除成功", c)
  93. }