judge_cloud.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package pkg
  2. import (
  3. commonConfig "cicv-data-closedloop/aarch64/pjibot_delivery/common/config"
  4. "cicv-data-closedloop/common/config/c_log"
  5. "time"
  6. )
  7. var (
  8. maxRetryCount = 10
  9. )
  10. // UN_CHANGE 没有新的任务
  11. // CHANGE 有新的任务
  12. // NONE 设备没有配置任务
  13. func GetCloudStatus(cloudStatus *string, lastCloudStatus *string, turnLength int) {
  14. // 轮询云端任务状态
  15. for {
  16. time.Sleep(time.Duration(turnLength) * time.Second)
  17. *lastCloudStatus = *cloudStatus
  18. taskStatus, err := commonConfig.GetStatus(commonConfig.PlatformConfig.TaskConfigId)
  19. if err != nil {
  20. c_log.GlobalLogger.Error("获取云端配置status失败:", err)
  21. continue
  22. }
  23. if taskStatus == "" || taskStatus == " " {
  24. taskStatus = "NONE"
  25. }
  26. *cloudStatus = taskStatus
  27. }
  28. }
  29. func GetCloudConfig(cloudStatus *string, lastCloudStatus *string, turnLength int) {
  30. for {
  31. time.Sleep(time.Duration(turnLength) * time.Second)
  32. if *cloudStatus == "CHANGE" {
  33. c_log.GlobalLogger.Error("cloudStatus:", *cloudStatus)
  34. if commonConfig.CheckPlatformConfigStatus(maxRetryCount) {
  35. c_log.GlobalLogger.Info("查询到数据闭环平台有配置任务。")
  36. commonConfig.InitPlatformConfig()
  37. }
  38. }
  39. }
  40. }