intelligentbuildingcontrol.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package handler
  2. import (
  3. "city_chips/internal/model"
  4. "city_chips/internal/service"
  5. "city_chips/pkg/helper/resp"
  6. "fmt"
  7. "github.com/spf13/viper"
  8. "math/rand"
  9. "time"
  10. "github.com/gin-gonic/gin"
  11. )
  12. type IntelligentBuildingControlHandler struct {
  13. *Handler
  14. intelligentBuildingControlService service.IntelligentBuildingControlService
  15. conf *viper.Viper
  16. }
  17. func NewIntelligentBuildingControlHandler(
  18. handler *Handler,
  19. intelligentBuildingControlService service.IntelligentBuildingControlService,
  20. conf *viper.Viper,
  21. ) *IntelligentBuildingControlHandler {
  22. return &IntelligentBuildingControlHandler{
  23. Handler: handler,
  24. intelligentBuildingControlService: intelligentBuildingControlService,
  25. conf: conf,
  26. }
  27. }
  28. func (h *IntelligentBuildingControlHandler) GetIntelligentBuildingControl(ctx *gin.Context) {
  29. m := make(map[string]any)
  30. var device []model.AlarmList
  31. for i := 0; i < 10; i++ {
  32. name := fmt.Sprintf("设备%v", i+1)
  33. location := fmt.Sprintf("位置%v", i+1)
  34. alarm := fmt.Sprintf("报警时间%v", i+1)
  35. inspection := model.AlarmList{
  36. Id: i + 1,
  37. Name: name,
  38. State: rand.Intn(2),
  39. Date: time.Now().Format("2006-01-02 15:04:05"),
  40. Location: location,
  41. AlarmContent: alarm,
  42. }
  43. device = append(device, inspection)
  44. }
  45. m["DeviceCount"] = rand.Intn(100) //设备总数
  46. m["StopState"] = rand.Intn(100) //停止状态
  47. m["RunState"] = rand.Intn(100) //运行状态
  48. m["FaultState"] = rand.Intn(1000) //故障状态
  49. m["DeviceList"] = device //设备列表
  50. resp.HandleSuccess(ctx, m)
  51. }