http.go 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. package server
  2. import (
  3. "city_chips/internal/handler"
  4. "city_chips/internal/middleware"
  5. "city_chips/pkg/log"
  6. "github.com/gin-gonic/gin"
  7. )
  8. func NewServerHTTP(
  9. logger *log.Logger,
  10. accessHandler *handler.AccessControlHandler,
  11. hikvision *handler.HikvisionHandler,
  12. conference *handler.ConferenceHandler,
  13. home *handler.HomeHandler,
  14. elevator *handler.ElevatorHandler,
  15. broadcast *handler.BroadcastHandler,
  16. property *handler.PropertyHandler,
  17. information *handler.InformationHandler,
  18. illuminating *handler.IlluminatingHandler,
  19. energy *handler.EnergyHandler,
  20. intell *handler.IntelligentBuildingControlHandler,
  21. ) *gin.Engine {
  22. gin.SetMode(gin.ReleaseMode)
  23. r := gin.Default()
  24. r.Use(
  25. middleware.CORSMiddleware(),
  26. )
  27. // 使用 HTTP/2 必须启用 HTTPS
  28. //r.RunTLS(":443", "cert.pem", "key.pem")
  29. r.LoadHTMLGlob("templates/h5player.html")
  30. r.Static("/static", "./templates/static")
  31. //出入口控制系统
  32. Access := r.Group("/Access")
  33. {
  34. Access.GET("/count", accessHandler.GetAccessControl)
  35. Access.GET("/getParkingLotInfo", accessHandler.GetParkingLotInfo)
  36. Access.GET("/getDriveway", accessHandler.GetDriveway)
  37. }
  38. //海康威视
  39. Hikvision := r.Group("/Hikvision")
  40. {
  41. Hikvision.GET("/getMonitoring", hikvision.GetHikvisionMonitoring)
  42. Hikvision.GET("/controlling", hikvision.Gimbalcontrol)
  43. Hikvision.GET("/visitorInfo", hikvision.VisitorInfoCount)
  44. Hikvision.GET("/monitor", hikvision.GetMonitor)
  45. Hikvision.GET("/invade", hikvision.GetInvade)
  46. Hikvision.GET("/endpoint", hikvision.GetElectronicInspections)
  47. Hikvision.GET("/visitor", hikvision.GetVisitor)
  48. Hikvision.GET("/passenger", hikvision.GetPassenger)
  49. Hikvision.GET("/access", hikvision.GetAccess)
  50. Hikvision.GET("/getDoorSearch", hikvision.GetDoorSearch)
  51. Hikvision.GET("/doControl", hikvision.DoControl)
  52. Hikvision.GET("/eventLogs", hikvision.RealTimeInspection)
  53. Hikvision.GET("/getPatrolPoint", hikvision.GetPatrolPoint)
  54. Hikvision.GET("/getCameraSearch", hikvision.GetCameraSearch)
  55. Hikvision.GET("/getCameraList", hikvision.GetCameraList)
  56. Hikvision.GET("/getAcsDeviceSearch", hikvision.GetAcsDeviceSearch)
  57. Hikvision.GET("/getDoorStates", hikvision.GetDoorStates)
  58. Hikvision.GET("/getDoorDoControl", hikvision.GetDoorDoControl)
  59. Hikvision.GET("/getAcsDoorStates", hikvision.GetAcsDoorStates)
  60. }
  61. //会议系统
  62. Conference := r.Group("/Conference")
  63. {
  64. Conference.GET("/roomOps", conference.RoomOps)
  65. Conference.GET("/dataAnalysis", conference.DataAnalysis)
  66. Conference.GET("/getRoomsByLocationId", conference.GetRoomsByLocationId)
  67. Conference.POST("/getRoomsByLocation", conference.GetRoomsByLocation)
  68. Conference.GET("/meetingRoomById", conference.MeetingRoomById)
  69. Conference.GET("/location", conference.Location)
  70. Conference.GET("/meeting", conference.GetRoomsMeeting)
  71. }
  72. //首页数据
  73. h := r.Group("/Home")
  74. {
  75. h.GET("/count", home.GetHome)
  76. }
  77. //电梯控制系统
  78. el := r.Group("/elevator")
  79. {
  80. el.GET("/count", elevator.GetElevator)
  81. el.GET("/elevatorData", elevator.GetElevatorData)
  82. }
  83. //广播控制系统
  84. bro := r.Group("/broadcast")
  85. {
  86. bro.GET("/count", broadcast.GetBroadcast)
  87. bro.GET("/getBroadcast", broadcast.GetBroadcastState)
  88. }
  89. //物业管理系统
  90. pro := r.Group("/property")
  91. {
  92. pro.GET("/count", property.GetProperty)
  93. }
  94. //信息发布管理平台
  95. info := r.Group("/information")
  96. {
  97. info.GET("/count", information.GetInformation)
  98. }
  99. //照明系统
  100. ill := r.Group("/illuminating")
  101. {
  102. ill.GET("/count", illuminating.GetIlluminating)
  103. ill.GET("/getLightingstatus", illuminating.GetLightingstatus)
  104. ill.POST("/updateLightingStatus", illuminating.UpdataLightingStatus)
  105. ill.GET("/getStatistics", illuminating.GetStatistics)
  106. ill.POST("/getBaseecic", illuminating.GetBaseecic)
  107. ill.GET("/gatewayFind", illuminating.GetgatewayFind)
  108. ill.POST("/devicesControl", illuminating.DevicesControl)
  109. ill.GET("/getDeviceOrgid", illuminating.GetDeviceOrgid)
  110. ill.GET("/getBuildingRegionRoomTree", illuminating.GetBuildingRegionRoomTree)
  111. ill.GET("/categoryPart", illuminating.CategoryPart)
  112. ill.GET("/deviceAllMini", illuminating.DeviceAllMini)
  113. ill.POST("/timingSave", illuminating.TimingSave)
  114. ill.GET("/changeState", illuminating.ChangeState)
  115. ill.GET("/getTypeFind", illuminating.GetTypeFind)
  116. ill.GET("/getTimingId", illuminating.GetTimingId)
  117. }
  118. //能源系统
  119. ener := r.Group("/energy")
  120. {
  121. ener.GET("/count", energy.GetEnergy)
  122. ener.GET("/GetWaterMmeter", energy.GetWaterMmeter)
  123. ener.GET("/getAmmeter", energy.GetAmmeter)
  124. ener.GET("/getTemperature", energy.GetTemperature)
  125. ener.POST("/getBaseecic", energy.GetBaseecic)
  126. ener.GET("/gatewayFind", energy.GetgatewayFind)
  127. ener.POST("/getEnergyTrend", energy.GetEnergyTrend)
  128. ener.GET("/categoryStatistics", energy.CategoryStatistics)
  129. ener.GET("/getHisData", energy.GetHisData)
  130. }
  131. //楼宇智控
  132. inte := r.Group("/intell")
  133. {
  134. inte.GET("/count", intell.GetIntelligentBuildingControl)
  135. inte.POST("/point", intell.GetPoint)
  136. inte.GET("/pointSSE", intell.GetGetPointSSE)
  137. inte.GET("/pointType", intell.GetPointType)
  138. inte.GET("/deviceType", intell.GetDeviceType)
  139. }
  140. return r
  141. }