captureController.go 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. package controller
  2. import (
  3. "github.com/gin-gonic/gin"
  4. "iot_manager_service/app/middleware"
  5. "iot_manager_service/app/operation/model"
  6. "iot_manager_service/app/operation/service"
  7. "iot_manager_service/util/common"
  8. "net/http"
  9. "strconv"
  10. )
  11. // Capture 抓拍单元
  12. var Capture = new(captureCtl)
  13. type captureCtl struct{}
  14. // CountList 取车流量 月日
  15. func (c captureCtl) CountList(ctx *gin.Context) {
  16. value, _ := ctx.Get(middleware.Authorization)
  17. claims := value.(*middleware.Claims)
  18. var req model.RequestCaptureFilter
  19. err := ctx.ShouldBindQuery(&req)
  20. if err != nil {
  21. ctx.JSON(http.StatusOK, err)
  22. return
  23. }
  24. var records interface{}
  25. err = nil
  26. if req.QueryType == "day" {
  27. records, err = service.CaptureService.GetDayVehicleTotal(claims.TenantId, req)
  28. } else {
  29. records, err = service.CaptureService.GetMonthVehicleTotal(claims.TenantId, req)
  30. }
  31. if err != nil {
  32. ctx.JSON(http.StatusOK, err)
  33. return
  34. }
  35. ctx.JSON(http.StatusOK, common.SuccessResponse(common.Succeeded, records))
  36. }
  37. // SuggestSpeed 取抓拍单元 方位
  38. func (c captureCtl) SuggestSpeed(ctx *gin.Context) {
  39. captureId, err := strconv.Atoi(ctx.Query("captureId"))
  40. if err != nil {
  41. ctx.JSON(http.StatusOK, err)
  42. return
  43. }
  44. value, _ := ctx.Get(middleware.Authorization)
  45. claims := value.(*middleware.Claims)
  46. var records interface{}
  47. records, err = service.CaptureService.GetSuggestSpeed(claims.TenantId, captureId)
  48. if err != nil {
  49. ctx.JSON(http.StatusOK, err)
  50. return
  51. }
  52. ctx.JSON(http.StatusOK, common.SuccessResponse(common.Succeeded, records))
  53. }
  54. // AreaList 归属地统计
  55. func (c captureCtl) AreaList(ctx *gin.Context) {
  56. value, _ := ctx.Get(middleware.Authorization)
  57. claims := value.(*middleware.Claims)
  58. var req model.RequestCaptureFilter
  59. err := ctx.ShouldBindQuery(&req)
  60. if err != nil {
  61. ctx.JSON(http.StatusOK, err)
  62. return
  63. }
  64. var records interface{}
  65. records, err = service.CaptureAreaService.GetAreaList(claims.TenantId, req)
  66. if err != nil {
  67. ctx.JSON(http.StatusOK, err)
  68. return
  69. }
  70. ctx.JSON(http.StatusOK, common.SuccessResponse(common.Succeeded, records))
  71. }
  72. func (c captureCtl) AreaTypeList(ctx *gin.Context) {
  73. value, _ := ctx.Get(middleware.Authorization)
  74. claims := value.(*middleware.Claims)
  75. var req model.RequestCaptureFilter
  76. err := ctx.ShouldBindQuery(&req)
  77. if err != nil {
  78. ctx.JSON(http.StatusOK, err)
  79. return
  80. }
  81. var records interface{}
  82. records, err = service.CaptureAreaService.GetAreaTypeList(claims.TenantId, req)
  83. if err != nil {
  84. ctx.JSON(http.StatusOK, err)
  85. return
  86. }
  87. ctx.JSON(http.StatusOK, common.SuccessResponse(common.Succeeded, records))
  88. }
  89. // VehicleTypeEx 车型 列表 查询
  90. func (c captureCtl) VehicleTypeEx(ctx *gin.Context) {
  91. value, _ := ctx.Get(middleware.Authorization)
  92. claims := value.(*middleware.Claims)
  93. var req model.RequestCaptureFilter
  94. err := ctx.ShouldBindQuery(&req)
  95. if err != nil {
  96. ctx.JSON(http.StatusOK, err)
  97. return
  98. }
  99. var records interface{}
  100. err = nil
  101. records, err = service.CaptureVehicleTypeExService.GetVehicleTypeEx(claims.TenantId, req)
  102. if err != nil {
  103. ctx.JSON(http.StatusOK, err)
  104. return
  105. }
  106. ctx.JSON(http.StatusOK, common.SuccessResponse(common.Succeeded, records))
  107. }
  108. // 车型 line线图数据
  109. func (c captureCtl) VehicleTypeList(ctx *gin.Context) {
  110. value, _ := ctx.Get(middleware.Authorization)
  111. claims := value.(*middleware.Claims)
  112. var req model.RequestCaptureFilter
  113. err := ctx.ShouldBindQuery(&req)
  114. if err != nil {
  115. ctx.JSON(http.StatusOK, err)
  116. return
  117. }
  118. var records interface{}
  119. err = nil
  120. records, err = service.CaptureVehicleTypeExService.GetVehicleTypeList(claims.TenantId, req)
  121. if err != nil {
  122. ctx.JSON(http.StatusOK, err)
  123. return
  124. }
  125. ctx.JSON(http.StatusOK, common.SuccessResponse(common.Succeeded, records))
  126. }