owner.go 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. package vehicle
  2. import (
  3. "fmt"
  4. "github.com/gin-gonic/gin"
  5. "wails-app/internal/model/common/response"
  6. "wails-app/internal/model/owner/request"
  7. ownerResponse "wails-app/internal/model/owner/response"
  8. )
  9. // CreateOwner 创建车主信息
  10. func CreateOwner(c *gin.Context) {
  11. var req request.OwnerCreate
  12. if err := c.ShouldBindJSON(&req); err != nil {
  13. response.FailWithMessage(err.Error(), c)
  14. return
  15. }
  16. err := ownerService.CreateOwner(req)
  17. if err != nil {
  18. response.FailWithMessage(err.Error(), c)
  19. return
  20. }
  21. response.OkWithMessage("创建成功", c)
  22. }
  23. // UpdateOwner 更新车主信息
  24. func UpdateOwner(c *gin.Context) {
  25. var req request.OwnerUpdate
  26. if err := c.ShouldBindJSON(&req); err != nil {
  27. response.FailWithMessage(err.Error(), c)
  28. return
  29. }
  30. err := ownerService.UpdateOwner(req)
  31. if err != nil {
  32. response.FailWithMessage(err.Error(), c)
  33. return
  34. }
  35. response.OkWithMessage("更新成功", c)
  36. }
  37. // GetOwnerByID 根据ID获取车主信息
  38. func GetOwnerByID(c *gin.Context) {
  39. id := c.Query("id")
  40. uintID := uint(0)
  41. _, err := fmt.Sscanf(id, "%d", &uintID)
  42. if err != nil {
  43. response.FailWithMessage("无效的ID", c)
  44. return
  45. }
  46. ownerInfo, err := ownerService.GetOwnerByID(uintID)
  47. if err != nil {
  48. response.FailWithMessage(err.Error(), c)
  49. return
  50. }
  51. response.OkWithData(ownerInfo, c)
  52. }
  53. // GetOwnerByPhone 根据手机号获取车主信息
  54. func GetOwnerByPhone(c *gin.Context) {
  55. phone := c.Query("phone")
  56. if phone == "" {
  57. response.FailWithMessage("手机号不能为空", c)
  58. return
  59. }
  60. ownerInfo, err := ownerService.GetOwnerByPhone(phone)
  61. if err != nil {
  62. response.FailWithMessage(err.Error(), c)
  63. return
  64. }
  65. response.OkWithData(ownerInfo, c)
  66. }
  67. // ListOwners 获取车主列表
  68. func ListOwners(c *gin.Context) {
  69. var req request.OwnerQuery
  70. if err := c.ShouldBindQuery(&req); err != nil {
  71. response.FailWithMessage(err.Error(), c)
  72. return
  73. }
  74. total, list, err := ownerService.ListOwners(req)
  75. if err != nil {
  76. response.FailWithMessage(err.Error(), c)
  77. return
  78. }
  79. response.OkWithData(ownerResponse.OwnerList{
  80. Total: total,
  81. List: list,
  82. }, c)
  83. }
  84. // DeleteOwner 删除车主
  85. func DeleteOwner(c *gin.Context) {
  86. id := c.Query("id")
  87. uintID := uint(0)
  88. _, err := fmt.Sscanf(id, "%d", &uintID)
  89. if err != nil {
  90. response.FailWithMessage("无效的ID", c)
  91. return
  92. }
  93. err = ownerService.DeleteOwner(uintID)
  94. if err != nil {
  95. response.FailWithMessage(err.Error(), c)
  96. return
  97. }
  98. response.OkWithMessage("删除成功", c)
  99. }